Struct wasmer_vm::VMFunction [−][src]
pub struct VMFunction { pub address: *const VMFunctionBody, pub vmctx: VMFunctionEnvironment, pub signature: FunctionType, pub kind: VMFunctionKind, pub call_trampoline: Option<VMTrampoline>, pub instance_ref: Option<WeakOrStrongInstanceRef>, }
Expand description
A function export value.
Fields
address: *const VMFunctionBody
The address of the native-code function.
vmctx: VMFunctionEnvironment
Pointer to the containing VMContext
.
signature: FunctionType
The function type, used for compatibility checking.
kind: VMFunctionKind
The function kind (specifies the calling convention for the function).
call_trampoline: Option<VMTrampoline>
Address of the function call trampoline owned by the same VMContext that owns the VMFunctionBody.
May be None
when the function is a host function (FunctionType
== Dynamic
or vmctx
== nullptr
).
instance_ref: Option<WeakOrStrongInstanceRef>
A “reference” to the instance through the
InstanceRef
. None
if it is a host function.
Implementations
Converts the stored instance ref into a strong InstanceRef
if it is weak.
Returns None if it cannot be upgraded.
Trait Implementations
Performs the conversion.
Returns the size of the referenced value in bytes. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Safety
There is no non-threadsafe logic directly in this type. Calling the function may not be threadsafe.
Safety
The members of an VMFunction are immutable after construction.
Auto Trait Implementations
Blanket Implementations
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Mutably borrows from an owned value. Read more