[][src]Trait wasmer_runtime_core::typed_func::ExternalFunction

pub trait ExternalFunction<Kind, Args, Rets> where
    Kind: ExternalFunctionKind,
    Args: WasmTypeList,
    Rets: WasmTypeList
{ fn to_raw(&self) -> NonNull<Func>; }

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

Required methods

fn to_raw(&self) -> NonNull<Func>

Conver to function pointer.

Loading content...

Implementors

impl<A, B, C, D, E, F, G, H, I, J, K, L, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    K: WasmExternType,
    L: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G, H, I, J, K, L) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    K: WasmExternType,
    L: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    K: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G, H, I, J, K) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    K: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, J, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G, H, I, J), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G, H, I, J) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, J, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    J: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G, H, I), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G, H, I) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, I, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    I: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G, H), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G, H) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, H, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    H: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F, G), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F, G) -> Trap, 
[src]

impl<A, B, C, D, E, F, G, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F, G), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    G: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G) -> Trap, 
[src]

impl<A, B, C, D, E, F, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E, F), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E, F) -> Trap, 
[src]

impl<A, B, C, D, E, F, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E, F), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    F: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F) -> Trap, 
[src]

impl<A, B, C, D, E, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D, E), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D, E) -> Trap, 
[src]

impl<A, B, C, D, E, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D, E), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    E: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E) -> Trap, 
[src]

impl<A, B, C, D, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C, D), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C, D) -> Trap, 
[src]

impl<A, B, C, D, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C, D), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    D: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D) -> Trap, 
[src]

impl<A, B, C, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B, C), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B, C) -> Trap, 
[src]

impl<A, B, C, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B, C), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    C: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C) -> Trap, 
[src]

impl<A, B, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (A, B), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A, B) -> Trap, 
[src]

impl<A, B, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (A, B), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B) -> Trap, 
[src]

impl<A, Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, A, Rets> for FN where
    A: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx, A) -> Trap, 
[src]

impl<A, Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, A, Rets> for FN where
    A: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A) -> Trap, 
[src]

impl<Rets, Trap, FN> ExternalFunction<ExplicitVmCtx, (), Rets> for FN where
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(&mut Ctx) -> Trap, 
[src]

impl<Rets, Trap, FN> ExternalFunction<ImplicitVmCtx, (), Rets> for FN where
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn() -> Trap, 
[src]

Loading content...