Struct futures::io::LineWriter
source · pub struct LineWriter<W>where
W: AsyncWrite,{ /* private fields */ }
Expand description
Wrap a writer, like BufWriter
does, but prioritizes buffering lines
This was written based on std::io::LineWriter
which goes into further details
explaining the code.
Buffering is actually done using BufWriter
. This class will leverage BufWriter
to write on-each-line.
Implementations§
source§impl<W> LineWriter<W>where
W: AsyncWrite,
impl<W> LineWriter<W>where
W: AsyncWrite,
sourcepub fn new(inner: W) -> LineWriter<W>
pub fn new(inner: W) -> LineWriter<W>
Create a new LineWriter
with default buffer capacity. The default is currently 1KB
which was taken from std::io::LineWriter
sourcepub fn with_capacity(capacity: usize, inner: W) -> LineWriter<W>
pub fn with_capacity(capacity: usize, inner: W) -> LineWriter<W>
Creates a new LineWriter
with the specified buffer capacity.
Trait Implementations§
source§impl<W> AsyncWrite for LineWriter<W>where
W: AsyncWrite,
impl<W> AsyncWrite for LineWriter<W>where
W: AsyncWrite,
source§fn poll_flush(
self: Pin<&mut LineWriter<W>>,
cx: &mut Context<'_>
) -> Poll<Result<(), Error>>
fn poll_flush( self: Pin<&mut LineWriter<W>>, cx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Forward to buf_writer
’s BufWriter::poll_flush()
source§fn poll_close(
self: Pin<&mut LineWriter<W>>,
cx: &mut Context<'_>
) -> Poll<Result<(), Error>>
fn poll_close( self: Pin<&mut LineWriter<W>>, cx: &mut Context<'_> ) -> Poll<Result<(), Error>>
Forward to buf_writer
’s BufWriter::poll_close()
source§impl<W> Debug for LineWriter<W>where
W: Debug + AsyncWrite,
impl<W> Debug for LineWriter<W>where
W: Debug + AsyncWrite,
impl<'__pin, W> Unpin for LineWriter<W>where
W: AsyncWrite,
__Origin<'__pin, W>: Unpin,
Auto Trait Implementations§
impl<W> RefUnwindSafe for LineWriter<W>where
W: RefUnwindSafe,
impl<W> Send for LineWriter<W>where
W: Send,
impl<W> Sync for LineWriter<W>where
W: Sync,
impl<W> UnwindSafe for LineWriter<W>where
W: UnwindSafe,
Blanket Implementations§
source§impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
impl<W> AsyncWriteExt for Wwhere
W: AsyncWrite + ?Sized,
source§fn flush(&mut self) -> Flush<'_, Self> ⓘwhere
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self> ⓘwhere
Self: Unpin,
Creates a future which will entirely flush this
AsyncWrite
. Read moresource§fn close(&mut self) -> Close<'_, Self> ⓘwhere
Self: Unpin,
fn close(&mut self) -> Close<'_, Self> ⓘwhere
Self: Unpin,
Creates a future which will entirely close this
AsyncWrite
.source§fn write<'a>(&'a mut self, buf: &'a [u8]) -> Write<'a, Self> ⓘwhere
Self: Unpin,
fn write<'a>(&'a mut self, buf: &'a [u8]) -> Write<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will write bytes from
buf
into the object. Read moresource§fn write_vectored<'a>(
&'a mut self,
bufs: &'a [IoSlice<'a>]
) -> WriteVectored<'a, Self> ⓘwhere
Self: Unpin,
fn write_vectored<'a>(
&'a mut self,
bufs: &'a [IoSlice<'a>]
) -> WriteVectored<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will write bytes from
bufs
into the object using vectored
IO operations. Read moresource§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