Type Alias GParamSpecTypeInfo

Source
pub type GParamSpecTypeInfo = _GParamSpecTypeInfo;
Expand description

GParamSpecTypeInfo: @instance_size: Size of the instance (object) structure. @n_preallocs: Prior to GLib 2.10, it specified the number of pre-allocated (cached) instances to reserve memory for (0 indicates no caching). Since GLib 2.10, it is ignored, since instances are allocated with the [slice allocator][glib-Memory-Slices] now. @instance_init: Location of the instance initialization function (optional). @value_type: The #GType of values conforming to this #GParamSpec @finalize: The instance finalization function (optional). @value_set_default: Resets a @value to the default value for @pspec (recommended, the default is g_value_reset()), see g_param_value_set_default(). @value_validate: Ensures that the contents of @value comply with the specifications set out by @pspec (optional), see g_param_value_validate(). @values_cmp: Compares @value1 with @value2 according to @pspec (recommended, the default is memcmp()), see g_param_values_cmp().

This structure is used to provide the type system with the information required to initialize and destruct (finalize) a parameter’s class and instances thereof.

The initialized structure is passed to the g_param_type_register_static() The type system will perform a deep copy of this structure, so its memory does not need to be persistent across invocation of g_param_type_register_static().

Aliased Type§

struct GParamSpecTypeInfo {
    pub instance_size: u16,
    pub n_preallocs: u16,
    pub instance_init: Option<unsafe extern "C" fn(*mut _GParamSpec)>,
    pub value_type: u32,
    pub finalize: Option<unsafe extern "C" fn(*mut _GParamSpec)>,
    pub value_set_default: Option<unsafe extern "C" fn(*mut _GParamSpec, *mut _GValue)>,
    pub value_validate: Option<unsafe extern "C" fn(*mut _GParamSpec, *mut _GValue) -> i32>,
    pub values_cmp: Option<unsafe extern "C" fn(*mut _GParamSpec, *const _GValue, *const _GValue) -> i32>,
}

Fields§

§instance_size: u16§n_preallocs: u16§instance_init: Option<unsafe extern "C" fn(*mut _GParamSpec)>§value_type: u32§finalize: Option<unsafe extern "C" fn(*mut _GParamSpec)>§value_set_default: Option<unsafe extern "C" fn(*mut _GParamSpec, *mut _GValue)>§value_validate: Option<unsafe extern "C" fn(*mut _GParamSpec, *mut _GValue) -> i32>§values_cmp: Option<unsafe extern "C" fn(*mut _GParamSpec, *const _GValue, *const _GValue) -> i32>

Trait Implementations

Source§

impl Clone for _GParamSpecTypeInfo

Source§

fn clone(&self) -> _GParamSpecTypeInfo

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 _GParamSpecTypeInfo

Source§

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

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

impl PartialEq for _GParamSpecTypeInfo

Source§

fn eq(&self, other: &_GParamSpecTypeInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for _GParamSpecTypeInfo

Source§

impl Eq for _GParamSpecTypeInfo

Source§

impl StructuralPartialEq for _GParamSpecTypeInfo