pub struct Writer<T> { /* private fields */ }
Available on crate feature
blocking-io
and (crate features async-io
or blocking-io
) only.Expand description
An implementor of Write
which passes all input to an inner Write
in packet line data encoding,
one line per write(…)
call or as many lines as it takes if the data doesn’t fit into the maximum allowed line length.
Implementations§
Source§impl<T> Writer<T>
impl<T> Writer<T>
Non-IO methods
Sourcepub fn enable_binary_mode(&mut self)
pub fn enable_binary_mode(&mut self)
If called, each call to write()
will write bytes as is.
Sourcepub fn enable_text_mode(&mut self)
pub fn enable_text_mode(&mut self)
If called, each call to write()
will write the input as text, appending a trailing newline
if needed before writing.
Sourcepub fn into_inner(self) -> T
pub fn into_inner(self) -> T
Return the inner writer, consuming self.
Source§impl<T> Writer<T>
impl<T> Writer<T>
Common methods
Sourcepub fn text_mode(self) -> Self
pub fn text_mode(self) -> Self
As enable_text_mode()
, but suitable for chaining.
Sourcepub fn binary_mode(self) -> Self
pub fn binary_mode(self) -> Self
As enable_binary_mode()
, but suitable for chaining.
Trait Implementations§
Source§impl<T: Write> Write for Writer<T>
impl<T: Write> Write for Writer<T>
Source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Writes a buffer into this writer, returning how many bytes were written. Read more
Source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flushes this output stream, ensuring that all intermediately buffered
contents reach their destination. Read more
Source§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)1.0.0 · Source§fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
Source§fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
write_all_vectored
)Attempts to write multiple buffers into this writer. Read more
Auto Trait Implementations§
impl<T> Freeze for Writer<T>where
T: Freeze,
impl<T> RefUnwindSafe for Writer<T>where
T: RefUnwindSafe,
impl<T> Send for Writer<T>where
T: Send,
impl<T> Sync for Writer<T>where
T: Sync,
impl<T> Unpin for Writer<T>where
T: Unpin,
impl<T> UnwindSafe for Writer<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more