Method
GLibVariantget_va
since: 2.24
Declaration [src]
void
g_variant_get_va (
GVariant* value,
const gchar* format_string,
const gchar** endptr,
va_list* app
)
Description [src]
This function is intended to be used by libraries based on GVariant
that want to provide g_variant_get()-like functionality to their users.
The API is more general than g_variant_get()
to allow a wider range
of possible uses.
format_string
must still point to a valid format string, but it only
need to be nul-terminated if endptr
is NULL
. If endptr
is
non-NULL
then it is updated to point to the first character past the
end of the format string.
app
is a pointer to a #va_list. The arguments, according to
format_string
, are collected from this #va_list and the list is left
pointing to the argument following the last.
These two generalisations allow mixing of multiple calls to
g_variant_new_va()
and g_variant_get_va()
within a single actual
varargs call by the user.
format_string
determines the C types that are used for unpacking
the values and also determines if the values are copied or borrowed,
see the section on
GVariant
format strings.
Available since: 2.24
This method is not directly available to language bindings.
Parameters
format_string
-
Type:
const gchar*
A string that is prefixed with a format string.
The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. endptr
-
Type:
const gchar**
Location to store the end pointer, or
NULL
.The argument can be NULL
.The data is owned by the caller of the method. The value is a NUL terminated UTF-8 string. app
-
Type:
va_list*
A pointer to a #va_list.
The data is owned by the caller of the method.