1.0.0[][src]Struct std::process::ChildStdout

pub struct ChildStdout { /* fields omitted */ }

A handle to a child process's standard output (stdout).

This struct is used in the stdout field on Child.

When an instance of ChildStdout is dropped, the ChildStdout's underlying file handle will be closed.

Trait Implementations

impl Read for ChildStdout[src]

fn read_vectored(&mut self, bufs: &mut [IoVecMut]) -> Result<usize>[src]

🔬 This is a nightly-only experimental API. (iovec #58452)

Like read, except that it reads into a slice of buffers. Read more

fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>[src]

Read all bytes until EOF in this source, placing them into buf. Read more

fn read_to_string(&mut self, buf: &mut String) -> Result<usize>[src]

Read all bytes until EOF in this source, appending them to buf. Read more

fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
1.6.0
[src]

Read the exact number of bytes required to fill buf. Read more

Important traits for &'_ mut I
fn by_ref(&mut self) -> &mut Self where
    Self: Sized
[src]

Creates a "by reference" adaptor for this instance of Read. Read more

Important traits for Bytes<R>
fn bytes(self) -> Bytes<Self> where
    Self: Sized
[src]

Transforms this Read instance to an [Iterator] over its bytes. Read more

Important traits for Chain<T, U>
fn chain<R: Read>(self, next: R) -> Chain<Self, R> where
    Self: Sized
[src]

Creates an adaptor which will chain this stream with another. Read more

Important traits for Take<T>
fn take(self, limit: u64) -> Take<Self> where
    Self: Sized
[src]

Creates an adaptor which will read at most limit bytes from it. Read more

impl AsRawFd for ChildStdout
1.2.0
[src]

impl IntoRawFd for ChildStdout
1.4.0
[src]

impl AsRawHandle for ChildStdout
1.2.0
[src]

impl IntoRawHandle for ChildStdout
1.4.0
[src]

impl Debug for ChildStdout
1.16.0
[src]

impl From<ChildStdout> for Stdio
1.20.0
[src]

fn from(child: ChildStdout) -> Stdio[src]

Converts a ChildStdout into a Stdio

Examples

ChildStdout will be converted to Stdio using Stdio::from under the hood.

use std::process::{Command, Stdio};

let hello = Command::new("echo")
    .arg("Hello, world!")
    .stdout(Stdio::piped())
    .spawn()
    .expect("failed echo command");

let reverse = Command::new("rev")
    .stdin(hello.stdout.unwrap())  // Converted into a Stdio here
    .output()
    .expect("failed reverse command");

assert_eq!(reverse.stdout, b"!dlrow ,olleH\n");Run

Auto Trait Implementations

impl Send for ChildStdout

impl Sync for ChildStdout

Blanket Implementations

impl<T> From for T[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]