Struct wasmer_vm::LinearTable[][src]

pub struct LinearTable { /* fields omitted */ }

A table instance.

Implementations

impl LinearTable[src]

pub fn new(table: &TableType, style: &TableStyle) -> Result<Self, String>[src]

Create a new linear table instance with specified minimum and maximum number of elements.

This creates a LinearTable with metadata owned by a VM, pointed to by vm_table_location: this can be used to create a local table.

pub unsafe fn from_definition(
    table: &TableType,
    style: &TableStyle,
    vm_table_location: NonNull<VMTableDefinition>
) -> Result<Self, String>
[src]

Create a new linear table instance with specified minimum and maximum number of elements.

This creates a LinearTable with metadata owned by a VM, pointed to by vm_table_location: this can be used to create a local table.

Safety

  • vm_table_location must point to a valid location in VM memory.

Trait Implementations

impl Debug for LinearTable[src]

impl Send for LinearTable[src]

This is correct because there is no thread-specific data tied to this type.

impl Sync for LinearTable[src]

This is correct because all internal mutability is protected by a mutex.

impl Table for LinearTable[src]

fn ty(&self) -> &TableType[src]

Returns the type for this Table.

fn style(&self) -> &TableStyle[src]

Returns the style for this Table.

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

Returns the number of allocated elements.

fn grow(&self, delta: u32) -> Option<u32>[src]

Grow table by the specified amount of elements.

Returns None if table can't be grown by the specified amount of elements, otherwise returns the previous size of the table.

fn get(&self, index: u32) -> Option<VMCallerCheckedAnyfunc>[src]

Get reference to the specified element.

Returns None if the index is out of bounds.

fn set(&self, index: u32, func: VMCallerCheckedAnyfunc) -> Result<(), Trap>[src]

Set reference to the specified element.

Errors

Returns an error if the index is out of bounds.

fn vmtable(&self) -> NonNull<VMTableDefinition>[src]

Return a VMTableDefinition for exposing the table to compiled wasm code.

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.