Trait wasi_common::file::WasiFile  
source · pub trait WasiFile: Send + Sync {
Show 25 methods
    // Required methods
    fn as_any(&self) -> &dyn Any;
    fn get_filetype<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<FileType, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait;
    // Provided methods
    fn pollable(&self) -> Option<BorrowedFd<'_>> { ... }
    fn isatty(&self) -> bool { ... }
    fn sock_accept<'life0, 'async_trait>(
        &'life0 self,
        _fdflags: FdFlags,
    ) -> Pin<Box<dyn Future<Output = Result<Box<dyn WasiFile>, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn sock_recv<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _ri_data: &'life1 mut [IoSliceMut<'a>],
        _ri_flags: RiFlags,
    ) -> Pin<Box<dyn Future<Output = Result<(u64, RoFlags), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn sock_send<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _si_data: &'life1 [IoSlice<'a>],
        _si_flags: SiFlags,
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn sock_shutdown<'life0, 'async_trait>(
        &'life0 self,
        _how: SdFlags,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn datasync<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn sync<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn get_fdflags<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<FdFlags, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn set_fdflags<'life0, 'async_trait>(
        &'life0 mut self,
        _flags: FdFlags,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn get_filestat<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn set_filestat_size<'life0, 'async_trait>(
        &'life0 self,
        _size: u64,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn advise<'life0, 'async_trait>(
        &'life0 self,
        _offset: u64,
        _len: u64,
        _advice: Advice,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn set_times<'life0, 'async_trait>(
        &'life0 self,
        _atime: Option<SystemTimeSpec>,
        _mtime: Option<SystemTimeSpec>,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn read_vectored<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _bufs: &'life1 mut [IoSliceMut<'a>],
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn read_vectored_at<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _bufs: &'life1 mut [IoSliceMut<'a>],
        _offset: u64,
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn write_vectored<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _bufs: &'life1 [IoSlice<'a>],
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn write_vectored_at<'a, 'life0, 'life1, 'async_trait>(
        &'life0 self,
        _bufs: &'life1 [IoSlice<'a>],
        _offset: u64,
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'a: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn seek<'life0, 'async_trait>(
        &'life0 self,
        _pos: SeekFrom,
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn peek<'life0, 'life1, 'async_trait>(
        &'life0 self,
        _buf: &'life1 mut [u8],
    ) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait { ... }
    fn num_ready_bytes(&self) -> Result<u64, Error> { ... }
    fn readable<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
    fn writable<'life0, 'async_trait>(
        &'life0 self,
    ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait { ... }
}Required Methods§
fn as_any(&self) -> &dyn Any
fn get_filetype<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<FileType, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Provided Methods§
fn pollable(&self) -> Option<BorrowedFd<'_>>
fn isatty(&self) -> bool
fn sock_accept<'life0, 'async_trait>(
    &'life0 self,
    _fdflags: FdFlags,
) -> Pin<Box<dyn Future<Output = Result<Box<dyn WasiFile>, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn sock_recv<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _ri_data: &'life1 mut [IoSliceMut<'a>],
    _ri_flags: RiFlags,
) -> Pin<Box<dyn Future<Output = Result<(u64, RoFlags), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn sock_send<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _si_data: &'life1 [IoSlice<'a>],
    _si_flags: SiFlags,
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn sock_shutdown<'life0, 'async_trait>(
    &'life0 self,
    _how: SdFlags,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn datasync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn sync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn get_fdflags<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<FdFlags, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn set_fdflags<'life0, 'async_trait>(
    &'life0 mut self,
    _flags: FdFlags,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn get_filestat<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn set_filestat_size<'life0, 'async_trait>(
    &'life0 self,
    _size: u64,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn advise<'life0, 'async_trait>(
    &'life0 self,
    _offset: u64,
    _len: u64,
    _advice: Advice,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn set_times<'life0, 'async_trait>(
    &'life0 self,
    _atime: Option<SystemTimeSpec>,
    _mtime: Option<SystemTimeSpec>,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn read_vectored<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _bufs: &'life1 mut [IoSliceMut<'a>],
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn read_vectored_at<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _bufs: &'life1 mut [IoSliceMut<'a>],
    _offset: u64,
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn write_vectored<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _bufs: &'life1 [IoSlice<'a>],
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn write_vectored_at<'a, 'life0, 'life1, 'async_trait>(
    &'life0 self,
    _bufs: &'life1 [IoSlice<'a>],
    _offset: u64,
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn seek<'life0, 'async_trait>(
    &'life0 self,
    _pos: SeekFrom,
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn peek<'life0, 'life1, 'async_trait>(
    &'life0 self,
    _buf: &'life1 mut [u8],
) -> Pin<Box<dyn Future<Output = Result<u64, Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
fn num_ready_bytes(&self) -> Result<u64, Error>
fn readable<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
fn writable<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Trait Implementations§
Implementors§
impl WasiFile for wasi_common::sync::file::File
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::net::TcpListener
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::net::TcpStream
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::net::UnixListener
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::net::UnixStream
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::stdio::Stderr
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::stdio::Stdin
Available on crate feature 
sync only.impl WasiFile for wasi_common::sync::stdio::Stdout
Available on crate feature 
sync only.impl WasiFile for wasi_common::tokio::net::TcpListener
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::net::TcpStream
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::net::UnixListener
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::net::UnixStream
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::stdio::Stderr
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::stdio::Stdin
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::stdio::Stdout
Available on crate feature 
tokio only.impl WasiFile for wasi_common::tokio::File
Available on crate feature 
tokio only.