pub unsafe trait ManagedFunctionPtr: FunctionPtr {
    type Args;
    type Output;

    const ARITY: usize;
}
Available on crate feature netcore3_0 only.
Expand description

Trait representing a managed function pointer.

§Safety

This trait should only be implemented for extern "system" function pointers and the associated types and constants have to match the function pointer type.

Required Associated Types§

source

type Args

The argument types as a tuple.

source

type Output

The return type.

Required Associated Constants§

source

const ARITY: usize

The function’s arity (number of arguments).

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<Ret: 'static> ManagedFunctionPtr for extern "system" fn() -> Ret

§

type Args = ()

§

type Output = Ret

source§

const ARITY: usize = 0usize

source§

impl<Ret: 'static> ManagedFunctionPtr for unsafe extern "system" fn() -> Ret

§

type Args = ()

§

type Output = Ret

source§

const ARITY: usize = 0usize

source§

impl<Ret: 'static, A: 'static> ManagedFunctionPtr for extern "system" fn(_: A) -> Ret

§

type Args = (A,)

§

type Output = Ret

source§

const ARITY: usize = 1usize

source§

impl<Ret: 'static, A: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A) -> Ret

§

type Args = (A,)

§

type Output = Ret

source§

const ARITY: usize = 1usize

source§

impl<Ret: 'static, A: 'static, B: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B) -> Ret

§

type Args = (A, B)

§

type Output = Ret

source§

const ARITY: usize = 2usize

source§

impl<Ret: 'static, A: 'static, B: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B) -> Ret

§

type Args = (A, B)

§

type Output = Ret

source§

const ARITY: usize = 2usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C) -> Ret

§

type Args = (A, B, C)

§

type Output = Ret

source§

const ARITY: usize = 3usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C) -> Ret

§

type Args = (A, B, C)

§

type Output = Ret

source§

const ARITY: usize = 3usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D) -> Ret

§

type Args = (A, B, C, D)

§

type Output = Ret

source§

const ARITY: usize = 4usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D) -> Ret

§

type Args = (A, B, C, D)

§

type Output = Ret

source§

const ARITY: usize = 4usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E) -> Ret

§

type Args = (A, B, C, D, E)

§

type Output = Ret

source§

const ARITY: usize = 5usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E) -> Ret

§

type Args = (A, B, C, D, E)

§

type Output = Ret

source§

const ARITY: usize = 5usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F) -> Ret

§

type Args = (A, B, C, D, E, F)

§

type Output = Ret

source§

const ARITY: usize = 6usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F) -> Ret

§

type Args = (A, B, C, D, E, F)

§

type Output = Ret

source§

const ARITY: usize = 6usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G) -> Ret

§

type Args = (A, B, C, D, E, F, G)

§

type Output = Ret

source§

const ARITY: usize = 7usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G) -> Ret

§

type Args = (A, B, C, D, E, F, G)

§

type Output = Ret

source§

const ARITY: usize = 7usize

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static, K: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static, K: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static, K: 'static, L: 'static> ManagedFunctionPtr for extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L) -> Ret

source§

impl<Ret: 'static, A: 'static, B: 'static, C: 'static, D: 'static, E: 'static, F: 'static, G: 'static, H: 'static, I: 'static, J: 'static, K: 'static, L: 'static> ManagedFunctionPtr for unsafe extern "system" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L) -> Ret

Implementors§