Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
gvariant.h
Go to the documentation of this file.
1/*
2 * Copyright © 2007, 2008 Ryan Lortie
3 * Copyright © 2009, 2010 Codethink Limited
4 *
5 * SPDX-License-Identifier: LGPL-2.1-or-later
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
19 *
20 * Author: Ryan Lortie <desrt@desrt.ca>
21 */
22
23#ifndef __G_VARIANT_H__
24#define __G_VARIANT_H__
25
26#if !defined (__GLIB_H_INSIDE__) && !defined (GLIB_COMPILATION)
27#error "Only <glib.h> can be included directly."
28#endif
29
30#include <glib/gvarianttype.h>
31#include <glib/gstring.h>
32#include <glib/gbytes.h>
33
35
36typedef struct _GVariant GVariant;
37
59
70
77 const GVariantType *type);
107GVariant * g_variant_new_printf (const gchar *format_string,
108 ...) G_GNUC_PRINTF (1, 2);
120GVariant * g_variant_new_strv (const gchar * const *strv,
121 gssize length);
123GVariant * g_variant_new_objv (const gchar * const *strv,
124 gssize length);
129 gssize length);
132 gconstpointer elements,
133 gsize n_elements,
134 gsize element_size);
159 gsize *length);
162 gsize *length);
165 gsize *length);
168 gsize *length);
171 gsize *length);
174 gsize *length);
179 gsize *length);
182 gsize *length);
185 gsize *length);
186
189 GVariant *child);
192 GVariant * const *children,
193 gsize n_children);
196 gsize n_children);
199 GVariant *value);
200
207 gsize index_,
208 const gchar *format_string,
209 ...);
212 gsize index_);
215 const gchar *key,
216 const gchar *format_string,
217 ...);
220 const gchar *key,
221 const GVariantType *expected_type);
224 gsize *n_elements,
225 gsize element_size);
226
235 gpointer data);
236
239 gboolean type_annotate);
242 GString *string,
243 gboolean type_annotate);
244
249 gconstpointer two);
250
257
260 GBytes *bytes,
261 gboolean trusted);
264 gconstpointer data,
265 gsize size,
266 gboolean trusted,
267 GDestroyNotify notify,
268 gpointer user_data);
269
272 /*< private >*/
273 guintptr x[16];
274};
275
280 GVariant *value);
291 const gchar *format_string,
292 ...);
295 const gchar *format_string,
296 ...);
297
298
301 /*< private >*/
302 union
303 {
304 struct {
308 } s;
310 } u;
311};
312
335#define G_VARIANT_PARSE_ERROR (g_variant_parse_error_quark ())
336
339
342
343/**
344 * G_VARIANT_BUILDER_INIT:
345 * @variant_type: a const GVariantType*
346 *
347 * A stack-allocated #GVariantBuilder must be initialized if it is
348 * used together with g_auto() to avoid warnings or crashes if
349 * function returns before g_variant_builder_init() is called on the
350 * builder.
351 *
352 * This macro can be used as initializer instead of an
353 * explicit zeroing a variable when declaring it and a following
354 * g_variant_builder_init(), but it cannot be assigned to a variable.
355 *
356 * The passed @variant_type should be a static GVariantType to avoid
357 * lifetime issues, as copying the @variant_type does not happen in
358 * the G_VARIANT_BUILDER_INIT() call, but rather in functions that
359 * make sure that #GVariantBuilder is valid.
360 *
361 * |[<!-- language="C" -->
362 * g_auto(GVariantBuilder) builder = G_VARIANT_BUILDER_INIT (G_VARIANT_TYPE_BYTESTRING);
363 * ]|
364 *
365 * Since: 2.50
366 */
367#define G_VARIANT_BUILDER_INIT(variant_type) \
368 { \
369 { \
370 { \
371 2942751021u /* == GVSB_MAGIC_PARTIAL, see gvariant.c */, variant_type, { 0, } \
372 } \
373 } \
374 }
375
384 const GVariantType *type);
391 const GVariantType *type);
396 GVariant *value);
399 const gchar *format_string,
400 ...);
403 const gchar *format,
404 ...);
405
407GVariant * g_variant_new (const gchar *format_string,
408 ...);
411 const gchar *format_string,
412 ...);
414GVariant * g_variant_new_va (const gchar *format_string,
415 const gchar **endptr,
416 va_list *app);
419 const gchar *format_string,
420 const gchar **endptr,
421 va_list *app);
424 const gchar *format_string,
425 gboolean copy_only);
426
429 const gchar *text,
430 const gchar *limit,
431 const gchar **endptr,
432 GError **error);
435 ...);
438 va_list *app);
439
442 const gchar *source_str);
443
446 gconstpointer two);
447
450 /*< private >*/
451 union
452 {
453 struct {
457 } s;
459 } u;
460};
461
462/**
463 * G_VARIANT_DICT_INIT:
464 * @asv: (nullable): a GVariant*
465 *
466 * A stack-allocated #GVariantDict must be initialized if it is used
467 * together with g_auto() to avoid warnings or crashes if function
468 * returns before g_variant_dict_init() is called on the builder.
469 *
470 * This macro can be used as initializer instead of an explicit
471 * zeroing a variable when declaring it and a following
472 * g_variant_dict_init(), but it cannot be assigned to a variable.
473 *
474 * The passed @asv has to live long enough for #GVariantDict to gather
475 * the entries from, as the gathering does not happen in the
476 * G_VARIANT_DICT_INIT() call, but rather in functions that make sure
477 * that #GVariantDict is valid. In context where the initialization
478 * value has to be a constant expression, the only possible value of
479 * @asv is %NULL. It is still possible to call g_variant_dict_init()
480 * safely with a different @asv right after the variable was
481 * initialized with G_VARIANT_DICT_INIT().
482 *
483 * |[<!-- language="C" -->
484 * g_autoptr(GVariant) variant = get_asv_variant ();
485 * g_auto(GVariantDict) dict = G_VARIANT_DICT_INIT (variant);
486 * ]|
487 *
488 * Since: 2.50
489 */
490#define G_VARIANT_DICT_INIT(asv) \
491 { \
492 { \
493 { \
494 asv, 3488698669u /* == GVSD_MAGIC_PARTIAL, see gvariant.c */, { 0, } \
495 } \
496 } \
497 }
498
501
504 GVariant *from_asv);
505
508 const gchar *key,
509 const gchar *format_string,
510 ...);
513 const gchar *key,
514 const GVariantType *expected_type);
517 const gchar *key);
520 const gchar *key,
521 const gchar *format_string,
522 ...);
525 const gchar *key,
526 GVariant *value);
529 const gchar *key);
538
540
541#endif /* __G_VARIANT_H__ */
typedefG_BEGIN_DECLS struct _GBytes GBytes
Definition garray.h:38
#define GLIB_AVAILABLE_IN_2_34
#define GLIB_AVAILABLE_IN_2_36
#define GLIB_AVAILABLE_IN_2_40
#define GLIB_AVAILABLE_IN_2_30
#define GLIB_AVAILABLE_IN_2_38
#define GLIB_AVAILABLE_IN_ALL
#define GLIB_DEPRECATED_IN_2_38_FOR(f)
unsigned long guint64
Definition glibconfig.h:67
signed long gint64
Definition glibconfig.h:66
unsigned int guint32
Definition glibconfig.h:57
signed short gint16
Definition glibconfig.h:48
unsigned short guint16
Definition glibconfig.h:49
signed long gssize
Definition glibconfig.h:82
unsigned char guint8
Definition glibconfig.h:46
unsigned long gsize
Definition glibconfig.h:83
unsigned long guintptr
Definition glibconfig.h:110
signed int gint32
Definition glibconfig.h:56
#define G_END_DECLS
Definition gmacros.h:910
#define G_GNUC_PRINTF(format_idx, arg_idx)
Definition gmacros.h:608
#define G_BEGIN_DECLS
Definition gmacros.h:909
G_BEGIN_DECLS typedef guint32 GQuark
Definition gquark.h:38
typedefG_BEGIN_DECLS struct _GString GString
Definition gstring.h:43
gint gboolean
Definition gtypes.h:56
G_BEGIN_DECLS typedef char gchar
Definition gtypes.h:52
void * gpointer
Definition gtypes.h:109
int gint
Definition gtypes.h:55
const void * gconstpointer
Definition gtypes.h:110
double gdouble
Definition gtypes.h:64
void(* GDestroyNotify)(gpointer data)
Definition gtypes.h:140
unsigned int guint
Definition gtypes.h:61
GLIB_AVAILABLE_IN_2_38 GVariant * g_variant_new_take_string(gchar *string)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_byte(guint8 value)
GLIB_AVAILABLE_IN_ALL gint16 g_variant_get_int16(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_string(const gchar *string)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_parsed(const gchar *format,...)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_ref(GVariant *value)
GLIB_AVAILABLE_IN_2_36 GBytes * g_variant_get_data_as_bytes(GVariant *value)
GLIB_AVAILABLE_IN_ALL gconstpointer g_variant_get_fixed_array(GVariant *value, gsize *n_elements, gsize element_size)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_get_normal_form(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_parsed_va(const gchar *format, va_list *app)
GLIB_AVAILABLE_IN_2_40 void g_variant_dict_insert_value(GVariantDict *dict, const gchar *key, GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_handle(gint32 value)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_close(GVariantBuilder *builder)
GLIB_AVAILABLE_IN_2_40 void g_variant_dict_unref(GVariantDict *dict)
GLIB_AVAILABLE_IN_2_38 GVariant * g_variant_new_printf(const gchar *format_string,...) G_GNUC_PRINTF(1
GLIB_AVAILABLE_IN_ALL guint32 g_variant_get_uint32(GVariant *value)
GLIB_AVAILABLE_IN_ALL const gchar ** g_variant_get_bytestring_array(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL gchar * g_variant_dup_bytestring(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_2_40 void g_variant_dict_clear(GVariantDict *dict)
GLIB_AVAILABLE_IN_ALL gsize g_variant_iter_n_children(GVariantIter *iter)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_uint64(guint64 value)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_of_type(GVariant *value, const GVariantType *type)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_parse(const GVariantType *type, const gchar *text, const gchar *limit, const gchar **endptr, GError **error)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_variant(GVariant *value)
GLIB_AVAILABLE_IN_2_40 void g_variant_dict_init(GVariantDict *dict, GVariant *from_asv)
GVariantClass
Definition gvariant.h:39
@ G_VARIANT_CLASS_BOOLEAN
Definition gvariant.h:40
@ G_VARIANT_CLASS_INT32
Definition gvariant.h:44
@ G_VARIANT_CLASS_SIGNATURE
Definition gvariant.h:52
@ G_VARIANT_CLASS_OBJECT_PATH
Definition gvariant.h:51
@ G_VARIANT_CLASS_MAYBE
Definition gvariant.h:54
@ G_VARIANT_CLASS_STRING
Definition gvariant.h:50
@ G_VARIANT_CLASS_INT16
Definition gvariant.h:42
@ G_VARIANT_CLASS_ARRAY
Definition gvariant.h:55
@ G_VARIANT_CLASS_HANDLE
Definition gvariant.h:48
@ G_VARIANT_CLASS_DOUBLE
Definition gvariant.h:49
@ G_VARIANT_CLASS_UINT32
Definition gvariant.h:45
@ G_VARIANT_CLASS_TUPLE
Definition gvariant.h:56
@ G_VARIANT_CLASS_BYTE
Definition gvariant.h:41
@ G_VARIANT_CLASS_UINT16
Definition gvariant.h:43
@ G_VARIANT_CLASS_VARIANT
Definition gvariant.h:53
@ G_VARIANT_CLASS_INT64
Definition gvariant.h:46
@ G_VARIANT_CLASS_DICT_ENTRY
Definition gvariant.h:57
@ G_VARIANT_CLASS_UINT64
Definition gvariant.h:47
GLIB_AVAILABLE_IN_2_30 const gchar ** g_variant_get_objv(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_iter_next(GVariantIter *iter, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_floating(GVariant *value)
GLIB_AVAILABLE_IN_2_40 GVariantDict * g_variant_dict_new(GVariant *from_asv)
GLIB_AVAILABLE_IN_ALL guint16 g_variant_get_uint16(GVariant *value)
typedefG_BEGIN_DECLS struct _GVariant GVariant
Definition gvariant.h:36
GLIB_AVAILABLE_IN_ALL void g_variant_get(GVariant *value, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_get_boolean(GVariant *value)
GLIB_AVAILABLE_IN_ALL const gchar * g_variant_get_bytestring(GVariant *value)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_object_path(const gchar *string)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_tuple(GVariant *const *children, gsize n_children)
GLIB_AVAILABLE_IN_ALL GVariantBuilder * g_variant_builder_new(const GVariantType *type)
GLIB_AVAILABLE_IN_ALL gsize g_variant_get_size(GVariant *value)
GLIB_AVAILABLE_IN_ALL void g_variant_store(GVariant *value, gpointer data)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_int16(gint16 value)
GLIB_AVAILABLE_IN_ALL gchar * g_variant_print(GVariant *value, gboolean type_annotate)
GLIB_AVAILABLE_IN_ALL gchar ** g_variant_dup_bytestring_array(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_lookup_value(GVariant *dictionary, const gchar *key, const GVariantType *expected_type)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_boolean(gboolean value)
GLIB_AVAILABLE_IN_ALL gconstpointer g_variant_get_data(GVariant *value)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_normal_form(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_uint16(guint16 value)
GLIB_AVAILABLE_IN_ALL gsize g_variant_n_children(GVariant *value)
GLIB_AVAILABLE_IN_ALL void g_variant_get_va(GVariant *value, const gchar *format_string, const gchar **endptr, va_list *app)
GLIB_AVAILABLE_IN_ALL guint8 g_variant_get_byte(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_iter_next_value(GVariantIter *iter)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_maybe(const GVariantType *child_type, GVariant *child)
GLIB_AVAILABLE_IN_ALL gint32 g_variant_get_int32(GVariant *value)
GLIB_AVAILABLE_IN_ALL void g_variant_unref(GVariant *value)
GLIB_AVAILABLE_IN_2_40 gboolean g_variant_dict_contains(GVariantDict *dict, const gchar *key)
GLIB_AVAILABLE_IN_ALL gint32 g_variant_get_handle(GVariant *value)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_open(GVariantBuilder *builder, const GVariantType *type)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_fixed_array(const GVariantType *element_type, gconstpointer elements, gsize n_elements, gsize element_size)
GLIB_AVAILABLE_IN_ALL gchar * g_variant_dup_string(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_lookup(GVariant *dictionary, const gchar *key, const gchar *format_string,...)
GLIB_AVAILABLE_IN_2_36 GVariant * g_variant_new_from_bytes(const GVariantType *type, GBytes *bytes, gboolean trusted)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_get_child_value(GVariant *value, gsize index_)
GLIB_AVAILABLE_IN_ALL GQuark g_variant_parse_error_quark(void)
GLIB_AVAILABLE_IN_2_40 GVariant * g_variant_dict_end(GVariantDict *dict)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_equal(gconstpointer one, gconstpointer two)
GLIB_AVAILABLE_IN_2_40 GVariant * g_variant_dict_lookup_value(GVariantDict *dict, const gchar *key, const GVariantType *expected_type)
GLIB_AVAILABLE_IN_ALL gint64 g_variant_get_int64(GVariant *value)
GLIB_AVAILABLE_IN_ALL gsize g_variant_iter_init(GVariantIter *iter, GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_int64(gint64 value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_builder_end(GVariantBuilder *builder)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_array(const GVariantType *child_type, GVariant *const *children, gsize n_children)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_bytestring_array(const gchar *const *strv, gssize length)
GLIB_AVAILABLE_IN_ALL void g_variant_iter_free(GVariantIter *iter)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_signature(const gchar *string)
GQuark g_variant_parser_get_error_quark(void)
GLIB_AVAILABLE_IN_2_40 GVariantDict * g_variant_dict_ref(GVariantDict *dict)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_add(GVariantBuilder *builder, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL GVariantClass g_variant_classify(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_byteswap(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariantIter * g_variant_iter_new(GVariant *value)
GLIB_AVAILABLE_IN_ALL gint g_variant_compare(gconstpointer one, gconstpointer two)
GLIB_AVAILABLE_IN_2_34 gboolean g_variant_check_format_string(GVariant *value, const gchar *format_string, gboolean copy_only)
GLIB_AVAILABLE_IN_ALL guint64 g_variant_get_uint64(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_bytestring(const gchar *string)
GLIB_AVAILABLE_IN_ALL gdouble g_variant_get_double(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_from_data(const GVariantType *type, gconstpointer data, gsize size, gboolean trusted, GDestroyNotify notify, gpointer user_data)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_double(gdouble value)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_unref(GVariantBuilder *builder)
GLIB_AVAILABLE_IN_2_40 gboolean g_variant_dict_lookup(GVariantDict *dict, const gchar *key, const gchar *format_string,...)
GLIB_AVAILABLE_IN_2_38 GVariant GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_object_path(const gchar *object_path)
GVariantParseError
Definition gvariant.h:314
@ G_VARIANT_PARSE_ERROR_INVALID_FORMAT_STRING
Definition gvariant.h:321
@ G_VARIANT_PARSE_ERROR_RECURSION
Definition gvariant.h:333
@ G_VARIANT_PARSE_ERROR_BASIC_TYPE_EXPECTED
Definition gvariant.h:316
@ G_VARIANT_PARSE_ERROR_FAILED
Definition gvariant.h:315
@ G_VARIANT_PARSE_ERROR_UNEXPECTED_TOKEN
Definition gvariant.h:329
@ G_VARIANT_PARSE_ERROR_VALUE_EXPECTED
Definition gvariant.h:332
@ G_VARIANT_PARSE_ERROR_INVALID_TYPE_STRING
Definition gvariant.h:324
@ G_VARIANT_PARSE_ERROR_INPUT_NOT_AT_END
Definition gvariant.h:319
@ G_VARIANT_PARSE_ERROR_DEFINITE_TYPE_EXPECTED
Definition gvariant.h:318
@ G_VARIANT_PARSE_ERROR_CANNOT_INFER_TYPE
Definition gvariant.h:317
@ G_VARIANT_PARSE_ERROR_UNKNOWN_KEYWORD
Definition gvariant.h:330
@ G_VARIANT_PARSE_ERROR_NUMBER_TOO_BIG
Definition gvariant.h:327
@ G_VARIANT_PARSE_ERROR_NO_COMMON_TYPE
Definition gvariant.h:325
@ G_VARIANT_PARSE_ERROR_INVALID_SIGNATURE
Definition gvariant.h:323
@ G_VARIANT_PARSE_ERROR_UNTERMINATED_STRING_CONSTANT
Definition gvariant.h:331
@ G_VARIANT_PARSE_ERROR_NUMBER_OUT_OF_RANGE
Definition gvariant.h:326
@ G_VARIANT_PARSE_ERROR_TYPE_ERROR
Definition gvariant.h:328
@ G_VARIANT_PARSE_ERROR_INVALID_CHARACTER
Definition gvariant.h:320
@ G_VARIANT_PARSE_ERROR_INVALID_OBJECT_PATH
Definition gvariant.h:322
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_dict_entry(GVariant *key, GVariant *value)
GLIB_AVAILABLE_IN_2_40 gchar * g_variant_parse_error_print_context(GError *error, const gchar *source_str)
GLIB_AVAILABLE_IN_ALL gchar ** g_variant_dup_objv(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_ref_sink(GVariant *value)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_is_container(GVariant *value)
GLIB_AVAILABLE_IN_ALL const gchar * g_variant_get_string(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL gboolean g_variant_iter_loop(GVariantIter *iter, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL GVariantIter * g_variant_iter_copy(GVariantIter *iter)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_int32(gint32 value)
GLIB_AVAILABLE_IN_ALL const gchar ** g_variant_get_strv(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_2_40 void g_variant_dict_insert(GVariantDict *dict, const gchar *key, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL GVariantBuilder * g_variant_builder_ref(GVariantBuilder *builder)
GLIB_AVAILABLE_IN_ALL void g_variant_get_child(GVariant *value, gsize index_, const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_add_parsed(GVariantBuilder *builder, const gchar *format,...)
GLIB_AVAILABLE_IN_ALL const GVariantType * g_variant_get_type(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_get_maybe(GVariant *value)
GLIB_AVAILABLE_IN_2_30 GVariant * g_variant_new_objv(const gchar *const *strv, gssize length)
GLIB_AVAILABLE_IN_ALL GString * g_variant_print_string(GVariant *value, GString *string, gboolean type_annotate)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_strv(const gchar *const *strv, gssize length)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_va(const gchar *format_string, const gchar **endptr, va_list *app)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_clear(GVariantBuilder *builder)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_uint32(guint32 value)
GLIB_AVAILABLE_IN_ALL gchar ** g_variant_dup_strv(GVariant *value, gsize *length)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new_signature(const gchar *signature)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_init(GVariantBuilder *builder, const GVariantType *type)
GLIB_AVAILABLE_IN_ALL guint g_variant_hash(gconstpointer value)
GLIB_AVAILABLE_IN_ALL void g_variant_builder_add_value(GVariantBuilder *builder, GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_take_ref(GVariant *value)
GLIB_AVAILABLE_IN_2_40 gboolean g_variant_dict_remove(GVariantDict *dict, const gchar *key)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_get_variant(GVariant *value)
GLIB_AVAILABLE_IN_ALL GVariant * g_variant_new(const gchar *format_string,...)
GLIB_AVAILABLE_IN_ALL const gchar * g_variant_get_type_string(GVariant *value)
typedefG_BEGIN_DECLS struct _GVariantType GVariantType
json_t format(printf, 1, 2)))
int value
Definition lsqlite3.c:2155
static void error(LoadState *S, const char *why)
union _GVariantBuilder::@142 u
guintptr x[16]
Definition gvariant.h:309
const GVariantType * type
Definition gvariant.h:306
guintptr y[14]
Definition gvariant.h:307
gsize partial_magic
Definition gvariant.h:305
struct _GVariantBuilder::@142::@143 s
gsize partial_magic
Definition gvariant.h:455
GVariant * asv
Definition gvariant.h:454
guintptr y[14]
Definition gvariant.h:456
struct _GVariantDict::@144::@145 s
guintptr x[16]
Definition gvariant.h:458
union _GVariantDict::@144 u