Trait wasmtime_environ::wasm::wasmparser::WasmModuleResources[][src]

pub trait WasmModuleResources {
    type FuncType: WasmFuncType;
    fn table_at(&self, at: u32) -> Option<TableType>;
fn memory_at(&self, at: u32) -> Option<MemoryType>;
fn event_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<Type>;
fn element_count(&self) -> u32;
fn data_count(&self) -> u32;
fn is_function_referenced(&self, idx: u32) -> bool; }
Expand description

Types that qualify as Wasm valiation 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.

Associated Types

type FuncType: WasmFuncType[src]

The function type used for validation.

Required methods

fn table_at(&self, at: u32) -> Option<TableType>[src]

Returns the table at given index if any.

fn memory_at(&self, at: u32) -> Option<MemoryType>[src]

Returns the linear memory at given index.

fn event_at(&self, at: u32) -> Option<&Self::FuncType>[src]

Returns the event at given index.

fn global_at(&self, at: u32) -> Option<GlobalType>[src]

Returns the global variable at given index.

fn func_type_at(&self, type_idx: u32) -> Option<&Self::FuncType>[src]

Returns the FuncType associated with the given type index.

fn type_of_function(&self, func_idx: u32) -> Option<&Self::FuncType>[src]

Returns the FuncType associated with the given function index.

fn element_type_at(&self, at: u32) -> Option<Type>[src]

Returns the element type at the given index.

fn element_count(&self) -> u32[src]

Returns the number of elements.

fn data_count(&self) -> u32[src]

Returns the number of bytes in the Wasm data section.

fn is_function_referenced(&self, idx: u32) -> bool[src]

Returns whether the function index is referenced in the module anywhere outside of the start/function sections.

Implementations on Foreign Types

impl<T> WasmModuleResources for Arc<T> where
    T: WasmModuleResources
[src]

type FuncType = <T as WasmModuleResources>::FuncType

pub fn table_at(&self, at: u32) -> Option<TableType>[src]

pub fn memory_at(&self, at: u32) -> Option<MemoryType>[src]

pub fn event_at(
    &self,
    at: u32
) -> Option<&<Arc<T> as WasmModuleResources>::FuncType>
[src]

pub fn global_at(&self, at: u32) -> Option<GlobalType>[src]

pub fn func_type_at(
    &self,
    type_idx: u32
) -> Option<&<Arc<T> as WasmModuleResources>::FuncType>
[src]

pub fn type_of_function(
    &self,
    func_idx: u32
) -> Option<&<Arc<T> as WasmModuleResources>::FuncType>
[src]

pub fn element_type_at(&self, at: u32) -> Option<Type>[src]

pub fn element_count(&self) -> u32[src]

pub fn data_count(&self) -> u32[src]

pub fn is_function_referenced(&self, idx: u32) -> bool[src]

impl<'_, T> WasmModuleResources for &'_ T where
    T: WasmModuleResources + ?Sized
[src]

type FuncType = <T as WasmModuleResources>::FuncType

pub fn table_at(&self, at: u32) -> Option<TableType>[src]

pub fn memory_at(&self, at: u32) -> Option<MemoryType>[src]

pub fn event_at(
    &self,
    at: u32
) -> Option<&<&'_ T as WasmModuleResources>::FuncType>
[src]

pub fn global_at(&self, at: u32) -> Option<GlobalType>[src]

pub fn func_type_at(
    &self,
    at: u32
) -> Option<&<&'_ T as WasmModuleResources>::FuncType>
[src]

pub fn type_of_function(
    &self,
    func_idx: u32
) -> Option<&<&'_ T as WasmModuleResources>::FuncType>
[src]

pub fn element_type_at(&self, at: u32) -> Option<Type>[src]

pub fn element_count(&self) -> u32[src]

pub fn data_count(&self) -> u32[src]

pub fn is_function_referenced(&self, idx: u32) -> bool[src]

Implementors

impl WasmModuleResources for Validator[src]

type FuncType = FuncType

pub fn table_at(&self, at: u32) -> Option<TableType>[src]

pub fn memory_at(&self, at: u32) -> Option<MemoryType>[src]

pub fn event_at(
    &self,
    at: u32
) -> Option<&<Validator as WasmModuleResources>::FuncType>
[src]

pub fn global_at(&self, at: u32) -> Option<GlobalType>[src]

pub fn func_type_at(
    &self,
    type_idx: u32
) -> Option<&<Validator as WasmModuleResources>::FuncType>
[src]

pub fn type_of_function(
    &self,
    func_idx: u32
) -> Option<&<Validator as WasmModuleResources>::FuncType>
[src]

pub fn element_type_at(&self, at: u32) -> Option<Type>[src]

pub fn element_count(&self) -> u32[src]

pub fn data_count(&self) -> u32[src]

pub fn is_function_referenced(&self, idx: u32) -> bool[src]

impl WasmModuleResources for ValidatorResources[src]

type FuncType = FuncType

pub fn table_at(&self, at: u32) -> Option<TableType>[src]

pub fn memory_at(&self, at: u32) -> Option<MemoryType>[src]

pub fn event_at(
    &self,
    at: u32
) -> Option<&<ValidatorResources as WasmModuleResources>::FuncType>
[src]

pub fn global_at(&self, at: u32) -> Option<GlobalType>[src]

pub fn func_type_at(
    &self,
    at: u32
) -> Option<&<ValidatorResources as WasmModuleResources>::FuncType>
[src]

pub fn type_of_function(
    &self,
    at: u32
) -> Option<&<ValidatorResources as WasmModuleResources>::FuncType>
[src]

pub fn element_type_at(&self, at: u32) -> Option<Type>[src]

pub fn element_count(&self) -> u32[src]

pub fn data_count(&self) -> u32[src]

pub fn is_function_referenced(&self, idx: u32) -> bool[src]