Trait interoptopus::lang::rust::CTypeInfo

source ยท
pub unsafe trait CTypeInfo {
    // Required method
    fn type_info() -> CType;
}
Expand description

Implemented for a type via ffi_type, gives meta info for a type.

ยงSafety

This trait must be implemented correctly, or else the generated bindings disagree in their type layout from the actual Rust type, leading to immediate UB upon function invocation.

Required Methodsยง

Object Safetyยง

This trait is not object safe.

Implementations on Foreign Typesยง

sourceยง

impl CTypeInfo for c_void

sourceยง

impl CTypeInfo for Option<NonZeroI8>

sourceยง

impl CTypeInfo for Option<NonZeroI16>

sourceยง

impl CTypeInfo for Option<NonZeroI32>

sourceยง

impl CTypeInfo for Option<NonZeroI64>

sourceยง

impl CTypeInfo for Option<NonZeroU8>

sourceยง

impl CTypeInfo for Option<NonZeroU16>

sourceยง

impl CTypeInfo for Option<NonZeroU32>

sourceยง

impl CTypeInfo for Option<NonZeroU64>

sourceยง

impl CTypeInfo for bool

sourceยง

impl CTypeInfo for f32

sourceยง

impl CTypeInfo for f64

sourceยง

impl CTypeInfo for i8

sourceยง

impl CTypeInfo for i16

sourceยง

impl CTypeInfo for i32

sourceยง

impl CTypeInfo for i64

sourceยง

impl CTypeInfo for u8

sourceยง

impl CTypeInfo for u16

sourceยง

impl CTypeInfo for u32

sourceยง

impl CTypeInfo for u64

sourceยง

impl CTypeInfo for ()

sourceยง

impl CTypeInfo for NonZeroI8

sourceยง

impl CTypeInfo for NonZeroI16

sourceยง

impl CTypeInfo for NonZeroI32

sourceยง

impl CTypeInfo for NonZeroI64

sourceยง

impl CTypeInfo for NonZeroU8

sourceยง

impl CTypeInfo for NonZeroU16

sourceยง

impl CTypeInfo for NonZeroU32

sourceยง

impl CTypeInfo for NonZeroU64

sourceยง

impl<'a, T1, R> CTypeInfo for Option<extern "C" fn(_: T1) -> R>
where T1: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, R> CTypeInfo for Option<extern "C" fn(_: T1, _: T2) -> R>
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, R> CTypeInfo for extern "C" fn(_: T1, _: T2) -> R
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, R> CTypeInfo for Option<extern "C" fn(_: T1, _: T2, _: T3) -> R>
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, R> CTypeInfo for extern "C" fn(_: T1, _: T2, _: T3) -> R
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, T4, R> CTypeInfo for Option<extern "C" fn(_: T1, _: T2, _: T3, _: T4) -> R>
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, T4: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, T4, R> CTypeInfo for extern "C" fn(_: T1, _: T2, _: T3, _: T4) -> R
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, T4: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, T4, T5, R> CTypeInfo for Option<extern "C" fn(_: T1, _: T2, _: T3, _: T4, _: T5) -> R>
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, T4: CTypeInfo + 'a, T5: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T1, T2, T3, T4, T5, R> CTypeInfo for extern "C" fn(_: T1, _: T2, _: T3, _: T4, _: T5) -> R
where T1: CTypeInfo + 'a, T2: CTypeInfo + 'a, T3: CTypeInfo + 'a, T4: CTypeInfo + 'a, T5: CTypeInfo + 'a, R: CTypeInfo + 'a,

sourceยง

impl<'a, T> CTypeInfo for Option<&'a T>
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<'a, T> CTypeInfo for Option<&'a mut T>
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<'a, T> CTypeInfo for &'a T
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<'a, T> CTypeInfo for &'a mut T
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<R> CTypeInfo for Option<extern "C" fn() -> R>
where R: CTypeInfo,

sourceยง

impl<R> CTypeInfo for extern "C" fn() -> R
where R: CTypeInfo,

sourceยง

impl<T1, R> CTypeInfo for extern "C" fn(_: T1) -> R
where T1: CTypeInfo, R: CTypeInfo,

sourceยง

impl<T> CTypeInfo for *const T
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<T> CTypeInfo for *mut T
where T: CTypeInfo + Sized + 'static,

sourceยง

impl<T> CTypeInfo for NonNull<T>
where T: CTypeInfo,

sourceยง

impl<T, const N: usize> CTypeInfo for [T; N]
where T: CTypeInfo,

Implementorsยง