Struct layered_io::LayeredDuplexer [−][src]
pub struct LayeredDuplexer<Inner> { /* fields omitted */ }
Expand description
Adapts an Read
+ Write
to implement DuplexLayered
.
Implementations
Construct a new LayeredDuplexer
which wraps inner
with default
settings.
Construct a new LayeredDuplexer
which wraps inner
. When inner
reports end of stream (by returning 0), report a push but keep the
stream open and continue to read data on it.
For example, when reading a file, when the reader reaches the end of the file it will report it, but consumers may wish to continue reading in case additional data is appended to the file.
Construct a new LayeredDuplexer
which wraps an inner
which reads
its input line-by-line, such as stdin on a terminal.
Close this LayeredDuplexer
and return the inner stream.
Consume this LayeredDuplexer
and return the inner stream.
Trait Implementations
A suggested size, in bytes, for buffering for performance.
Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
Like read
, except that it reads into a slice of buffers. Read more
can_vector
)Determines if this Read
er has an efficient read_vectored
implementation. Read more
Read all bytes until EOF in this source, placing them into buf
. Read more
Read all bytes until EOF in this source, appending them to buf
. Read more
Read the exact number of bytes required to fill buf
. Read more
read_initializer
)Determines if this Read
er can work with buffers of uninitialized
memory. Read more
Creates a “by reference” adapter for this instance of Read
. Read more
Creates an adapter which will chain this stream with another. Read more
Like Read::read
, but also returns a Status
.
fn read_vectored_with_status(
&mut self,
bufs: &mut [IoSliceMut<'_>]
) -> Result<(usize, Status)>
fn read_vectored_with_status(
&mut self,
bufs: &mut [IoSliceMut<'_>]
) -> Result<(usize, Status)>
Like Read::read_vectored
, but also returns a Status
.
Like Read::read_exact
, but uses read_with_status
to avoid
performing an extra read
at the end. Read more
Some streams require a buffer of at least a certain size.
Write a buffer into this writer, returning how many bytes were written. Read more
Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
can_vector
)Determines if this Write
r has an efficient write_vectored
implementation. Read more
Attempts to write an entire buffer into this writer. Read more
write_all_vectored
)Attempts to write multiple buffers into this writer. Read more
Writes a formatted string into this writer, returning any error encountered. Read more