@@ -54,6 +54,7 @@ use crate:🥅:TcpStream; |
|
|
54 |
54 |
use crate::os::unix::fs::FileTypeExt; |
55 |
55 |
use crate::os::unix::io::{AsRawFd, FromRawFd, RawFd}; |
56 |
56 |
use crate::os::unix:🥅:UnixStream; |
|
57 |
+use crate::pipe::{PipeReader, PipeWriter}; |
57 |
58 |
use crate::process::{ChildStderr, ChildStdin, ChildStdout}; |
58 |
59 |
use crate::ptr; |
59 |
60 |
use crate::sync::atomic::{AtomicBool, AtomicU8, Ordering}; |
@@ -404,6 +405,30 @@ impl CopyWrite for &UnixStream { |
|
|
404 |
405 |
} |
405 |
406 |
} |
406 |
407 |
|
|
408 |
+impl CopyRead for PipeReader { |
|
409 |
+fn properties(&self) -> CopyParams { |
|
410 |
+CopyParams(FdMeta::Pipe, Some(self.as_raw_fd())) |
|
411 |
+} |
|
412 |
+} |
|
413 |
+ |
|
414 |
+impl CopyRead for &PipeReader { |
|
415 |
+fn properties(&self) -> CopyParams { |
|
416 |
+CopyParams(FdMeta::Pipe, Some(self.as_raw_fd())) |
|
417 |
+} |
|
418 |
+} |
|
419 |
+ |
|
420 |
+impl CopyWrite for PipeWriter { |
|
421 |
+fn properties(&self) -> CopyParams { |
|
422 |
+CopyParams(FdMeta::Pipe, Some(self.as_raw_fd())) |
|
423 |
+} |
|
424 |
+} |
|
425 |
+ |
|
426 |
+impl CopyWrite for &PipeWriter { |
|
427 |
+fn properties(&self) -> CopyParams { |
|
428 |
+CopyParams(FdMeta::Pipe, Some(self.as_raw_fd())) |
|
429 |
+} |
|
430 |
+} |
|
431 |
+ |
407 |
432 |
impl CopyWrite for ChildStdin { |
408 |
433 |
fn properties(&self) -> CopyParams { |
409 |
434 |
CopyParams(FdMeta::Pipe, Some(self.as_raw_fd())) |