pub trait Write: Io {
    fn write(&mut self, buf: &[u8]) -> Result<usize, Self::Error>;
    fn flush(&mut self) -> Result<(), Self::Error>;

    fn write_all(&mut self, buf: &[u8]) -> Result<(), Self::Error> { ... }
    fn write_fmt(
        &mut self,
        fmt: Arguments<'_>
    ) -> Result<(), WriteFmtError<Self::Error>> { ... } }
Expand description

Blocking writer.

Semantics are the same as std::io::Write, check its documentation for details.

Required Methods

Write a buffer into this writer, returning how many bytes were written.

Flush this output stream, ensuring that all intermediately buffered contents reach their destination.

Provided Methods

Write an entire buffer into this writer.

Write a formatted string into this writer, returning any error encountered.

Implementations on Foreign Types

Write is implemented for &mut [u8] by copying into the slice, overwriting its data.

Note that writing updates the slice to point to the yet unwritten part. The slice will be empty when it has been completely overwritten.

If the number of bytes to be written exceeds the size of the slice, write operations will return short writes: ultimately, Ok(0); in this situation, write_all returns an error of kind ErrorKind::WriteZero.

Implementors