pub trait Artifact: Send + Sync + Upcastable + MemoryUsage + ArtifactCreate {
    fn register_frame_info(&self);
    fn finished_functions(
        &self
    ) -> &BoxedSlice<LocalFunctionIndex, FunctionBodyPtr>; fn finished_function_call_trampolines(
        &self
    ) -> &BoxedSlice<SignatureIndex, VMTrampoline>; fn finished_dynamic_function_trampolines(
        &self
    ) -> &BoxedSlice<FunctionIndex, FunctionBodyPtr>; fn signatures(&self) -> &BoxedSlice<SignatureIndex, VMSharedSignatureIndex>; fn func_data_registry(&self) -> &FuncDataRegistry; fn preinstantiate(&self) -> Result<(), InstantiationError> { ... } unsafe fn instantiate(
        &self,
        tunables: &dyn Tunables,
        resolver: &dyn Resolver,
        host_state: Box<dyn Any>
    ) -> Result<InstanceHandle, InstantiationError> { ... } unsafe fn finish_instantiation(
        &self,
        trap_handler: &(dyn TrapHandler + 'static),
        handle: &InstanceHandle
    ) -> Result<(), InstantiationError> { ... } }
Expand description

An Artifact is the product that the Engine implementation produce and use.

An Artifact is the product that the Engine implementation produce and use.

The ArtifactRun contains the extra information needed to run the module at runtime, such as [ModuleInfo] and [Features].

Required Methods

Register thie Artifact stack frame information into the global scope.

This is required to ensure that any traps can be properly symbolicated.

Returns the functions allocated in memory or this Artifact ready to be run.

Returns the function call trampolines allocated in memory of this Artifact, ready to be run.

Returns the dynamic function trampolines allocated in memory of this Artifact, ready to be run.

Returns the associated VM signatures for this Artifact.

Get the func data registry

Provided Methods

Do preinstantiation logic that is executed before instantiating

Crate an Instance from this Artifact.

Safety

See InstanceHandle::new.

Finishes the instantiation of a just created InstanceHandle.

Safety

See InstanceHandle::finish_instantiation.

Implementations

Try to downcast the artifact into a given type.

Try to downcast the artifact into a given type mutably.

Implementors