Trait AsyncSeekExt
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(self: &mut Self, pos: SeekFrom) -> Seek<'_, Self> where Self: UnpinCreates 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
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(self: &mut Self) -> Seek<'_, Self> where Self: UnpinCreates 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(self: &mut Self) -> Seek<'_, Self> where Self: UnpinCreates a future which will return the current seek position from the start of the stream.
This is equivalent to
self.seek(SeekFrom::Current(0)).