Struct wasmtime_environ::ModuleEnvironment

source ·
pub struct ModuleEnvironment<'a, 'data> { /* private fields */ }
Expand description

Object containing the standalone environment information.

Implementations§

source§

impl<'a, 'data> ModuleEnvironment<'a, 'data>

source

pub fn new( tunables: &'a Tunables, validator: &'a mut Validator, types: &'a mut ModuleTypesBuilder ) -> Self

Allocates the environment data structures.

source

pub fn translate( self, parser: Parser, data: &'data [u8] ) -> WasmResult<ModuleTranslation<'data>>

Translate a wasm module using this environment.

This function will translate the data provided with parser, validating everything along the way with this environment’s validator.

The result of translation, ModuleTranslation, contains everything necessary to compile functions afterwards as well as learn type information about the module at runtime.

Trait Implementations§

source§

impl TypeConvert for ModuleEnvironment<'_, '_>

source§

fn lookup_heap_type(&self, index: UnpackedIndex) -> WasmHeapType

Converts the specified type index from a heap type into a canonicalized heap type.
source§

fn convert_global_type(&self, ty: &GlobalType) -> Global

Converts a wasmparser table type into a wasmtime type
source§

fn convert_table_type(&self, ty: &TableType) -> Table

Converts a wasmparser table type into a wasmtime type
source§

fn convert_func_type(&self, ty: &FuncType) -> WasmFuncType

Converts a wasmparser function type to a wasmtime type
source§

fn convert_valtype(&self, ty: ValType) -> WasmValType

Converts a wasmparser value type to a wasmtime type
source§

fn convert_ref_type(&self, ty: RefType) -> WasmRefType

Converts a wasmparser reference type to a wasmtime type
source§

fn convert_heap_type(&self, ty: HeapType) -> WasmHeapType

Converts a wasmparser heap type to a wasmtime type

Auto Trait Implementations§

§

impl<'a, 'data> !Freeze for ModuleEnvironment<'a, 'data>

§

impl<'a, 'data> RefUnwindSafe for ModuleEnvironment<'a, 'data>

§

impl<'a, 'data> Send for ModuleEnvironment<'a, 'data>

§

impl<'a, 'data> Sync for ModuleEnvironment<'a, 'data>

§

impl<'a, 'data> Unpin for ModuleEnvironment<'a, 'data>

§

impl<'a, 'data> !UnwindSafe for ModuleEnvironment<'a, 'data>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.