Varargs Value Collection
Converting varargs to generic values
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.
#GValueTable
A union holding one collected value.
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.
@value: a #GValue return location. @value is supposed to be initialized
according to the value type to be collected
@var_args: the va_list variable; it may be evaluated multiple times
@flags: flags which are passed on to the collect_value() function of
the #GTypeValueTable of @value.
@__error: a #gchar** variable that will be modified to hold a g_new()
allocated error messages if something fails
Collects a value's variable argument locations from a va_list.
@value: a #GValue return location. @value is supposed to be initialized
according to the value type to be collected
@var_args: the va_list variable; it may be evaluated multiple times
@flags: flags which are passed on to the lcopy_value() function of
the #GTypeValueTable of @value.
@__error: a #gchar** variable that will be modified to hold a g_new()
allocated error messages if something fails
The maximal number of #GTypeCValues which can be collected for a
single #GValue.