Trait wasmtime_wasi::preview0::wasi_unstable::WasiUnstable

source ·
pub trait WasiUnstable {
Show 45 methods // Required methods fn args_get<'a>( &mut self, argv: &GuestPtr<'a, GuestPtr<'a, u8>>, argv_buf: &GuestPtr<'a, u8> ) -> Result<(), Error>; fn args_sizes_get(&mut self) -> Result<(Size, Size), Error>; fn environ_get<'a>( &mut self, environ: &GuestPtr<'a, GuestPtr<'a, u8>>, environ_buf: &GuestPtr<'a, u8> ) -> Result<(), Error>; fn environ_sizes_get(&mut self) -> Result<(Size, Size), Error>; fn clock_res_get(&mut self, id: Clockid) -> Result<Timestamp, Error>; fn clock_time_get( &mut self, id: Clockid, precision: Timestamp ) -> Result<Timestamp, Error>; fn fd_advise<'life0, 'async_trait>( &'life0 mut self, fd: Fd, offset: Filesize, len: Filesize, advice: Advice ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_allocate( &mut self, fd: Fd, offset: Filesize, len: Filesize ) -> Result<(), Error>; fn fd_close<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_datasync<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_fdstat_get<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<Fdstat, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_fdstat_set_flags( &mut self, fd: Fd, flags: Fdflags ) -> Result<(), Error>; fn fd_fdstat_set_rights( &mut self, fd: Fd, fs_rights_base: Rights, fs_rights_inheriting: Rights ) -> Result<(), Error>; fn fd_filestat_get<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_filestat_set_size<'life0, 'async_trait>( &'life0 mut self, fd: Fd, size: Filesize ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_filestat_set_times<'life0, 'async_trait>( &'life0 mut self, fd: Fd, atim: Timestamp, mtim: Timestamp, fst_flags: Fstflags ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_pread<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 IovecArray<'a>, offset: Filesize ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn fd_prestat_get(&mut self, fd: Fd) -> Result<Prestat, Error>; fn fd_prestat_dir_name<'a>( &mut self, fd: Fd, path: &GuestPtr<'a, u8>, path_len: Size ) -> Result<(), Error>; fn fd_pwrite<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 CiovecArray<'a>, offset: Filesize ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn fd_read<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 IovecArray<'a> ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn fd_readdir<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, buf: &'life1 GuestPtr<'a, u8>, buf_len: Size, cookie: Dircookie ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn fd_renumber(&mut self, fd: Fd, to: Fd) -> Result<(), Error>; fn fd_seek<'life0, 'async_trait>( &'life0 mut self, fd: Fd, offset: Filedelta, whence: Whence ) -> Pin<Box<dyn Future<Output = Result<Filesize, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_sync<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait; fn fd_tell(&mut self, fd: Fd) -> Result<Filesize, Error>; fn fd_write<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 CiovecArray<'a> ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_create_directory<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_filestat_get<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, flags: Lookupflags, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_filestat_set_times<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, flags: Lookupflags, path: &'life1 GuestPtr<'a, str>, atim: Timestamp, mtim: Timestamp, fst_flags: Fstflags ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_link<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, old_fd: Fd, old_flags: Lookupflags, old_path: &'life1 GuestPtr<'a, str>, new_fd: Fd, new_path: &'life2 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn path_open<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, dirflags: Lookupflags, path: &'life1 GuestPtr<'a, str>, oflags: Oflags, fs_rights_base: Rights, fs_rights_inheriting: Rights, fdflags: Fdflags ) -> Pin<Box<dyn Future<Output = Result<Fd, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_readlink<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str>, buf: &'life2 GuestPtr<'a, u8>, buf_len: Size ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn path_remove_directory<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn path_rename<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, fd: Fd, old_path: &'life1 GuestPtr<'a, str>, new_fd: Fd, new_path: &'life2 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn path_symlink<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, old_path: &'life1 GuestPtr<'a, str>, fd: Fd, new_path: &'life2 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn path_unlink_file<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn poll_oneoff<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, in_: &'life1 GuestPtr<'a, Subscription>, out: &'life2 GuestPtr<'a, Event>, nsubscriptions: Size ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>> where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait; fn proc_exit(&mut self, rval: Exitcode) -> Error; fn proc_raise(&mut self, sig: Signal) -> Result<(), Error>; fn sched_yield(&mut self) -> Result<(), Error>; fn random_get<'a>( &mut self, buf: &GuestPtr<'a, u8>, buf_len: Size ) -> Result<(), Error>; fn sock_recv<'a>( &mut self, fd: Fd, ri_data: &IovecArray<'a>, ri_flags: Riflags ) -> Result<(Size, Roflags), Error>; fn sock_send<'a>( &mut self, fd: Fd, si_data: &CiovecArray<'a>, si_flags: Siflags ) -> Result<Size, Error>; fn sock_shutdown(&mut self, fd: Fd, how: Sdflags) -> Result<(), Error>;
}
Available on crate feature preview1 only.

Required Methods§

source

fn args_get<'a>( &mut self, argv: &GuestPtr<'a, GuestPtr<'a, u8>>, argv_buf: &GuestPtr<'a, u8> ) -> Result<(), Error>

source

fn args_sizes_get(&mut self) -> Result<(Size, Size), Error>

source

fn environ_get<'a>( &mut self, environ: &GuestPtr<'a, GuestPtr<'a, u8>>, environ_buf: &GuestPtr<'a, u8> ) -> Result<(), Error>

source

fn environ_sizes_get(&mut self) -> Result<(Size, Size), Error>

source

fn clock_res_get(&mut self, id: Clockid) -> Result<Timestamp, Error>

source

fn clock_time_get( &mut self, id: Clockid, precision: Timestamp ) -> Result<Timestamp, Error>

source

fn fd_advise<'life0, 'async_trait>( &'life0 mut self, fd: Fd, offset: Filesize, len: Filesize, advice: Advice ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_allocate( &mut self, fd: Fd, offset: Filesize, len: Filesize ) -> Result<(), Error>

source

fn fd_close<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_datasync<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_fdstat_get<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<Fdstat, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_fdstat_set_flags(&mut self, fd: Fd, flags: Fdflags) -> Result<(), Error>

source

fn fd_fdstat_set_rights( &mut self, fd: Fd, fs_rights_base: Rights, fs_rights_inheriting: Rights ) -> Result<(), Error>

source

fn fd_filestat_get<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_filestat_set_size<'life0, 'async_trait>( &'life0 mut self, fd: Fd, size: Filesize ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_filestat_set_times<'life0, 'async_trait>( &'life0 mut self, fd: Fd, atim: Timestamp, mtim: Timestamp, fst_flags: Fstflags ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_pread<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 IovecArray<'a>, offset: Filesize ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn fd_prestat_get(&mut self, fd: Fd) -> Result<Prestat, Error>

source

fn fd_prestat_dir_name<'a>( &mut self, fd: Fd, path: &GuestPtr<'a, u8>, path_len: Size ) -> Result<(), Error>

source

fn fd_pwrite<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 CiovecArray<'a>, offset: Filesize ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn fd_read<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 IovecArray<'a> ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn fd_readdir<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, buf: &'life1 GuestPtr<'a, u8>, buf_len: Size, cookie: Dircookie ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn fd_renumber(&mut self, fd: Fd, to: Fd) -> Result<(), Error>

source

fn fd_seek<'life0, 'async_trait>( &'life0 mut self, fd: Fd, offset: Filedelta, whence: Whence ) -> Pin<Box<dyn Future<Output = Result<Filesize, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_sync<'life0, 'async_trait>( &'life0 mut self, fd: Fd ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn fd_tell(&mut self, fd: Fd) -> Result<Filesize, Error>

source

fn fd_write<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, iovs: &'life1 CiovecArray<'a> ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_create_directory<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_filestat_get<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, flags: Lookupflags, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<Filestat, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_filestat_set_times<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, flags: Lookupflags, path: &'life1 GuestPtr<'a, str>, atim: Timestamp, mtim: Timestamp, fst_flags: Fstflags ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_open<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, dirflags: Lookupflags, path: &'life1 GuestPtr<'a, str>, oflags: Oflags, fs_rights_base: Rights, fs_rights_inheriting: Rights, fdflags: Fdflags ) -> Pin<Box<dyn Future<Output = Result<Fd, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_remove_directory<'a, 'life0, 'life1, 'async_trait>( &'life0 mut self, fd: Fd, path: &'life1 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn path_rename<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, fd: Fd, old_path: &'life1 GuestPtr<'a, str>, new_fd: Fd, new_path: &'life2 GuestPtr<'a, str> ) -> Pin<Box<dyn Future<Output = Result<(), Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

source

fn poll_oneoff<'a, 'life0, 'life1, 'life2, 'async_trait>( &'life0 mut self, in_: &'life1 GuestPtr<'a, Subscription>, out: &'life2 GuestPtr<'a, Event>, nsubscriptions: Size ) -> Pin<Box<dyn Future<Output = Result<Size, Error>> + Send + 'async_trait>>
where Self: 'async_trait, 'a: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

source

fn proc_exit(&mut self, rval: Exitcode) -> Error

source

fn proc_raise(&mut self, sig: Signal) -> Result<(), Error>

source

fn sched_yield(&mut self) -> Result<(), Error>

source

fn random_get<'a>( &mut self, buf: &GuestPtr<'a, u8>, buf_len: Size ) -> Result<(), Error>

source

fn sock_recv<'a>( &mut self, fd: Fd, ri_data: &IovecArray<'a>, ri_flags: Riflags ) -> Result<(Size, Roflags), Error>

source

fn sock_send<'a>( &mut self, fd: Fd, si_data: &CiovecArray<'a>, si_flags: Siflags ) -> Result<Size, Error>

source

fn sock_shutdown(&mut self, fd: Fd, how: Sdflags) -> Result<(), Error>

Implementors§