Table

Table

data class Table

Runtime representation of a WebAssembly Table.

From the docs:

A table instance is the runtime representation of a table. It holds a vector of function elements and an optional maximum size, if one was specified in the table type at the table’s definition site.

Each function element is either empty, representing an uninitialized table entry, or a function address. Function elements can be mutated through the execution of an element segment or by external means provided by the embedder.


tableinst ::= {elem vec(funcelem), max u32?}
funcelem ::= funcaddr?

It is an invariant of the semantics that the length of the element vector never exceeds the maximum size, if present.

Fields

Name Description
val elements: Map<Int, Function?>
val maxSize: Int

Constructors

<init>

constructor(mutableElements: MutableMap<Int, Function?>, maxSize: Int)

Runtime representation of a WebAssembly Table.

From the docs:

A table instance is the runtime representation of a table. It holds a vector of function elements and an optional maximum size, if one was specified in the table type at the table’s definition site.

Each function element is either empty, representing an uninitialized table entry, or a function address. Function elements can be mutated through the execution of an element segment or by external means provided by the embedder.


tableinst ::= {elem vec(funcelem), max u32?}
funcelem ::= funcaddr?

It is an invariant of the semantics that the length of the element vector never exceeds the maximum size, if present.

Parameters

Name Description
mutableElements: MutableMap<Int, Function?>
maxSize: Int

Methods

addFunction

fun addFunction(position: Int, address: Function)

Adds a function address to the Table.

Parameters

Name Description
position: Int
address: Function

ReturnValue

Name Description
Unit