Table

Struct Table 

Source
pub struct Table(/* private fields */);
Expand description

A Wasm table.

Implementations§

Source§

impl Table

Source

pub fn new( store: &mut Store, type_: TableType, val: Ref, ) -> Result<Self, TableError>

Creates a new Table with the given TableType and initialization Ref in the given Store.

§Errors
  • If the RefType of the initialization Ref does not match the RefType of the elements in the Table to be created.
§Panics
  • If the TableType is invalid.
  • If the initialization Ref is not owned by the given Store.
Source

pub fn type_(self, store: &Store) -> TableType

Returns the TableType of this Table.

Source

pub fn get(self, store: &Store, idx: u32) -> Option<Ref>

Returns the element at the given index in this Table.

§Errors
  • If the access is out of bounds.
Source

pub fn set( self, store: &mut Store, idx: u32, val: Ref, ) -> Result<(), TableError>

Sets the element at the given index in this Table to the given Ref.

§Errors
  • If the access is out of bounds.
  • If the RefType of the given Ref does not match the RefType of the elements in this Table.
§Panics
  • If the given Ref is not owned by the given Store.
Source

pub fn size(&self, store: &Store) -> u32

Returns the size of this Table in number of elements.

Source

pub fn grow( self, store: &mut Store, val: Ref, count: u32, ) -> Result<(), TableError>

Grows this Table by the given number of elements with the given initialization Ref.

Returns the previous size of this Table in number of elements.

§Errors
  • If the RefType of the given initialization Ref does not match the RefType of the elements in this Table.
  • If this Table failed to grow.
§Panics
  • If the given initialization Ref is not owned by the given Store.

Trait Implementations§

Source§

impl Clone for Table

Source§

fn clone(&self) -> Table

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Table

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl From<Table> for ExternVal

Source§

fn from(table: Table) -> Self

Converts to this type from the input type.
Source§

impl Hash for Table

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for Table

Source§

fn eq(&self, other: &Table) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Table

Source§

impl Eq for Table

Source§

impl StructuralPartialEq for Table

Auto Trait Implementations§

§

impl Freeze for Table

§

impl !RefUnwindSafe for Table

§

impl !Send for Table

§

impl !Sync for Table

§

impl Unpin for Table

§

impl !UnwindSafe for Table

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.