[][src]Module wasmer_runtime_core::typed_func

The typed func module implements a way of representing a wasm function with the correct types from rust. Function calls using a typed func have a low overhead.

Structs

ExplicitVmCtx

This empty structure indicates that an external function must contain an explicit vm::Ctx argument (at first position).

Func

Represents a function that can be used by WebAssembly.

Host

This type, as part of the Func type signature, represents a function that is created by the host.

ImplicitVmCtx

This empty structure indicates that an external function has no vm::Ctx argument (at first position). Its signature is:

S0

Struct for typed funcs.

S1

Struct for typed funcs.

S2

Struct for typed funcs.

S3

Struct for typed funcs.

S4

Struct for typed funcs.

S5

Struct for typed funcs.

S6

Struct for typed funcs.

S7

Struct for typed funcs.

S8

Struct for typed funcs.

S9

Struct for typed funcs.

S10

Struct for typed funcs.

S11

Struct for typed funcs.

S12

Struct for typed funcs.

Wasm

TODO(lachlan): Naming TBD. This contains the trampoline and invoke functions for a specific signature, as well as the environment that the invoke function may or may not require.

Enums

WasmTrapInfo

Wasm trap info.

Traits

ExternalFunction

Represents a function that can be converted to a vm::Func (function pointer) that can be called within WebAssembly.

ExternalFunctionKind

Empty trait to specify the kind of ExternalFunction: With or without a vm::Ctx argument. See the ExplicitVmCtx and the ImplicitVmCtx structures.

Kind

This is just an empty trait to constrict that types that can be put into the third/fourth (depending if you include lifetimes) of the Func struct.

TrapEarly

Represents a TrapEarly type.

WasmTypeList

Represents a list of WebAssembly values.

Type Definitions

Invoke

Aliases to an extern "C" type used to invoke a function.

Trampoline

Aliases to an extern "C" type used as a trampoline to a function.