pub trait WasmModuleResources {
type FuncType: WasmFuncType;
// Required methods
fn table_at(&self, at: u32) -> Option<TableType>;
fn memory_at(&self, at: u32) -> Option<MemoryType>;
fn tag_at(&self, at: u32) -> Option<&Self::FuncType>;
fn global_at(&self, at: u32) -> Option<GlobalType>;
fn func_type_at(&self, type_idx: u32) -> Option<&Self::FuncType>;
fn type_of_function(&self, func_idx: u32) -> Option<&Self::FuncType>;
fn element_type_at(&self, at: u32) -> Option<ValType>;
fn element_count(&self) -> u32;
fn data_count(&self) -> Option<u32>;
fn is_function_referenced(&self, idx: u32) -> bool;
}
Expand description
Types that qualify as Wasm validation database.
Note
The wasmparser
crate provides a builtin validation framework but allows
users of this crate to also feed the parsed Wasm into their own data
structure while parsing and also validate at the same time without
the need of an additional parsing or validation step or copying data around.
Required Associated Types§
sourcetype FuncType: WasmFuncType
type FuncType: WasmFuncType
The function type used for validation.
Required Methods§
sourcefn memory_at(&self, at: u32) -> Option<MemoryType>
fn memory_at(&self, at: u32) -> Option<MemoryType>
Returns the linear memory at given index.
sourcefn global_at(&self, at: u32) -> Option<GlobalType>
fn global_at(&self, at: u32) -> Option<GlobalType>
Returns the global variable at given index.
sourcefn func_type_at(&self, type_idx: u32) -> Option<&Self::FuncType>
fn func_type_at(&self, type_idx: u32) -> Option<&Self::FuncType>
Returns the FuncType
associated with the given type index.
sourcefn type_of_function(&self, func_idx: u32) -> Option<&Self::FuncType>
fn type_of_function(&self, func_idx: u32) -> Option<&Self::FuncType>
Returns the FuncType
associated with the given function index.
sourcefn element_type_at(&self, at: u32) -> Option<ValType>
fn element_type_at(&self, at: u32) -> Option<ValType>
Returns the element type at the given index.
sourcefn element_count(&self) -> u32
fn element_count(&self) -> u32
Returns the number of elements.
sourcefn data_count(&self) -> Option<u32>
fn data_count(&self) -> Option<u32>
Returns the number of bytes in the Wasm data section.
sourcefn is_function_referenced(&self, idx: u32) -> bool
fn is_function_referenced(&self, idx: u32) -> bool
Returns whether the function index is referenced in the module anywhere outside of the start/function sections.