pub struct Limited<Io> { /* private fields */ }
Expand description
I/O wrapper that limits the number of bytes written or read on each call.
See the limited
and limited_write
methods.
Implementations§
source§impl<Io> Limited<Io>
impl<Io> Limited<Io>
sourcepub fn get_ref(&self) -> &Io
pub fn get_ref(&self) -> &Io
Acquires a reference to the underlying I/O object that this adaptor is wrapping.
sourcepub fn get_mut(&mut self) -> &mut Io
pub fn get_mut(&mut self) -> &mut Io
Acquires a mutable reference to the underlying I/O object that this adaptor is wrapping.
sourcepub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut Io>
pub fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut Io>
Acquires a pinned mutable reference to the underlying I/O object that this adaptor is wrapping.
sourcepub fn into_inner(self) -> Io
pub fn into_inner(self) -> Io
Consumes this adaptor returning the underlying I/O object.
Trait Implementations§
source§impl<R: AsyncBufRead> AsyncBufRead for Limited<R>
impl<R: AsyncBufRead> AsyncBufRead for Limited<R>
source§impl<R: AsyncRead> AsyncRead for Limited<R>
impl<R: AsyncRead> AsyncRead for Limited<R>
source§impl<W: AsyncWrite> AsyncWrite for Limited<W>
impl<W: AsyncWrite> AsyncWrite for Limited<W>
source§fn poll_write(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
) -> Poll<Result<usize>>
fn poll_write( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &[u8], ) -> Poll<Result<usize>>
Attempt to write bytes from
buf
into the object. Read moresource§fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
Attempt to flush the object, ensuring that any buffered data reach
their destination. Read more
impl<'pin, Io> Unpin for Limited<Io>where
__Limited<'pin, Io>: Unpin,
Auto Trait Implementations§
impl<Io> Freeze for Limited<Io>where
Io: Freeze,
impl<Io> RefUnwindSafe for Limited<Io>where
Io: RefUnwindSafe,
impl<Io> Send for Limited<Io>where
Io: Send,
impl<Io> Sync for Limited<Io>where
Io: Sync,
impl<Io> UnwindSafe for Limited<Io>where
Io: UnwindSafe,
Blanket Implementations§
source§impl<R> AsyncBufReadExt for Rwhere
R: AsyncBufRead + ?Sized,
impl<R> AsyncBufReadExt for Rwhere
R: AsyncBufRead + ?Sized,
source§fn fill_buf(&mut self) -> FillBuf<'_, Self> ⓘwhere
Self: Unpin,
fn fill_buf(&mut self) -> FillBuf<'_, Self> ⓘwhere
Self: Unpin,
Creates a future which will wait for a non-empty buffer to be available from this I/O
object or EOF to be reached. Read more
source§fn consume_unpin(&mut self, amt: usize)where
Self: Unpin,
fn consume_unpin(&mut self, amt: usize)where
Self: Unpin,
source§fn read_until<'a>(
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>,
) -> ReadUntil<'a, Self> ⓘwhere
Self: Unpin,
fn read_until<'a>(
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>,
) -> ReadUntil<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read all the bytes associated with this I/O
object into
buf
until the delimiter byte
or EOF is reached.
This method is the async equivalent to BufRead::read_until
. Read moresource§fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLine<'a, Self> ⓘwhere
Self: Unpin,
fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLine<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read all the bytes associated with this I/O
object into
buf
until a newline (the 0xA byte) or EOF is reached,
This method is the async equivalent to BufRead::read_line
. Read moresource§impl<R> AsyncReadExt for R
impl<R> AsyncReadExt for R
source§fn chain<R>(self, next: R) -> Chain<Self, R>
fn chain<R>(self, next: R) -> Chain<Self, R>
Creates an adaptor which will chain this stream with another. Read more
source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self> ⓘwhere
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self> ⓘwhere
Self: Unpin,
Tries to read some bytes directly into the given
buf
in asynchronous
manner, returning a future type. Read moresource§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectored<'a, Self> ⓘwhere
Self: Unpin,
fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectored<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read from the
AsyncRead
into bufs
using vectored
IO operations. Read moresource§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self> ⓘwhere
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read exactly enough bytes to fill
buf
,
returning an error if end of file (EOF) is hit sooner. Read moresource§fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self> ⓘwhere
Self: Unpin,
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read all the bytes from this
AsyncRead
. Read moresource§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToString<'a, Self> ⓘwhere
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToString<'a, Self> ⓘwhere
Self: Unpin,
Creates a future which will read all the bytes from this
AsyncRead
. Read moresource§impl<R> AsyncReadTestExt for Rwhere
R: AsyncRead,
impl<R> AsyncReadTestExt for Rwhere
R: AsyncRead,
source§fn assert_unmoved(self) -> AssertUnmoved<Self> ⓘwhere
Self: Sized,
fn assert_unmoved(self) -> AssertUnmoved<Self> ⓘwhere
Self: Sized,
Asserts that the given is not moved after being polled. Read more
source§fn interleave_pending(self) -> InterleavePending<Self> ⓘwhere
Self: Sized,
fn interleave_pending(self) -> InterleavePending<Self> ⓘwhere
Self: Sized,
Introduces an extra
Poll::Pending
in between each read of the reader. Read moresource§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<W> AsyncWriteTestExt for Wwhere
W: AsyncWrite,
impl<W> AsyncWriteTestExt for Wwhere
W: AsyncWrite,
source§fn assert_unmoved_write(self) -> AssertUnmoved<Self> ⓘwhere
Self: Sized,
fn assert_unmoved_write(self) -> AssertUnmoved<Self> ⓘwhere
Self: Sized,
Asserts that the given is not moved after being polled. Read more
source§fn interleave_pending_write(self) -> InterleavePending<Self> ⓘwhere
Self: Sized,
fn interleave_pending_write(self) -> InterleavePending<Self> ⓘwhere
Self: Sized,
Introduces an extra
Poll::Pending
in between each operation on the writer. Read moresource§fn limited_write(self, limit: usize) -> Limited<Self>where
Self: Sized,
fn limited_write(self, limit: usize) -> Limited<Self>where
Self: Sized,
Limit the number of bytes allowed to be written on each call to
poll_write
. Read moresource§fn track_closed(self) -> TrackClosed<Self>where
Self: Sized,
fn track_closed(self) -> TrackClosed<Self>where
Self: Sized,
Track whether this stream has been closed and errors if it is used after closing. Read more
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