pub struct WasiFilesystem;Expand description
A helper struct which implements HasData for the wasi:filesystem APIs.
This can be useful when directly calling add_to_linker functions directly,
such as [wasmtime_wasi::p2::bindings::filesystem::types::add_to_linker] as
the D type parameter. See HasData for more information about the type
parameter’s purpose.
When using this type you can skip the WasiFilesystemView trait, for
example.
§Examples
use wasmtime::component::{Linker, ResourceTable};
use wasmtime::{Engine, Result, Config};
use wasmtime_wasi::filesystem::*;
struct MyStoreState {
table: ResourceTable,
filesystem: WasiFilesystemCtx,
}
fn main() -> Result<()> {
let mut config = Config::new();
config.async_support(true);
let engine = Engine::new(&config)?;
let mut linker = Linker::new(&engine);
wasmtime_wasi::p2::bindings::filesystem::types::add_to_linker::<MyStoreState, WasiFilesystem>(
&mut linker,
|state| WasiFilesystemCtxView {
table: &mut state.table,
ctx: &mut state.filesystem,
},
)?;
Ok(())
}Trait Implementations§
Source§impl HasData for WasiFilesystem
impl HasData for WasiFilesystem
Source§type Data<'a> = WasiFilesystemCtxView<'a>
type Data<'a> = WasiFilesystemCtxView<'a>
The data associated with this trait implementation, chiefly used as a
generic associated type to allow plumbing the
'a lifetime into the
definition here. Read moreAuto Trait Implementations§
impl Freeze for WasiFilesystem
impl RefUnwindSafe for WasiFilesystem
impl Send for WasiFilesystem
impl Sync for WasiFilesystem
impl Unpin for WasiFilesystem
impl UnwindSafe for WasiFilesystem
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self file descriptor. Read more