Struct ubend::Chain[][src]

pub struct Chain { /* fields omitted */ }

Represents a pipe chain.

Methods

impl Chain
[src]

Send signal sig to all child processes.

Create a new pipe chain. This function is called by the ubend! macro.

Take ownership of stdin of the first process in the chain.

If the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Take ownership of stdout of the last process in the chain.

If the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Take ownership of stderr of the last process in the chain.

If the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Take ownership of stdin of the process at index in the chain.

If the index is out of bounds or the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Take ownership of stdout of the process at index in the chain.

If the index is out of bounds or the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Take ownership of stderr of the process at index in the chain.

If the index is out of bounds or the setup didn't create a pipe at the given location or the pipe was already taken this function returns None.

Wait for all child processes to finish.

Wait for the last child process to finish.

Close stdin of the first child process and read stdout and stderr of the last child process (if possible) and wait for the last child process to finish.

Trait Implementations

impl Debug for Chain
[src]

Formats the value using the given formatter. Read more

Auto Trait Implementations

impl Send for Chain

impl Sync for Chain