Struct H_HANDLE_TYPE

Source
#[repr(C)]
pub struct H_HANDLE_TYPE { pub type_id: INT4_8, pub sem_type: *const c_char, pub cb_serialize: HHandleSerializeFunc, pub cb_deserialize: HHandleDeserializeFunc, pub header: *const c_char, pub cb_clear: HHandleDestructorFunc, pub cb_signal: HHandleSignalFunc, pub list: *mut HhandleListT, }
Expand description

/ /** HHandleInfo holds handle type information.

This structure exists once per handle type (usually per sem_type). It contains basic, static, constant information about that type. Most notably, it contains pointers to the functions that operate on the handles (clear, serialize, deserialize and signal).

Handles (instances) of types where the cb_signal callback is not NULL are stored in a list that allows calling the signal callback for each of them.

All serialized items must have a unique header, usually a string, that identifies them. ‘header’ contains a pointer to that header, allowing other functions to identify a serialized item based on its header. If no (de)serialization function is set, header must be NULL.

\ingroup data_structures_handles

Fields§

§type_id: INT4_8

< Type ID

§sem_type: *const c_char

< sem_type of the handle

§cb_serialize: HHandleSerializeFunc

< Serialize this handle type

§cb_deserialize: HHandleDeserializeFunc

< Deserialize this handle type

§header: *const c_char

< Serialization header

§cb_clear: HHandleDestructorFunc

< Clear this handle type

§cb_signal: HHandleSignalFunc

< Signal (for semaphores etc.)

§list: *mut HhandleListT

< List of handles, or NULL

Trait Implementations§

Source§

impl Clone for H_HANDLE_TYPE

Source§

fn clone(&self) -> H_HANDLE_TYPE

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for H_HANDLE_TYPE

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for H_HANDLE_TYPE

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.