GParamSpecTypeInfo

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 gobject.global.paramTypeRegisterStatic The type system will perform a deep copy of this structure, so its memory does not need to be persistent across invocation of gobject.global.paramTypeRegisterStatic.

Members

Variables

finalize
void function(GParamSpec* pspec) finalize;

The instance finalization function (optional).

instanceInit
void function(GParamSpec* pspec) instanceInit;

Location of the instance initialization function (optional).

instanceSize
ushort instanceSize;

Size of the instance (object) structure.

nPreallocs
ushort nPreallocs;

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.

valueSetDefault
void function(GParamSpec* pspec, GValue* value) valueSetDefault;

Resets a @value to the default value for @pspec (recommended, the default is gobject.value.Value.reset), see gobject.global.paramValueSetDefault.

valueType
GType valueType;

The #GType of values conforming to this #GParamSpec

valueValidate
bool function(GParamSpec* pspec, GValue* value) valueValidate;

Ensures that the contents of @value comply with the specifications set out by @pspec (optional), see gobject.global.paramValueValidate.

valuesCmp
int function(GParamSpec* pspec, const(GValue)* value1, const(GValue)* value2) valuesCmp;

Compares @value1 with @value2 according to @pspec (recommended, the default is memcmp()), see gobject.global.paramValuesCmp.