Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions library/std/src/io/pipe.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
use crate::io;
use crate::sys::anonymous_pipe::{AnonPipe, pipe as pipe_inner};
use crate::sys::pipe as imp;
use crate::sys_common::{FromInner, IntoInner};

/// Creates an anonymous pipe.
Expand Down Expand Up @@ -84,39 +84,39 @@ use crate::sys_common::{FromInner, IntoInner};
#[stable(feature = "anonymous_pipe", since = "1.87.0")]
#[inline]
pub fn pipe() -> io::Result<(PipeReader, PipeWriter)> {
pipe_inner().map(|(reader, writer)| (PipeReader(reader), PipeWriter(writer)))
imp::pipe().map(|(reader, writer)| (PipeReader(reader), PipeWriter(writer)))
}

/// Read end of an anonymous pipe.
#[stable(feature = "anonymous_pipe", since = "1.87.0")]
#[derive(Debug)]
pub struct PipeReader(pub(crate) AnonPipe);
pub struct PipeReader(pub(crate) imp::Pipe);

/// Write end of an anonymous pipe.
#[stable(feature = "anonymous_pipe", since = "1.87.0")]
#[derive(Debug)]
pub struct PipeWriter(pub(crate) AnonPipe);
pub struct PipeWriter(pub(crate) imp::Pipe);

impl FromInner<AnonPipe> for PipeReader {
fn from_inner(inner: AnonPipe) -> Self {
impl FromInner<imp::Pipe> for PipeReader {
fn from_inner(inner: imp::Pipe) -> Self {
Self(inner)
}
}

impl IntoInner<AnonPipe> for PipeReader {
fn into_inner(self) -> AnonPipe {
impl IntoInner<imp::Pipe> for PipeReader {
fn into_inner(self) -> imp::Pipe {
self.0
}
}

impl FromInner<AnonPipe> for PipeWriter {
fn from_inner(inner: AnonPipe) -> Self {
impl FromInner<imp::Pipe> for PipeWriter {
fn from_inner(inner: imp::Pipe) -> Self {
Self(inner)
}
}

impl IntoInner<AnonPipe> for PipeWriter {
fn into_inner(self) -> AnonPipe {
impl IntoInner<imp::Pipe> for PipeWriter {
fn into_inner(self) -> imp::Pipe {
self.0
}
}
Expand Down
16 changes: 7 additions & 9 deletions library/std/src/os/unix/process.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ use crate::ffi::OsStr;
use crate::os::unix::io::{AsFd, AsRawFd, BorrowedFd, FromRawFd, IntoRawFd, OwnedFd, RawFd};
use crate::path::Path;
use crate::sealed::Sealed;
use crate::sys::process::ChildPipe;
use crate::sys_common::{AsInner, AsInnerMut, FromInner, IntoInner};
use crate::{io, process, sys};

Expand Down Expand Up @@ -506,7 +507,7 @@ impl From<crate::process::ChildStdin> for OwnedFd {
/// Takes ownership of a [`ChildStdin`](crate::process::ChildStdin)'s file descriptor.
#[inline]
fn from(child_stdin: crate::process::ChildStdin) -> OwnedFd {
child_stdin.into_inner().into_inner().into_inner()
child_stdin.into_inner().into_inner()
}
}

Expand All @@ -518,8 +519,7 @@ impl From<crate::process::ChildStdin> for OwnedFd {
impl From<OwnedFd> for process::ChildStdin {
#[inline]
fn from(fd: OwnedFd) -> process::ChildStdin {
let fd = sys::fd::FileDesc::from_inner(fd);
let pipe = sys::pipe::AnonPipe::from_inner(fd);
let pipe = ChildPipe::from_inner(fd);
process::ChildStdin::from_inner(pipe)
}
}
Expand All @@ -537,7 +537,7 @@ impl From<crate::process::ChildStdout> for OwnedFd {
/// Takes ownership of a [`ChildStdout`](crate::process::ChildStdout)'s file descriptor.
#[inline]
fn from(child_stdout: crate::process::ChildStdout) -> OwnedFd {
child_stdout.into_inner().into_inner().into_inner()
child_stdout.into_inner().into_inner()
}
}

Expand All @@ -549,8 +549,7 @@ impl From<crate::process::ChildStdout> for OwnedFd {
impl From<OwnedFd> for process::ChildStdout {
#[inline]
fn from(fd: OwnedFd) -> process::ChildStdout {
let fd = sys::fd::FileDesc::from_inner(fd);
let pipe = sys::pipe::AnonPipe::from_inner(fd);
let pipe = ChildPipe::from_inner(fd);
process::ChildStdout::from_inner(pipe)
}
}
Expand All @@ -568,7 +567,7 @@ impl From<crate::process::ChildStderr> for OwnedFd {
/// Takes ownership of a [`ChildStderr`](crate::process::ChildStderr)'s file descriptor.
#[inline]
fn from(child_stderr: crate::process::ChildStderr) -> OwnedFd {
child_stderr.into_inner().into_inner().into_inner()
child_stderr.into_inner().into_inner()
}
}

Expand All @@ -580,8 +579,7 @@ impl From<crate::process::ChildStderr> for OwnedFd {
impl From<OwnedFd> for process::ChildStderr {
#[inline]
fn from(fd: OwnedFd) -> process::ChildStderr {
let fd = sys::fd::FileDesc::from_inner(fd);
let pipe = sys::pipe::AnonPipe::from_inner(fd);
let pipe = ChildPipe::from_inner(fd);
process::ChildStderr::from_inner(pipe)
}
}
Expand Down
6 changes: 3 additions & 3 deletions library/std/src/os/windows/process.rs
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ impl IntoRawHandle for process::ChildStderr {
impl From<OwnedHandle> for process::ChildStdin {
fn from(handle: OwnedHandle) -> process::ChildStdin {
let handle = sys::handle::Handle::from_inner(handle);
let pipe = sys::pipe::AnonPipe::from_inner(handle);
let pipe = sys::process::ChildPipe::from_inner(handle);
process::ChildStdin::from_inner(pipe)
}
}
Expand All @@ -130,7 +130,7 @@ impl From<OwnedHandle> for process::ChildStdin {
impl From<OwnedHandle> for process::ChildStdout {
fn from(handle: OwnedHandle) -> process::ChildStdout {
let handle = sys::handle::Handle::from_inner(handle);
let pipe = sys::pipe::AnonPipe::from_inner(handle);
let pipe = sys::process::ChildPipe::from_inner(handle);
process::ChildStdout::from_inner(pipe)
}
}
Expand All @@ -143,7 +143,7 @@ impl From<OwnedHandle> for process::ChildStdout {
impl From<OwnedHandle> for process::ChildStderr {
fn from(handle: OwnedHandle) -> process::ChildStderr {
let handle = sys::handle::Handle::from_inner(handle);
let pipe = sys::pipe::AnonPipe::from_inner(handle);
let pipe = sys::process::ChildPipe::from_inner(handle);
process::ChildStderr::from_inner(pipe)
}
}
Expand Down
51 changes: 25 additions & 26 deletions library/std/src/process.rs
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,6 @@ use crate::io::prelude::*;
use crate::io::{self, BorrowedCursor, IoSlice, IoSliceMut};
use crate::num::NonZero;
use crate::path::Path;
use crate::sys::pipe::{AnonPipe, read2};
use crate::sys::process as imp;
use crate::sys_common::{AsInner, AsInnerMut, FromInner, IntoInner};
use crate::{fmt, fs, str};
Expand Down Expand Up @@ -300,9 +299,9 @@ impl fmt::Debug for Child {
///
/// Used to pass pipe handles between this module and [`imp`].
pub(crate) struct StdioPipes {
pub stdin: Option<AnonPipe>,
pub stdout: Option<AnonPipe>,
pub stderr: Option<AnonPipe>,
pub stdin: Option<imp::ChildPipe>,
pub stdout: Option<imp::ChildPipe>,
pub stderr: Option<imp::ChildPipe>,
}

/// A handle to a child process's standard input (stdin).
Expand All @@ -317,7 +316,7 @@ pub(crate) struct StdioPipes {
/// [dropped]: Drop
#[stable(feature = "process", since = "1.0.0")]
pub struct ChildStdin {
inner: AnonPipe,
inner: imp::ChildPipe,
}

// In addition to the `impl`s here, `ChildStdin` also has `impl`s for
Expand Down Expand Up @@ -366,21 +365,21 @@ impl Write for &ChildStdin {
}
}

impl AsInner<AnonPipe> for ChildStdin {
impl AsInner<imp::ChildPipe> for ChildStdin {
#[inline]
fn as_inner(&self) -> &AnonPipe {
fn as_inner(&self) -> &imp::ChildPipe {
&self.inner
}
}

impl IntoInner<AnonPipe> for ChildStdin {
fn into_inner(self) -> AnonPipe {
impl IntoInner<imp::ChildPipe> for ChildStdin {
fn into_inner(self) -> imp::ChildPipe {
self.inner
}
}

impl FromInner<AnonPipe> for ChildStdin {
fn from_inner(pipe: AnonPipe) -> ChildStdin {
impl FromInner<imp::ChildPipe> for ChildStdin {
fn from_inner(pipe: imp::ChildPipe) -> ChildStdin {
ChildStdin { inner: pipe }
}
}
Expand All @@ -403,7 +402,7 @@ impl fmt::Debug for ChildStdin {
/// [dropped]: Drop
#[stable(feature = "process", since = "1.0.0")]
pub struct ChildStdout {
inner: AnonPipe,
inner: imp::ChildPipe,
}

// In addition to the `impl`s here, `ChildStdout` also has `impl`s for
Expand Down Expand Up @@ -436,21 +435,21 @@ impl Read for ChildStdout {
}
}

impl AsInner<AnonPipe> for ChildStdout {
impl AsInner<imp::ChildPipe> for ChildStdout {
#[inline]
fn as_inner(&self) -> &AnonPipe {
fn as_inner(&self) -> &imp::ChildPipe {
&self.inner
}
}

impl IntoInner<AnonPipe> for ChildStdout {
fn into_inner(self) -> AnonPipe {
impl IntoInner<imp::ChildPipe> for ChildStdout {
fn into_inner(self) -> imp::ChildPipe {
self.inner
}
}

impl FromInner<AnonPipe> for ChildStdout {
fn from_inner(pipe: AnonPipe) -> ChildStdout {
impl FromInner<imp::ChildPipe> for ChildStdout {
fn from_inner(pipe: imp::ChildPipe) -> ChildStdout {
ChildStdout { inner: pipe }
}
}
Expand All @@ -473,7 +472,7 @@ impl fmt::Debug for ChildStdout {
/// [dropped]: Drop
#[stable(feature = "process", since = "1.0.0")]
pub struct ChildStderr {
inner: AnonPipe,
inner: imp::ChildPipe,
}

// In addition to the `impl`s here, `ChildStderr` also has `impl`s for
Expand Down Expand Up @@ -506,21 +505,21 @@ impl Read for ChildStderr {
}
}

impl AsInner<AnonPipe> for ChildStderr {
impl AsInner<imp::ChildPipe> for ChildStderr {
#[inline]
fn as_inner(&self) -> &AnonPipe {
fn as_inner(&self) -> &imp::ChildPipe {
&self.inner
}
}

impl IntoInner<AnonPipe> for ChildStderr {
fn into_inner(self) -> AnonPipe {
impl IntoInner<imp::ChildPipe> for ChildStderr {
fn into_inner(self) -> imp::ChildPipe {
self.inner
}
}

impl FromInner<AnonPipe> for ChildStderr {
fn from_inner(pipe: AnonPipe) -> ChildStderr {
impl FromInner<imp::ChildPipe> for ChildStderr {
fn from_inner(pipe: imp::ChildPipe) -> ChildStderr {
ChildStderr { inner: pipe }
}
}
Expand Down Expand Up @@ -2356,7 +2355,7 @@ impl Child {
res.unwrap();
}
(Some(out), Some(err)) => {
let res = read2(out.inner, &mut stdout, err.inner, &mut stderr);
let res = imp::read_output(out.inner, &mut stdout, err.inner, &mut stderr);
res.unwrap();
}
}
Expand Down
11 changes: 0 additions & 11 deletions library/std/src/sys/anonymous_pipe/unix.rs

This file was deleted.

7 changes: 0 additions & 7 deletions library/std/src/sys/anonymous_pipe/unsupported.rs

This file was deleted.

2 changes: 1 addition & 1 deletion library/std/src/sys/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ mod pal;
mod alloc;
mod personality;

pub mod anonymous_pipe;
pub mod args;
pub mod backtrace;
pub mod cmath;
Expand All @@ -26,6 +25,7 @@ pub mod io;
pub mod net;
pub mod os_str;
pub mod path;
pub mod pipe;
pub mod platform_version;
pub mod process;
pub mod random;
Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/hermit/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@ use crate::sys::env;

pub mod futex;
pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
pub mod time;

pub fn unsupported<T>() -> crate::io::Result<T> {
Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/sgx/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@ use crate::sync::atomic::{Atomic, AtomicBool, Ordering};
pub mod abi;
mod libunwind_integration;
pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
pub mod thread_parking;
pub mod time;
pub mod waitqueue;
Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/solid/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,6 @@ pub mod itron {
// `crate::sys::error`
pub(crate) mod error;
pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
pub use self::itron::thread_parking;
pub mod time;

Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/teeos/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@
#![allow(dead_code)]

pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
#[allow(non_upper_case_globals)]
#[path = "../unix/time.rs"]
pub mod time;
Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/trusty/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
mod common;
#[path = "../unsupported/os.rs"]
pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
#[path = "../unsupported/time.rs"]
pub mod time;

Expand Down
2 changes: 0 additions & 2 deletions library/std/src/sys/pal/uefi/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@

pub mod helpers;
pub mod os;
#[path = "../unsupported/pipe.rs"]
pub mod pipe;
pub mod time;

#[cfg(test)]
Expand Down
Loading
Loading