[][src]Struct walrus::ModuleTables

pub struct ModuleTables { /* fields omitted */ }

The set of tables in this module.

Implementations

impl ModuleTables[src]

pub fn add_import(
    &mut self,
    initial: u32,
    max: Option<u32>,
    element_ty: ValType,
    import: ImportId
) -> TableId
[src]

Adds a new imported table to this list of tables

pub fn add_local(
    &mut self,
    initial: u32,
    max: Option<u32>,
    element_ty: ValType
) -> TableId
[src]

Construct a new table, that does not originate from any of the input wasm tables.

pub fn get(&self, table: TableId) -> &Table[src]

Returns the actual table associated with an ID

pub fn get_mut(&mut self, table: TableId) -> &mut Table[src]

Returns the actual table associated with an ID

pub fn delete(&mut self, id: TableId)[src]

Removes a table from this module.

It is up to you to ensure that any potential references to the deleted table are also removed, eg call_indirect expressions and exports, etc.

pub fn iter(&self) -> impl Iterator<Item = &Table>[src]

Iterates over all tables in this section.

pub fn main_function_table(&self) -> Result<Option<TableId>>[src]

Finds a unique function table in a module.

Modules produced by compilers like LLVM typically have one function table for indirect function calls. This function will look for a single function table inside this module, and return that if found. If no function tables are present None will be returned

Errors

Returns an error if there are two function tables in this module

pub fn iter_mut(&mut self) -> impl Iterator<Item = &mut Table>[src]

Iterates over all tables in this section.

Trait Implementations

impl Debug for ModuleTables[src]

impl Default for ModuleTables[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.