[][src]Struct wasmtime_environ::Module

pub struct Module {
    pub signatures: PrimaryMap<SignatureIndex, Signature>,
    pub imported_funcs: PrimaryMap<FuncIndex, (String, String)>,
    pub imported_tables: PrimaryMap<TableIndex, (String, String)>,
    pub imported_memories: PrimaryMap<MemoryIndex, (String, String)>,
    pub imported_globals: PrimaryMap<GlobalIndex, (String, String)>,
    pub functions: PrimaryMap<FuncIndex, SignatureIndex>,
    pub table_plans: PrimaryMap<TableIndex, TablePlan>,
    pub memory_plans: PrimaryMap<MemoryIndex, MemoryPlan>,
    pub globals: PrimaryMap<GlobalIndex, Global>,
    pub exports: IndexMap<String, Export>,
    pub start_func: Option<FuncIndex>,
    pub table_elements: Vec<TableElements>,
}

A translated WebAssembly module, excluding the function bodies and memory initializers.

Fields

signatures: PrimaryMap<SignatureIndex, Signature>

Unprocessed signatures exactly as provided by declare_signature().

imported_funcs: PrimaryMap<FuncIndex, (String, String)>

Names of imported functions.

imported_tables: PrimaryMap<TableIndex, (String, String)>

Names of imported tables.

imported_memories: PrimaryMap<MemoryIndex, (String, String)>

Names of imported memories.

imported_globals: PrimaryMap<GlobalIndex, (String, String)>

Names of imported globals.

functions: PrimaryMap<FuncIndex, SignatureIndex>

Types of functions, imported and local.

table_plans: PrimaryMap<TableIndex, TablePlan>

WebAssembly tables.

memory_plans: PrimaryMap<MemoryIndex, MemoryPlan>

WebAssembly linear memory plans.

globals: PrimaryMap<GlobalIndex, Global>

WebAssembly global variables.

exports: IndexMap<String, Export>

Exported entities.

start_func: Option<FuncIndex>

The module "start" function, if present.

table_elements: Vec<TableElements>

WebAssembly table initializers.

Methods

impl Module[src]

pub fn new() -> Self[src]

Allocates the module data structures.

pub fn func_index(&self, defined_func: DefinedFuncIndex) -> FuncIndex[src]

Convert a DefinedFuncIndex into a FuncIndex.

pub fn defined_func_index(&self, func: FuncIndex) -> Option<DefinedFuncIndex>[src]

Convert a FuncIndex into a DefinedFuncIndex. Returns None if the index is an imported function.

pub fn is_imported_function(&self, index: FuncIndex) -> bool[src]

Test whether the given function index is for an imported function.

pub fn table_index(&self, defined_table: DefinedTableIndex) -> TableIndex[src]

Convert a DefinedTableIndex into a TableIndex.

pub fn defined_table_index(
    &self,
    table: TableIndex
) -> Option<DefinedTableIndex>
[src]

Convert a TableIndex into a DefinedTableIndex. Returns None if the index is an imported table.

pub fn is_imported_table(&self, index: TableIndex) -> bool[src]

Test whether the given table index is for an imported table.

pub fn memory_index(&self, defined_memory: DefinedMemoryIndex) -> MemoryIndex[src]

Convert a DefinedMemoryIndex into a MemoryIndex.

pub fn defined_memory_index(
    &self,
    memory: MemoryIndex
) -> Option<DefinedMemoryIndex>
[src]

Convert a MemoryIndex into a DefinedMemoryIndex. Returns None if the index is an imported memory.

pub fn is_imported_memory(&self, index: MemoryIndex) -> bool[src]

Test whether the given memory index is for an imported memory.

pub fn global_index(&self, defined_global: DefinedGlobalIndex) -> GlobalIndex[src]

Convert a DefinedGlobalIndex into a GlobalIndex.

pub fn defined_global_index(
    &self,
    global: GlobalIndex
) -> Option<DefinedGlobalIndex>
[src]

Convert a GlobalIndex into a DefinedGlobalIndex. Returns None if the index is an imported global.

pub fn is_imported_global(&self, index: GlobalIndex) -> bool[src]

Test whether the given global index is for an imported global.

pub fn hash_for_cache<'data, H>(
    &self,
    function_body_inputs: &PrimaryMap<DefinedFuncIndex, FunctionBodyData<'data>>,
    state: &mut H
) where
    H: Hasher
[src]

Computes hash of the module for the purpose of caching.

Trait Implementations

impl Debug for Module[src]

Auto Trait Implementations

impl Unpin for Module

impl Send for Module

impl Sync for Module

impl RefUnwindSafe for Module

impl UnwindSafe for Module

Blanket Implementations

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self