Trait wasmedge_sys::AsInstance

source ·
pub trait AsInstance {
Show 17 methods // Required method unsafe fn as_ptr(&self) -> *const WasmEdge_ModuleInstanceContext; // Provided methods fn name(&self) -> Option<String> { ... } fn get_table( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Table, &Self>> where Self: Sized { ... } fn get_memory_ref( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Memory, &Self>> where Self: Sized { ... } fn get_memory_mut( &mut self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Memory, &mut Self>> where Self: Sized { ... } fn get_global( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Global, &Self>> where Self: Sized { ... } fn get_global_mut( &mut self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Global, &mut Self>> where Self: Sized { ... } fn func_len(&self) -> u32 { ... } fn func_names(&self) -> Option<Vec<String>> { ... } fn get_func(&self, name: &str) -> WasmEdgeResult<FuncRef<&Instance>> { ... } fn get_func_mut( &mut self, name: &str ) -> WasmEdgeResult<FuncRef<&mut Instance>> { ... } fn table_len(&self) -> u32 { ... } fn table_names(&self) -> Option<Vec<String>> { ... } fn mem_len(&self) -> u32 { ... } fn mem_names(&self) -> Option<Vec<String>> { ... } fn global_len(&self) -> u32 { ... } fn global_names(&self) -> Option<Vec<String>> { ... }
}
Expand description

The object as an module instance is required to implement this trait.

Required Methods§

source

unsafe fn as_ptr(&self) -> *const WasmEdge_ModuleInstanceContext

§Safety

Provides a raw pointer to the inner module instance context. The lifetime of the returned pointer must not exceed that of the object itself.

Provided Methods§

source

fn name(&self) -> Option<String>

Returns the name of this exported module instance.

If this module instance is an active module instance, then None is returned.

source

fn get_table( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Table, &Self>>
where Self: Sized,

Returns the exported table instance by name.

§Argument
§Error

If fail to find the target table instance, then an error is returned.

source

fn get_memory_ref( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Memory, &Self>>
where Self: Sized,

Returns the exported memory instance by name.

§Argument
§Error

If fail to find the target memory instance, then an error is returned.

source

fn get_memory_mut( &mut self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Memory, &mut Self>>
where Self: Sized,

source

fn get_global( &self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Global, &Self>>
where Self: Sized,

Returns the exported global instance by name.

§Argument
§Error

If fail to find the target global instance, then an error is returned.

source

fn get_global_mut( &mut self, name: impl AsRef<str> ) -> WasmEdgeResult<InnerRef<Global, &mut Self>>
where Self: Sized,

source

fn func_len(&self) -> u32

Returns the length of the exported function instances in this module instance.

source

fn func_names(&self) -> Option<Vec<String>>

Returns the names of the exported function instances in this module instance.

source

fn get_func(&self, name: &str) -> WasmEdgeResult<FuncRef<&Instance>>

Returns the exported function instance by name.

§Argument
§Error

If fail to find the target function, then an error is returned.

source

fn get_func_mut(&mut self, name: &str) -> WasmEdgeResult<FuncRef<&mut Instance>>

Returns the exported function instance by name.

§Argument
§Error

If fail to find the target function, then an error is returned.

source

fn table_len(&self) -> u32

Returns the length of the exported table instances in this module instance.

source

fn table_names(&self) -> Option<Vec<String>>

Returns the names of the exported table instances in this module instance.

source

fn mem_len(&self) -> u32

Returns the length of the exported memory instances in this module instance.

source

fn mem_names(&self) -> Option<Vec<String>>

Returns the names of all exported memory instances in this module instance.

source

fn global_len(&self) -> u32

Returns the length of the exported global instances in this module instance.

source

fn global_names(&self) -> Option<Vec<String>>

Returns the names of the exported global instances in this module instance.

Implementors§

source§

impl AsInstance for Instance

source§

impl<Inst> AsInstance for Inst
where Inst: AsMut<Instance> + AsRef<Instance> + Sized,

source§

impl<T: Send> AsInstance for AsyncImportObject<T>

Available on crate feature async and Linux only.
source§

impl<T: Sized> AsInstance for ImportModule<T>