Varargs Value Collection
Varargs Value Collection — Converting varargs to generic values
|
|
Includes
#include <glib-object.h>
#include <gobject/gvaluecollector.h>
Description
The macros in this section provide the varargs parsing support needed
in variadic GObject functions such as g_object_new() or g_object_set().
They currently support the collection of integral types, floating point
types and pointers.
Functions
G_VALUE_COLLECT_INIT()
#define G_VALUE_COLLECT_INIT(value, _value_type, var_args, flags, __error)
Collects a variable argument value from a va_list. We have to
implement the varargs collection as a macro, because on some systems
va_list variables cannot be passed by reference.
Since: 2.24
G_VALUE_COLLECT()
#define G_VALUE_COLLECT(value, var_args, flags, __error)
Collects a variable argument value from a va_list. We have to
implement the varargs collection as a macro, because on some systems
va_list variables cannot be passed by reference.
Note: If you are creating the value
argument just before calling this macro,
you should use the G_VALUE_COLLECT_INIT variant and pass the unitialized
GValue. That variant is faster than G_VALUE_COLLECT.
G_VALUE_COLLECT_SKIP()
#define G_VALUE_COLLECT_SKIP(_value_type, var_args)
Skip an argument of type _value_type
from var_args
.
G_VALUE_LCOPY()
#define G_VALUE_LCOPY(value, var_args, flags, __error)
Stores a value’s value into one or more argument locations from a va_list.
This is the inverse of G_VALUE_COLLECT().
Types and Values
GTypeCValue
A union holding one collected value.
G_VALUE_COLLECT_FORMAT_MAX_LENGTH
#define G_VALUE_COLLECT_FORMAT_MAX_LENGTH (8)
The maximal number of GTypeCValues which can be collected for a
single GValue.