[][src]Trait wasmer_runtime_core::typed_func::HostFunction

pub trait HostFunction<Kind, Args, Rets> where
    Kind: HostFunctionKind,
    Args: WasmTypeList,
    Rets: WasmTypeList
{ fn to_raw(self) -> (NonNull<Func>, Option<NonNull<FuncEnv>>); }

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>, Option<NonNull<FuncEnv>>)

Convert to function pointer.

Loading content...

Implementors

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    V: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    V: WasmExternType,
    W: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    V: WasmExternType,
    W: WasmExternType,
    X: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    V: WasmExternType,
    W: WasmExternType,
    X: WasmExternType,
    Y: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    R: WasmExternType,
    S: WasmExternType,
    T: WasmExternType,
    U: WasmExternType,
    V: WasmExternType,
    W: WasmExternType,
    X: WasmExternType,
    Y: WasmExternType,
    Z: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Q: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    P: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O), 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,
    M: WasmExternType,
    N: WasmExternType,
    O: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, N, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M, N), 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,
    M: WasmExternType,
    N: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M, N) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, M, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B, C, D, E, F, G, H, I, J, K, L, M), 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,
    M: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B, C, D, E, F, G, H, I, J, K, L, M) -> Trap + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, L, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, K, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, J, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, I, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, G, H, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, G, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, F, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, E, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, D, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, C, Rets, Trap, FN> HostFunction<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 + 'static + Send
[src]

impl<A, B, Rets, Trap, FN> HostFunction<ImplicitVmCtx, (A, B), Rets> for FN where
    A: WasmExternType,
    B: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A, B) -> Trap + 'static + Send
[src]

impl<A, Rets, Trap, FN> HostFunction<ImplicitVmCtx, A, Rets> for FN where
    A: WasmExternType,
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn(A) -> Trap + 'static + Send
[src]

impl<Rets, Trap, FN> HostFunction<ImplicitVmCtx, (), Rets> for FN where
    Rets: WasmTypeList,
    Trap: TrapEarly<Rets>,
    FN: Fn() -> Trap + 'static + Send
[src]

Loading content...