Trait red4ext_rs::GlobalInvocable

source ·
pub trait GlobalInvocable<A, R>: Sealed<A, R> {
    const FN_TYPE: FunctionType;

    // Required method
    fn invoke(
        self,
        ctx: &IScriptable,
        frame: &mut StackFrame,
        ret: &mut MaybeUninit<R>,
    );
}
Expand description

A trait for functions that can be exported as global functions.

Required Associated Constants§

Required Methods§

source

fn invoke( self, ctx: &IScriptable, frame: &mut StackFrame, ret: &mut MaybeUninit<R>, )

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<A, B, C, D, E, F, G, R, FN> GlobalInvocable<(A, B, C, D, E, F, G), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B, C, D, E, F, G) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, C: FromRepr, C::Repr: Default, D: FromRepr, D::Repr: Default, E: FromRepr, E::Repr: Default, F: FromRepr, F::Repr: Default, G: FromRepr, G::Repr: Default, R: IntoRepr,

source§

impl<A, B, C, D, E, F, R, FN> GlobalInvocable<(A, B, C, D, E, F), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B, C, D, E, F) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, C: FromRepr, C::Repr: Default, D: FromRepr, D::Repr: Default, E: FromRepr, E::Repr: Default, F: FromRepr, F::Repr: Default, R: IntoRepr,

source§

impl<A, B, C, D, E, R, FN> GlobalInvocable<(A, B, C, D, E), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B, C, D, E) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, C: FromRepr, C::Repr: Default, D: FromRepr, D::Repr: Default, E: FromRepr, E::Repr: Default, R: IntoRepr,

source§

impl<A, B, C, D, R, FN> GlobalInvocable<(A, B, C, D), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B, C, D) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, C: FromRepr, C::Repr: Default, D: FromRepr, D::Repr: Default, R: IntoRepr,

source§

impl<A, B, C, R, FN> GlobalInvocable<(A, B, C), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B, C) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, C: FromRepr, C::Repr: Default, R: IntoRepr,

source§

impl<A, B, R, FN> GlobalInvocable<(A, B), <R as IntoRepr>::Repr> for FN
where FN: Fn(A, B) -> R, A: FromRepr, A::Repr: Default, B: FromRepr, B::Repr: Default, R: IntoRepr,

source§

impl<A, R, FN> GlobalInvocable<(A,), <R as IntoRepr>::Repr> for FN
where FN: Fn(A) -> R, A: FromRepr, A::Repr: Default, R: IntoRepr,

source§

impl<R, FN> GlobalInvocable<(), <R as IntoRepr>::Repr> for FN
where FN: Fn() -> R, R: IntoRepr,