Enum libc::types::common::c95::c_void

source ·
#[repr(u8)]
pub enum c_void { // some variants omitted }
Expand description

Type used to construct void pointers for use with C.

This type is only useful as a pointer target. Do not use it as a return type for FFI functions which have the void return type in C. Use the unit type () or omit the return type instead.

For LLVM to recognize the void pointer type and by extension functions like malloc(), we need to have it represented as i8* in LLVM bitcode. The enum used here ensures this. We need two variants, because the compiler complains about the repr attribute otherwise.

Auto Trait Implementations§

§

impl Freeze for c_void

§

impl RefUnwindSafe for c_void

§

impl Send for c_void

§

impl Sync for c_void

§

impl Unpin for c_void

§

impl UnwindSafe for c_void

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.