Trait cranelift_wasm::ModuleEnvironment [−][src]
An object satisfying the ModuleEnvironment
trait can be passed as argument to the
translate_module
function. These methods should not be called
by the user, they are only for cranelift-wasm
internal use.
Required methods
fn declare_signature(
&mut self,
wasm_func_type: WasmFuncType,
sig: Signature
) -> WasmResult<()>
[src]
&mut self,
wasm_func_type: WasmFuncType,
sig: Signature
) -> WasmResult<()>
Declares a function signature to the environment.
fn declare_func_import(
&mut self,
sig_index: SignatureIndex,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
sig_index: SignatureIndex,
module: &'data str,
field: &'data str
) -> WasmResult<()>
Declares a function import to the environment.
fn declare_table_import(
&mut self,
table: Table,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
table: Table,
module: &'data str,
field: &'data str
) -> WasmResult<()>
Declares a table import to the environment.
fn declare_memory_import(
&mut self,
memory: Memory,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
memory: Memory,
module: &'data str,
field: &'data str
) -> WasmResult<()>
Declares a memory import to the environment.
fn declare_global_import(
&mut self,
global: Global,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
global: Global,
module: &'data str,
field: &'data str
) -> WasmResult<()>
Declares a global import to the environment.
fn declare_func_type(&mut self, sig_index: SignatureIndex) -> WasmResult<()>
[src]
Declares the type (signature) of a local function in the module.
fn declare_table(&mut self, table: Table) -> WasmResult<()>
[src]
Declares a table to the environment.
fn declare_memory(&mut self, memory: Memory) -> WasmResult<()>
[src]
Declares a memory to the environment
fn declare_global(&mut self, global: Global) -> WasmResult<()>
[src]
Declares a global to the environment.
fn declare_func_export(
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>
Declares a function export to the environment.
fn declare_table_export(
&mut self,
table_index: TableIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
table_index: TableIndex,
name: &'data str
) -> WasmResult<()>
Declares a table export to the environment.
fn declare_memory_export(
&mut self,
memory_index: MemoryIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
memory_index: MemoryIndex,
name: &'data str
) -> WasmResult<()>
Declares a memory export to the environment.
fn declare_global_export(
&mut self,
global_index: GlobalIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
global_index: GlobalIndex,
name: &'data str
) -> WasmResult<()>
Declares a global export to the environment.
fn declare_start_func(&mut self, index: FuncIndex) -> WasmResult<()>
[src]
Declares the optional start function.
fn declare_table_elements(
&mut self,
table_index: TableIndex,
base: Option<GlobalIndex>,
offset: usize,
elements: Box<[FuncIndex]>
) -> WasmResult<()>
[src]
&mut self,
table_index: TableIndex,
base: Option<GlobalIndex>,
offset: usize,
elements: Box<[FuncIndex]>
) -> WasmResult<()>
Fills a declared table with references to functions in the module.
fn declare_passive_element(
&mut self,
index: ElemIndex,
elements: Box<[FuncIndex]>
) -> WasmResult<()>
[src]
&mut self,
index: ElemIndex,
elements: Box<[FuncIndex]>
) -> WasmResult<()>
Declare a passive element segment.
fn declare_passive_data(
&mut self,
data_index: DataIndex,
data: &'data [u8]
) -> WasmResult<()>
[src]
&mut self,
data_index: DataIndex,
data: &'data [u8]
) -> WasmResult<()>
Declare a passive data segment.
fn define_function_body(
&mut self,
module_translation_state: &ModuleTranslationState,
body_bytes: &'data [u8],
body_offset: usize
) -> WasmResult<()>
[src]
&mut self,
module_translation_state: &ModuleTranslationState,
body_bytes: &'data [u8],
body_offset: usize
) -> WasmResult<()>
Provides the contents of a function body.
Note there’s no reserve_function_bodies
function because the number of
functions is already provided by reserve_func_types
.
fn declare_data_initialization(
&mut self,
memory_index: MemoryIndex,
base: Option<GlobalIndex>,
offset: usize,
data: &'data [u8]
) -> WasmResult<()>
[src]
&mut self,
memory_index: MemoryIndex,
base: Option<GlobalIndex>,
offset: usize,
data: &'data [u8]
) -> WasmResult<()>
Fills a declared memory with bytes at module instantiation.
Provided methods
fn reserve_signatures(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of signatures up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_imports(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of imports up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn finish_imports(&mut self) -> WasmResult<()>
[src]
Notifies the implementation that all imports have been declared.
fn reserve_func_types(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of defined functions up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_tables(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of defined tables up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_memories(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of defined memories up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_globals(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of defined globals up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_exports(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of exports up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn finish_exports(&mut self) -> WasmResult<()>
[src]
Notifies the implementation that all exports have been declared.
fn reserve_table_elements(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of element initializers up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn reserve_passive_data(&mut self, count: u32) -> WasmResult<()>
[src]
Provides the number of passive data segments up front.
By default this does nothing, but implementations may use this to pre-allocate memory if desired.
fn reserve_data_initializers(&mut self, _num: u32) -> WasmResult<()>
[src]
Provides the number of data initializers up front. By default this does nothing, but implementations can use this to preallocate memory if desired.
fn declare_module_name(&mut self, _name: &'data str) -> WasmResult<()>
[src]
Declares the name of a module to the environment.
By default this does nothing, but implementations can use this to read the module name subsection of the custom name section if desired.
fn declare_func_name(
&mut self,
_func_index: FuncIndex,
_name: &'data str
) -> WasmResult<()>
[src]
&mut self,
_func_index: FuncIndex,
_name: &'data str
) -> WasmResult<()>
Declares the name of a function to the environment.
By default this does nothing, but implementations can use this to read the function name subsection of the custom name section if desired.
fn custom_section(
&mut self,
_name: &'data str,
_data: &'data [u8]
) -> WasmResult<()>
[src]
&mut self,
_name: &'data str,
_data: &'data [u8]
) -> WasmResult<()>
Indicates that a custom section has been found in the wasm file
Implementors
impl<'data> ModuleEnvironment<'data> for DummyEnvironment
[src]
fn declare_signature(
&mut self,
_wasm: WasmFuncType,
sig: Signature
) -> WasmResult<()>
[src]
&mut self,
_wasm: WasmFuncType,
sig: Signature
) -> WasmResult<()>
fn declare_func_import(
&mut self,
sig_index: SignatureIndex,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
sig_index: SignatureIndex,
module: &'data str,
field: &'data str
) -> WasmResult<()>
fn declare_func_type(&mut self, sig_index: SignatureIndex) -> WasmResult<()>
[src]
fn declare_global(&mut self, global: Global) -> WasmResult<()>
[src]
fn declare_global_import(
&mut self,
global: Global,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
global: Global,
module: &'data str,
field: &'data str
) -> WasmResult<()>
fn declare_table(&mut self, table: Table) -> WasmResult<()>
[src]
fn declare_table_import(
&mut self,
table: Table,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
table: Table,
module: &'data str,
field: &'data str
) -> WasmResult<()>
fn declare_table_elements(
&mut self,
_table_index: TableIndex,
_base: Option<GlobalIndex>,
_offset: usize,
_elements: Box<[FuncIndex]>
) -> WasmResult<()>
[src]
&mut self,
_table_index: TableIndex,
_base: Option<GlobalIndex>,
_offset: usize,
_elements: Box<[FuncIndex]>
) -> WasmResult<()>
fn declare_passive_element(
&mut self,
_elem_index: ElemIndex,
_segments: Box<[FuncIndex]>
) -> WasmResult<()>
[src]
&mut self,
_elem_index: ElemIndex,
_segments: Box<[FuncIndex]>
) -> WasmResult<()>
fn declare_passive_data(
&mut self,
_elem_index: DataIndex,
_segments: &'data [u8]
) -> WasmResult<()>
[src]
&mut self,
_elem_index: DataIndex,
_segments: &'data [u8]
) -> WasmResult<()>
fn declare_memory(&mut self, memory: Memory) -> WasmResult<()>
[src]
fn declare_memory_import(
&mut self,
memory: Memory,
module: &'data str,
field: &'data str
) -> WasmResult<()>
[src]
&mut self,
memory: Memory,
module: &'data str,
field: &'data str
) -> WasmResult<()>
fn declare_data_initialization(
&mut self,
_memory_index: MemoryIndex,
_base: Option<GlobalIndex>,
_offset: usize,
_data: &'data [u8]
) -> WasmResult<()>
[src]
&mut self,
_memory_index: MemoryIndex,
_base: Option<GlobalIndex>,
_offset: usize,
_data: &'data [u8]
) -> WasmResult<()>
fn declare_func_export(
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>
fn declare_table_export(
&mut self,
table_index: TableIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
table_index: TableIndex,
name: &'data str
) -> WasmResult<()>
fn declare_memory_export(
&mut self,
memory_index: MemoryIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
memory_index: MemoryIndex,
name: &'data str
) -> WasmResult<()>
fn declare_global_export(
&mut self,
global_index: GlobalIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
global_index: GlobalIndex,
name: &'data str
) -> WasmResult<()>
fn declare_start_func(&mut self, func_index: FuncIndex) -> WasmResult<()>
[src]
fn define_function_body(
&mut self,
module_translation_state: &ModuleTranslationState,
body_bytes: &'data [u8],
body_offset: usize
) -> WasmResult<()>
[src]
&mut self,
module_translation_state: &ModuleTranslationState,
body_bytes: &'data [u8],
body_offset: usize
) -> WasmResult<()>
fn declare_module_name(&mut self, name: &'data str) -> WasmResult<()>
[src]
fn declare_func_name(
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>
[src]
&mut self,
func_index: FuncIndex,
name: &'data str
) -> WasmResult<()>