[−][src]Struct wasmtime_runtime::InstanceHandle
A handle holding an Instance
of a WebAssembly module.
Methods
impl InstanceHandle
[src]
pub fn new(
module: Rc<Module>,
global_exports: Rc<RefCell<HashMap<String, Option<Export>>>>,
finished_functions: BoxedSlice<DefinedFuncIndex, *const VMFunctionBody>,
imports: Imports,
data_initializers: &[DataInitializer],
vmshared_signatures: BoxedSlice<SignatureIndex, VMSharedSignatureIndex>,
dbg_jit_registration: Option<Rc<GdbJitImageRegistration>>,
host_state: Box<dyn Any>
) -> Result<Self, InstantiationError>
[src]
module: Rc<Module>,
global_exports: Rc<RefCell<HashMap<String, Option<Export>>>>,
finished_functions: BoxedSlice<DefinedFuncIndex, *const VMFunctionBody>,
imports: Imports,
data_initializers: &[DataInitializer],
vmshared_signatures: BoxedSlice<SignatureIndex, VMSharedSignatureIndex>,
dbg_jit_registration: Option<Rc<GdbJitImageRegistration>>,
host_state: Box<dyn Any>
) -> Result<Self, InstantiationError>
Create a new InstanceHandle
pointing at a new Instance
.
pub unsafe fn from_vmctx(vmctx: *mut VMContext) -> Self
[src]
Create a new InstanceHandle
pointing at the instance
pointed to by the given VMContext
pointer.
pub fn vmctx(&self) -> &VMContext
[src]
Return a reference to the vmctx used by compiled wasm code.
pub fn vmctx_ptr(&self) -> *const VMContext
[src]
Return a raw pointer to the vmctx used by compiled wasm code.
pub fn module(&self) -> Rc<Module>
[src]
Return a reference-counting pointer to a module.
pub fn module_ref(&self) -> &Module
[src]
Return a reference to a module.
pub fn vmctx_mut(&mut self) -> &mut VMContext
[src]
Return a mutable reference to the vmctx used by compiled wasm code.
pub fn vmctx_mut_ptr(&mut self) -> *mut VMContext
[src]
Return a mutable raw pointer to the vmctx used by compiled wasm code.
pub fn lookup(&mut self, field: &str) -> Option<Export>
[src]
Lookup an export with the given name.
pub unsafe fn lookup_immutable(&self, field: &str) -> Option<Export>
[src]
Lookup an export with the given name. This takes an immutable reference,
and the result is an Export
that the type system doesn't prevent from
being used to mutate the instance, so this function is unsafe.
pub fn lookup_by_declaration(&mut self, export: &Export) -> Export
[src]
Lookup an export with the given export declaration.
pub unsafe fn lookup_immutable_by_declaration(&self, export: &Export) -> Export
[src]
Lookup an export with the given export declaration. This takes an immutable
reference, and the result is an Export
that the type system doesn't prevent
from being used to mutate the instance, so this function is unsafe.
pub fn exports(&self) -> Iter<String, Export>
[src]
Return an iterator over the exports of this instance.
Specifically, it provides access to the key-value pairs, where they keys
are export names, and the values are export declarations which can be
resolved lookup_by_declaration
.
pub fn host_state(&mut self) -> &mut dyn Any
[src]
Return a reference to the custom state attached to this instance.
pub fn memory_index(&self, memory: &VMMemoryDefinition) -> DefinedMemoryIndex
[src]
Return the memory index for the given VMMemoryDefinition
in this instance.
pub fn memory_grow(
&mut self,
memory_index: DefinedMemoryIndex,
delta: u32
) -> Option<u32>
[src]
&mut self,
memory_index: DefinedMemoryIndex,
delta: u32
) -> Option<u32>
Grow memory in this instance by the specified amount of pages.
Returns None
if memory can't be grown by the specified amount
of pages.
pub fn table_index(&self, table: &VMTableDefinition) -> DefinedTableIndex
[src]
Return the table index for the given VMTableDefinition
in this instance.
pub fn table_grow(
&mut self,
table_index: DefinedTableIndex,
delta: u32
) -> Option<u32>
[src]
&mut self,
table_index: DefinedTableIndex,
delta: u32
) -> Option<u32>
Grow table in this instance by the specified amount of pages.
Returns None
if memory can't be grown by the specified amount
of pages.
pub fn table_get(
&self,
table_index: DefinedTableIndex,
index: u32
) -> Option<&VMCallerCheckedAnyfunc>
[src]
&self,
table_index: DefinedTableIndex,
index: u32
) -> Option<&VMCallerCheckedAnyfunc>
Get table element reference.
Returns None
if index is out of bounds.
pub fn table_get_mut(
&mut self,
table_index: DefinedTableIndex,
index: u32
) -> Option<&mut VMCallerCheckedAnyfunc>
[src]
&mut self,
table_index: DefinedTableIndex,
index: u32
) -> Option<&mut VMCallerCheckedAnyfunc>
Get mutable table element reference.
Returns None
if index is out of bounds.
Trait Implementations
impl Drop for InstanceHandle
[src]
impl Clone for InstanceHandle
[src]
fn clone(&self) -> Self
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Eq for InstanceHandle
[src]
impl PartialEq<InstanceHandle> for InstanceHandle
[src]
fn eq(&self, other: &InstanceHandle) -> bool
[src]
fn ne(&self, other: &InstanceHandle) -> bool
[src]
impl Hash for InstanceHandle
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl StructuralPartialEq for InstanceHandle
[src]
impl StructuralEq for InstanceHandle
[src]
Auto Trait Implementations
impl !Send for InstanceHandle
impl !Sync for InstanceHandle
impl Unpin for InstanceHandle
impl !UnwindSafe for InstanceHandle
impl !RefUnwindSafe for InstanceHandle
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
fn equivalent(&self, key: &K) -> bool
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self