Struct wasmi::TableInstance
source · [−]pub struct TableInstance { /* private fields */ }
Expand description
Runtime representation of a table.
A table is a array of untyped functions. It allows wasm code to call functions indirectly through a dynamic index into a table. For example, this allows emulating function pointers by way of table indices.
Table is created with an initial size but can be grown dynamically via grow
method.
Growth can be limited by an optional maximum size.
In future, a table might be extended to be able to hold not only functions but different types.
Implementations
Allocate a table instance.
The table allocated with initial size, specified by initial_size
.
Maximum size can be specified by maximum_size
.
All table elements are allocated uninitialized.
Errors
Returns Err
if initial_size
is greater than maximum_size
.
Returns size this table was created with.
Returns maximum size TableInstance
can grow to.
Returns current size of the table.
Increases the size of the table by given number of elements.
Errors
Returns Err
if tried to allocate more elements than permited by limit.
Get the specific value in the table
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for TableInstance
impl !Send for TableInstance
impl !Sync for TableInstance
impl Unpin for TableInstance
impl !UnwindSafe for TableInstance
Blanket Implementations
Mutably borrows from an owned value. Read more
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more