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