Struct grep_cli::CommandReaderBuilder
source · pub struct CommandReaderBuilder { /* private fields */ }
Expand description
Configures and builds a streaming reader for process output.
Implementations§
source§impl CommandReaderBuilder
impl CommandReaderBuilder
sourcepub fn new() -> CommandReaderBuilder
pub fn new() -> CommandReaderBuilder
Create a new builder with the default configuration.
sourcepub fn build(
&self,
command: &mut Command
) -> Result<CommandReader, CommandError>
pub fn build( &self, command: &mut Command ) -> Result<CommandReader, CommandError>
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.
sourcepub fn async_stderr(&mut self, yes: bool) -> &mut CommandReaderBuilder
pub fn async_stderr(&mut self, yes: bool) -> &mut CommandReaderBuilder
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§
source§impl Clone for CommandReaderBuilder
impl Clone for CommandReaderBuilder
source§fn clone(&self) -> CommandReaderBuilder
fn clone(&self) -> CommandReaderBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more