Struct wasmer_wasix::runners::wasi::WasiRunner
source · pub struct WasiRunner {
wasi: CommonWasiOptions,
stdin: Option<ArcBoxFile>,
stdout: Option<ArcBoxFile>,
stderr: Option<ArcBoxFile>,
}
Fields§
§wasi: CommonWasiOptions
§stdin: Option<ArcBoxFile>
§stdout: Option<ArcBoxFile>
§stderr: Option<ArcBoxFile>
Implementations§
source§impl WasiRunner
impl WasiRunner
sourcepub fn entry_function(&self) -> Option<String>
pub fn entry_function(&self) -> Option<String>
Returns the current entry function for this WasiRunner
sourcepub fn with_entry_function<S>(&mut self, entry_function: S) -> &mut Self
pub fn with_entry_function<S>(&mut self, entry_function: S) -> &mut Self
Builder method to set the name of the entry function for this WasiRunner
sourcepub fn with_args<A, S>(&mut self, args: A) -> &mut Self
pub fn with_args<A, S>(&mut self, args: A) -> &mut Self
Builder method to provide CLI args to the runner
sourcepub fn with_env(self, key: impl Into<String>, value: impl Into<String>) -> Self
pub fn with_env(self, key: impl Into<String>, value: impl Into<String>) -> Self
Builder method to provide environment variables to the runner.
pub fn with_envs<I, K, V>(&mut self, envs: I) -> &mut Self
pub fn with_forward_host_env(&mut self, forward: bool) -> &mut Self
pub fn with_mapped_directories<I, D>(&mut self, dirs: I) -> &mut Self
pub fn with_home_mapped(&mut self, is_home_mapped: bool) -> &mut Self
pub fn with_tmp_mapped(&mut self, is_tmp_mapped: bool) -> &mut Self
pub fn with_mounted_directories<I, D>(&mut self, dirs: I) -> &mut Self
sourcepub fn with_mount(
&mut self,
dest: String,
fs: Arc<dyn FileSystem + Send + Sync>,
) -> &mut Self
pub fn with_mount( &mut self, dest: String, fs: Arc<dyn FileSystem + Send + Sync>, ) -> &mut Self
Mount a FileSystem
instance at a particular location.
sourcepub fn with_current_dir(&mut self, dir: impl Into<PathBuf>) -> &mut Self
pub fn with_current_dir(&mut self, dir: impl Into<PathBuf>) -> &mut Self
Override the directory the WASIX instance will start in.
sourcepub fn with_injected_package(&mut self, pkg: BinaryPackage) -> &mut Self
pub fn with_injected_package(&mut self, pkg: BinaryPackage) -> &mut Self
Add a package that should be available to the instance at runtime.
sourcepub fn with_injected_packages(
&mut self,
packages: impl IntoIterator<Item = BinaryPackage>,
) -> &mut Self
pub fn with_injected_packages( &mut self, packages: impl IntoIterator<Item = BinaryPackage>, ) -> &mut Self
Add packages that should be available to the instance at runtime.
pub fn with_mapped_host_command( &mut self, alias: impl Into<String>, target: impl Into<String>, ) -> &mut Self
pub fn with_mapped_host_commands( &mut self, commands: impl IntoIterator<Item = MappedCommand>, ) -> &mut Self
pub fn capabilities_mut(&mut self) -> &mut Capabilities
pub fn with_capabilities(&mut self, capabilities: Capabilities) -> &mut Self
pub fn with_snapshot_trigger(&mut self, on: SnapshotTrigger) -> &mut Self
pub fn with_default_snapshot_triggers(&mut self) -> &mut Self
pub fn has_snapshot_trigger(&self, on: SnapshotTrigger) -> bool
pub fn with_snapshot_interval(&mut self, period: Duration) -> &mut Self
pub fn with_journal(&mut self, journal: Arc<DynJournal>) -> &mut Self
pub fn with_stdin( &mut self, stdin: Box<dyn VirtualFile + Send + Sync>, ) -> &mut Self
pub fn with_stdout( &mut self, stdout: Box<dyn VirtualFile + Send + Sync>, ) -> &mut Self
pub fn with_stderr( &mut self, stderr: Box<dyn VirtualFile + Send + Sync>, ) -> &mut Self
sourcepub fn with_import(
&mut self,
namespace: impl Into<String>,
name: impl Into<String>,
value: impl Into<Extern>,
) -> &mut Self
pub fn with_import( &mut self, namespace: impl Into<String>, name: impl Into<String>, value: impl Into<Extern>, ) -> &mut Self
Add an item to the list of importable items provided to the instance.
sourcepub fn with_imports<I, S1, S2, E>(&mut self, imports: I) -> &mut Self
pub fn with_imports<I, S1, S2, E>(&mut self, imports: I) -> &mut Self
Add multiple import functions.
This method will accept a [&Imports
][wasmer::Imports] object.
pub fn prepare_webc_env( &self, program_name: &str, wasi: &Wasi, pkg: Option<&BinaryPackage>, runtime: Arc<dyn Runtime + Send + Sync>, root_fs: Option<TmpFileSystem>, ) -> Result<WasiEnvBuilder, Error>
pub fn run_wasm( &self, runtime: Arc<dyn Runtime + Send + Sync>, program_name: &str, module: &Module, module_hash: ModuleHash, asyncify: bool, ) -> Result<(), Error>
Trait Implementations§
source§impl Clone for WasiRunner
impl Clone for WasiRunner
source§fn clone(&self) -> WasiRunner
fn clone(&self) -> WasiRunner
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for WasiRunner
impl Debug for WasiRunner
source§impl Default for WasiRunner
impl Default for WasiRunner
source§fn default() -> WasiRunner
fn default() -> WasiRunner
Returns the “default value” for a type. Read more
source§impl Runner for WasiRunner
impl Runner for WasiRunner
Auto Trait Implementations§
impl Freeze for WasiRunner
impl !RefUnwindSafe for WasiRunner
impl Send for WasiRunner
impl Sync for WasiRunner
impl Unpin for WasiRunner
impl !UnwindSafe for WasiRunner
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> Pointee for T
impl<T> Pointee for T
§impl<T> Upcastable for T
impl<T> Upcastable for T
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
§impl<T> Upcastable for T
impl<T> Upcastable for T
§fn upcast_any_ref(&self) -> &(dyn Any + 'static)
fn upcast_any_ref(&self) -> &(dyn Any + 'static)
upcast ref
§fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn upcast_any_mut(&mut self) -> &mut (dyn Any + 'static)
upcast mut ref
§fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
fn upcast_any_box(self: Box<T>) -> Box<dyn Any>
upcast boxed dyn