Trait AsyncSeekExt
pub trait AsyncSeekExt: AsyncSeek
An extension trait that adds utility methods to AsyncSeek types.
Examples
use ;
use ;
#
# async
See [module][crate::io] documentation for more details.
Provided Methods
fn seek(&mut self, pos: SeekFrom) -> Seek<'_, Self> where Self: Unpin,Creates a future which will seek an IO object, and then yield the new position in the object and the object itself.
Equivalent to:
async fn seek(&mut self, pos: SeekFrom) -> io::Result<u64>;In the case of an error the buffer and the object will be discarded, with the error yielded.
Examples
# #[cfg(not(target_family = "wasm"))] # { use tokio::fs::File; use tokio::io::{AsyncSeekExt, AsyncReadExt}; use std::io::SeekFrom; # async fn dox() -> std::io::Result<()> { let mut file = File::open("foo.txt").await?; file.seek(SeekFrom::Start(6)).await?; let mut contents = vec![0u8; 10]; file.read_exact(&mut contents).await?; # Ok(()) # } # }fn rewind(&mut self) -> Seek<'_, Self> where Self: Unpin,Creates a future which will rewind to the beginning of the stream.
This is convenience method, equivalent to
self.seek(SeekFrom::Start(0)).fn stream_position(&mut self) -> Seek<'_, Self> where Self: Unpin,Creates a future which will return the current seek position from the start of the stream.
This is equivalent to
self.seek(SeekFrom::Current(0)).
Implementors
impl<S> AsyncSeekExt for BufReader<R> where S: AsyncSeek + ?Sized,impl<S> AsyncSeekExt for BufStream<RW> where S: AsyncSeek + ?Sized,impl<S> AsyncSeekExt for BufWriter<W> where S: AsyncSeek + ?Sized,impl<S> AsyncSeekExt for Empty where S: AsyncSeek + ?Sized,impl<S> AsyncSeekExt for File where S: AsyncSeek + ?Sized,impl<S: AsyncSeek + ?Sized> AsyncSeekExt for S