[][src]Struct grep_cli::CommandReaderBuilder

pub struct CommandReaderBuilder { /* fields omitted */ }

Configures and builds a streaming reader for process output.

Methods

impl CommandReaderBuilder[src]

pub fn new() -> CommandReaderBuilder[src]

Create a new builder with the default configuration.

pub fn build(
    &self,
    command: &mut Command
) -> Result<CommandReader, CommandError>
[src]

Build a new streaming reader for the given command's output.

The caller should set everything that's required on the given command before building a reader, such as its arguments, environment and current working directory. Settings such as the stdout and stderr (but not stdin) pipes will be overridden so that they can be controlled by the reader.

If there was a problem spawning the given command, then its error is returned.

pub fn async_stderr(&mut self, yes: bool) -> &mut CommandReaderBuilder[src]

When enabled, the reader will asynchronously read the contents of the command's stderr output. When disabled, stderr is only read after the stdout stream has been exhausted (or if the process quits with an error code).

Note that when enabled, this may require launching an additional thread in order to read stderr. This is done so that the process being executed is never blocked from writing to stdout or stderr. If this is disabled, then it is possible for the process to fill up the stderr buffer and deadlock.

This is enabled by default.

Trait Implementations

impl Clone for CommandReaderBuilder[src]

default fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Default for CommandReaderBuilder[src]

impl Debug for CommandReaderBuilder[src]

Auto Trait Implementations

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<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> Borrow for T where
    T: ?Sized
[src]

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

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

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.