Skip to main content

ReprC

Trait ReprC 

Source
pub trait ReprC {
    type C;
    type Error;

    // Required method
    unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>
       where Self: Sized;
}
Expand description

Trait to convert between FFI and Rust representations of types.

Required Associated Types§

Source

type C

C representation of the type.

Source

type Error

Error type.

Required Methods§

Source

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>
where Self: Sized,

Convert from a raw FFI type into a native Rust type by cloning the data.

§Safety

The implementation of this function may be unsafe, as repr_c may be a raw pointer that needs to be valid.

Implementations on Foreign Types§

Source§

impl ReprC for bool

Source§

type C = u32

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for i32

Source§

type C = i32

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for i64

Source§

type C = i64

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for u32

Source§

type C = u32

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for u64

Source§

type C = u64

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for usize

Source§

type C = usize

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for String

Source§

type C = *const u8

Source§

type Error = StringError

Source§

unsafe fn clone_from_repr_c(c_repr: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for [u8; 24]

Source§

type C = *const [u8; 24]

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for [u8; 32]

Source§

type C = *const [u8; 32]

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for [u8; 48]

Source§

type C = *const [u8; 48]

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for [u8; 64]

Source§

type C = *const [u8; 64]

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl ReprC for [u8; 96]

Source§

type C = *const [u8; 96]

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl<T> ReprC for *const T

Source§

type C = *const T

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Source§

impl<T> ReprC for *mut T

Source§

type C = *mut T

Source§

type Error = ()

Source§

unsafe fn clone_from_repr_c(repr_c: Self::C) -> Result<Self, Self::Error>

Implementors§