pub struct ModuleEnvironment<'a, 'data> { /* private fields */ }
Expand description
Object containing the standalone environment information.
Implementations§
Source§impl<'a, 'data> ModuleEnvironment<'a, 'data>
impl<'a, 'data> ModuleEnvironment<'a, 'data>
Sourcepub fn new(
tunables: &'a Tunables,
validator: &'a mut Validator,
types: &'a mut ModuleTypesBuilder,
) -> Self
pub fn new( tunables: &'a Tunables, validator: &'a mut Validator, types: &'a mut ModuleTypesBuilder, ) -> Self
Allocates the environment data structures.
Sourcepub fn translate(
self,
parser: Parser,
data: &'data [u8],
) -> Result<ModuleTranslation<'data>>
pub fn translate( self, parser: Parser, data: &'data [u8], ) -> Result<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<'_, '_>
impl TypeConvert for ModuleEnvironment<'_, '_>
Source§fn lookup_heap_type(&self, index: UnpackedIndex) -> WasmHeapType
fn lookup_heap_type(&self, index: UnpackedIndex) -> WasmHeapType
Converts the specified type index from a heap type into a canonicalized
heap type.
Source§fn lookup_type_index(&self, index: UnpackedIndex) -> EngineOrModuleTypeIndex
fn lookup_type_index(&self, index: UnpackedIndex) -> EngineOrModuleTypeIndex
Converts the specified type index from a heap type into a canonicalized
heap type.
Source§fn convert_global_type(&self, ty: &GlobalType) -> WasmResult<Global>
fn convert_global_type(&self, ty: &GlobalType) -> WasmResult<Global>
Converts a wasmparser table type into a wasmtime type
Source§fn convert_table_type(&self, ty: &TableType) -> WasmResult<Table>
fn convert_table_type(&self, ty: &TableType) -> WasmResult<Table>
Converts a wasmparser table type into a wasmtime type
fn convert_sub_type(&self, ty: &SubType) -> WasmResult<WasmSubType>
fn convert_composite_type( &self, ty: &CompositeType, ) -> WasmResult<WasmCompositeType>
Source§fn convert_cont_type(&self, ty: &ContType) -> WasmContType
fn convert_cont_type(&self, ty: &ContType) -> WasmContType
Converts a wasmparser continuation type to a wasmtime type
fn convert_struct_type(&self, ty: &StructType) -> WasmResult<WasmStructType>
fn convert_array_type(&self, ty: &ArrayType) -> WasmResult<WasmArrayType>
fn convert_field_type(&self, ty: &FieldType) -> WasmResult<WasmFieldType>
fn convert_storage_type(&self, ty: &StorageType) -> WasmResult<WasmStorageType>
Source§fn convert_func_type(&self, ty: &FuncType) -> WasmResult<WasmFuncType>
fn convert_func_type(&self, ty: &FuncType) -> WasmResult<WasmFuncType>
Converts a wasmparser function type to a wasmtime type
Source§fn convert_valtype(&self, ty: ValType) -> WasmResult<WasmValType>
fn convert_valtype(&self, ty: ValType) -> WasmResult<WasmValType>
Converts a wasmparser value type to a wasmtime type
Source§fn convert_ref_type(&self, ty: RefType) -> WasmResult<WasmRefType>
fn convert_ref_type(&self, ty: RefType) -> WasmResult<WasmRefType>
Converts a wasmparser reference type to a wasmtime type
Source§fn convert_heap_type(&self, ty: HeapType) -> WasmResult<WasmHeapType>
fn convert_heap_type(&self, ty: HeapType) -> WasmResult<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> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more