Struct wasmedge_sys::frame::CallingFrame
source · pub struct CallingFrame { /* private fields */ }
Expand description
Represents a calling frame on top of stack.
Implementations§
source§impl CallingFrame
impl CallingFrame
sourcepub fn executor_mut(&self) -> Option<Executor>
pub fn executor_mut(&self) -> Option<Executor>
Returns the executor instance from this calling frame.
sourcepub fn module_instance(&self) -> Option<Instance>
pub fn module_instance(&self) -> Option<Instance>
Returns the module instance in this calling frame.
If the executing function instance is a host function and not added into any module instance, then returns None
.
When a wasm function is executing and trying to call a host function inside, a frame with the module instance the wasm function belongs to will be pushed onto the stack. And therefore the calling frame context will record that module instance.
sourcepub fn memory_mut(&self, idx: u32) -> Option<Memory>
pub fn memory_mut(&self, idx: u32) -> Option<Memory>
Returns the memory instance by the given index from the module instance of the current
calling frame. If the memory instance is not found, returns None
.
By default, a WASM module has only one memory instance after instantiation. Therefore, users can pass in 0
as
the index to get the memory instance in host function body. When the MultiMemories
config option is enabled, there would be more than one memory instances in the wasm module. Users can retrieve
the target memory instance by specifying the index of the memory instance in the wasm module instance.
Arguments
- idx - The index of the memory instance.
sourcepub fn as_ptr(&self) -> *const WasmEdge_CallingFrameContext
Available on crate feature ffi
only.
pub fn as_ptr(&self) -> *const WasmEdge_CallingFrameContext
ffi
only.Provides a raw pointer to the inner CallingFrame context.