FnPtr

Trait FnPtr 

Source
pub trait FnPtr:
    PartialEq
    + Eq
    + PartialOrd
    + Ord
    + Hash
    + Pointer
    + Debug
    + Clone
    + Copy
    + Send
    + Sync
    + Unpin
    + UnwindSafe
    + RefUnwindSafe
    + Sized {
    type Args;
    type Output;
    type ArityMarker: Arity;
    type SafetyMarker: Safety;
    type AbiMarker: Abi;

    const ARITY: usize;
    const IS_SAFE: bool;
    const IS_EXTERN: bool;
    const ABI: Abi;

    // Required methods
    fn as_ptr(&self) -> UntypedFnPtr;
    unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self;

    // Provided methods
    fn addr(&self) -> usize { ... }
    unsafe fn from_addr(addr: usize) -> Self { ... }
    fn as_unsafe(&self) -> <Self as WithSafety<Unsafe>>::F
       where Self: AsUnsafe { ... }
    unsafe fn as_safe(&self) -> <Self as WithSafety<Safe>>::F
       where Self: AsSafe { ... }
    unsafe fn with_abi<Abi: Abi>(&self) -> <Self as WithAbi<Abi>>::F
       where Self: WithAbi<Abi> { ... }
    unsafe fn with_safety<Safety: Safety>(
        &self,
    ) -> <Self as WithSafety<Safety>>::F
       where Self: WithSafety<Safety> { ... }
}
Expand description

Marker trait for all function pointers.

Required Associated Constants§

Source

const ARITY: usize

The function’s arity (number of arguments).

Source

const IS_SAFE: bool

Whether the function pointer is safe (fn) or unsafe (unsafe fn).

Source

const IS_EXTERN: bool

Whether the function pointer uses an extern calling convention.

Source

const ABI: Abi

The ABI associated with this function pointer.

Required Associated Types§

Source

type Args

The argument types as a tuple.

Source

type Output

The return type.

Source

type ArityMarker: Arity

Marker type denoting arity

Source

type SafetyMarker: Safety

Marker type denoting safety

Source

type AbiMarker: Abi

Marker type denoting abi

Required Methods§

Source

fn as_ptr(&self) -> UntypedFnPtr

Returns a untyped function pointer for this function.

Source

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Constructs an instance from an untyped function pointer.

§Safety

The given pointer has to point to a function of the correct type.

Provided Methods§

Source

fn addr(&self) -> usize

Returns the address of this function.

Source

unsafe fn from_addr(addr: usize) -> Self

Constructs an instance from an address.

§Safety

The given pointer has to point to a function of the correct type.

Source

fn as_unsafe(&self) -> <Self as WithSafety<Unsafe>>::F
where Self: AsUnsafe,

Produces an unsafe version of this function pointer.

Source

unsafe fn as_safe(&self) -> <Self as WithSafety<Safe>>::F
where Self: AsSafe,

Produces a safe version of this function pointer.

§Safety

Caller must ensure the underlying function is actually safe to call.

Source

unsafe fn with_abi<Abi: Abi>(&self) -> <Self as WithAbi<Abi>>::F
where Self: WithAbi<Abi>,

Produces a version of this function pointer with the given ABI.

§Safety

Caller must ensure that the resulting ABI transformation is sound.

Source

unsafe fn with_safety<Safety: Safety>(&self) -> <Self as WithSafety<Safety>>::F
where Self: WithSafety<Safety>,

Produces a version of this function pointer with the given safety.

§Safety

Caller must ensure that this function pointer is safe when casting to a safe function.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<Ret> FnPtr for fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "C" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "C-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "system" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "system-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "sysv64" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for extern "sysv64-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "C" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "C-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "system" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "system-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "sysv64" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret> FnPtr for unsafe extern "sysv64-unwind" fn() -> Ret

Source§

const ARITY: usize = 0usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = ()

Source§

type Output = Ret

Source§

type ArityMarker = A0

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "C" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "C-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "system" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "system-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "sysv64" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for extern "sysv64-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "C" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "C-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "system" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "system-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "sysv64" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A> FnPtr for unsafe extern "sysv64-unwind" fn(A) -> Ret

Source§

const ARITY: usize = 1usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A,)

Source§

type Output = Ret

Source§

type ArityMarker = A1

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "C" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "C-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "system" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "system-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "sysv64" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for extern "sysv64-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "C" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "C-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "system" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "system-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "sysv64" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B> FnPtr for unsafe extern "sysv64-unwind" fn(A, B) -> Ret

Source§

const ARITY: usize = 2usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B)

Source§

type Output = Ret

Source§

type ArityMarker = A2

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "C" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "C-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "system" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "system-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "sysv64" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for extern "sysv64-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "C" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "C-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "system" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "system-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "sysv64" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C> FnPtr for unsafe extern "sysv64-unwind" fn(A, B, C) -> Ret

Source§

const ARITY: usize = 3usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

type Args = (A, B, C)

Source§

type Output = Ret

Source§

type ArityMarker = A3

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "C" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "C-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "system" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "system-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "sysv64" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for extern "sysv64-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "C" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "C-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "system" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "system-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "sysv64" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D> FnPtr for unsafe extern "sysv64-unwind" fn(A, B, C, D) -> Ret

Source§

const ARITY: usize = 4usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A4

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "C" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "C-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "system" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "system-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "sysv64" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for extern "sysv64-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "C" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "C-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "system" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "system-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "sysv64" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E> FnPtr for unsafe extern "sysv64-unwind" fn(A, B, C, D, E) -> Ret

Source§

const ARITY: usize = 5usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A5

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "C" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "C-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "system" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "system-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "sysv64" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for extern "sysv64-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = true

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Safe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::Rust as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = false

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = Rust

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "C" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::C as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = C

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "C-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::CUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = CUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "system" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::System as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = System

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "system-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SystemUnwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SystemUnwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "sysv64" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64 as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Source§

impl<Ret, A, B, C, D, E, F> FnPtr for unsafe extern "sysv64-unwind" fn(A, B, C, D, E, F) -> Ret

Source§

const ARITY: usize = 6usize

Source§

const IS_SAFE: bool = false

Source§

const ABI: Abi = <crate::marker::SysV64Unwind as crate::marker::Abi>::VALUE

Source§

const IS_EXTERN: bool = true

Source§

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

Source§

type Output = Ret

Source§

type ArityMarker = A6

Source§

type SafetyMarker = Unsafe

Source§

type AbiMarker = SysV64Unwind

Source§

fn as_ptr(&self) -> UntypedFnPtr

Source§

unsafe fn from_ptr(ptr: UntypedFnPtr) -> Self

Implementors§