Struct futures_lite::io::Take
source · pub struct Take<R> { /* private fields */ }
Expand description
Reader for the AsyncReadExt::take()
method.
Implementations§
source§impl<R> Take<R>
impl<R> Take<R>
sourcepub fn limit(&self) -> u64
pub fn limit(&self) -> u64
Returns the number of bytes before this adapter will return EOF.
Note that EOF may be reached sooner if the underlying reader is shorter than the limit.
Examples
use futures_lite::io::{AsyncReadExt, Cursor};
let reader = Cursor::new("hello");
let reader = reader.take(3);
assert_eq!(reader.limit(), 3);
sourcepub fn set_limit(&mut self, limit: u64)
pub fn set_limit(&mut self, limit: u64)
Puts a limit on the number of bytes.
Changing the limit is equivalent to creating a new adapter with AsyncReadExt::take()
.
Examples
use futures_lite::io::{AsyncReadExt, Cursor};
let reader = Cursor::new("hello");
let mut reader = reader.take(10);
assert_eq!(reader.limit(), 10);
reader.set_limit(3);
assert_eq!(reader.limit(), 3);
sourcepub fn get_ref(&self) -> &R
pub fn get_ref(&self) -> &R
Gets a reference to the underlying reader.
Examples
use futures_lite::io::{AsyncReadExt, Cursor};
let reader = Cursor::new("hello");
let reader = reader.take(3);
let r = reader.get_ref();
sourcepub fn get_mut(&mut self) -> &mut R
pub fn get_mut(&mut self) -> &mut R
Gets a mutable reference to the underlying reader.
Examples
use futures_lite::io::{AsyncReadExt, Cursor};
let reader = Cursor::new("hello");
let mut reader = reader.take(3);
let r = reader.get_mut();
sourcepub fn into_inner(self) -> R
pub fn into_inner(self) -> R
Unwraps the adapter, returning the underlying reader.
Examples
use futures_lite::io::{AsyncReadExt, Cursor};
let reader = Cursor::new("hello");
let reader = reader.take(3);
let reader = reader.into_inner();
Trait Implementations§
source§impl<R: AsyncBufRead> AsyncBufRead for Take<R>
impl<R: AsyncBufRead> AsyncBufRead for Take<R>
source§impl<R: AsyncRead> AsyncRead for Take<R>
impl<R: AsyncRead> AsyncRead for Take<R>
impl<'__pin, R> Unpin for Take<R>where __Origin<'__pin, R>: Unpin,
Auto Trait Implementations§
impl<R> RefUnwindSafe for Take<R>where R: RefUnwindSafe,
impl<R> Send for Take<R>where R: Send,
impl<R> Sync for Take<R>where R: Sync,
impl<R> UnwindSafe for Take<R>where R: 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,
Returns the contents of the internal buffer, filling it with more data if empty. Read more
source§fn read_until<'a>(
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>
) -> ReadUntilFuture<'_, Self> ⓘwhere
Self: Unpin,
fn read_until<'a>( &'a mut self, byte: u8, buf: &'a mut Vec<u8> ) -> ReadUntilFuture<'_, Self> ⓘwhere Self: Unpin,
source§fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLineFuture<'_, Self> ⓘwhere
Self: Unpin,
fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLineFuture<'_, Self> ⓘwhere Self: Unpin,
Reads all bytes and appends them into
buf
until a newline (the 0xA byte) or EOF is found. Read moresource§impl<R> AsyncReadExt for Rwhere
R: AsyncRead + ?Sized,
impl<R> AsyncReadExt for Rwhere R: AsyncRead + ?Sized,
source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self> ⓘwhere
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self> ⓘwhere Self: Unpin,
Reads some bytes from the byte stream. Read more
source§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>]
) -> ReadVectoredFuture<'a, Self> ⓘwhere
Self: Unpin,
fn read_vectored<'a>( &'a mut self, bufs: &'a mut [IoSliceMut<'a>] ) -> ReadVectoredFuture<'a, Self> ⓘwhere Self: Unpin,
source§fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>
) -> ReadToEndFuture<'a, Self> ⓘwhere
Self: Unpin,
fn read_to_end<'a>( &'a mut self, buf: &'a mut Vec<u8> ) -> ReadToEndFuture<'a, Self> ⓘwhere Self: Unpin,
source§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String
) -> ReadToStringFuture<'a, Self> ⓘwhere
Self: Unpin,
fn read_to_string<'a>( &'a mut self, buf: &'a mut String ) -> ReadToStringFuture<'a, Self> ⓘwhere Self: Unpin,
source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self> ⓘwhere
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self> ⓘwhere Self: Unpin,
Reads the exact number of bytes required to fill
buf
. Read moresource§fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
fn take(self, limit: u64) -> Take<Self>where Self: Sized,
Creates an adapter which will read at most
limit
bytes from it. Read more