foreign_types_shared

Trait ForeignType

source
pub trait ForeignType: Sized {
    type CType;
    type Ref: ForeignTypeRef<CType = Self::CType>;

    // Required methods
    unsafe fn from_ptr(ptr: *mut Self::CType) -> Self;
    fn as_ptr(&self) -> *mut Self::CType;
}
Expand description

A type implemented by wrappers over foreign types.

Required Associated Types§

source

type CType

The raw C type.

source

type Ref: ForeignTypeRef<CType = Self::CType>

The type representing a reference to this type.

Required Methods§

source

unsafe fn from_ptr(ptr: *mut Self::CType) -> Self

Constructs an instance of this type from its raw type.

source

fn as_ptr(&self) -> *mut Self::CType

Returns a raw pointer to the wrapped value.

Object Safety§

This trait is not object safe.

Implementors§