Top |
GSignondDictionaryGSignondDictionary — a dictionary container holding string keys and variant values |
GSignondDictionary * | gsignond_dictionary_new () |
GSignondDictionary * | gsignond_dictionary_copy () |
GSignondDictionary * | gsignond_dictionary_new_from_variant () |
GVariant * | gsignond_dictionary_to_variant () |
GVariantBuilder * | gsignond_dictionary_to_variant_builder () |
GVariant * | gsignond_dictionary_get () |
gboolean | gsignond_dictionary_set () |
gboolean | gsignond_dictionary_get_boolean () |
gboolean | gsignond_dictionary_set_boolean () |
gboolean | gsignond_dictionary_get_int32 () |
gboolean | gsignond_dictionary_set_int32 () |
gboolean | gsignond_dictionary_get_uint32 () |
gboolean | gsignond_dictionary_set_uint32 () |
gboolean | gsignond_dictionary_get_int64 () |
gboolean | gsignond_dictionary_set_int64 () |
gboolean | gsignond_dictionary_get_uint64 () |
gboolean | gsignond_dictionary_set_uint64 () |
const gchar * | gsignond_dictionary_get_string () |
gboolean | gsignond_dictionary_set_string () |
gboolean | gsignond_dictionary_remove () |
gboolean | gsignond_dictionary_contains () |
GHashTable * | gsignond_dictionary_get_table () |
A GSignondDictionary is a dictionary data structure that maps string keys to GVariant values. It's used in multiple places in gsignond and its public API to pass key-value data sets.
1 2 3 4 5 6 7 |
gsignond_dictionary_set_string(dict, "name", "John Smith"); gsignond_dictionary_set_uint32(dict, "age", 32); guint32 age; gboolean success = gsignond_dictionary_get_uint32(dict, "age", &age); const gchar* name = gsignond_dictionary_get_string(dict, "name"); g_object_unref(dict); |
GSignondDictionary *
gsignond_dictionary_new (void
);
Creates a new instance of GSignondDictionary.
GSignondDictionary *
gsignond_dictionary_copy (GSignondDictionary *other
);
Creates a copy of the dictionary.
GSignondDictionary *
gsignond_dictionary_new_from_variant (GVariant *variant
);
Converts the GVariant to GSignondDictionary. This is useful for example if
the dictionary needs to be deserialized, or if it's contained in another
GSignondDictionary and has been retrieved using gsignond_dictionary_get()
.
GVariant *
gsignond_dictionary_to_variant (GSignondDictionary *dict
);
Converts the GSignondDictionary to a GVariant. The result can be serialized
or put into another GSignondDictionary using gsignond_dictionary_set()
.
GVariantBuilder *
gsignond_dictionary_to_variant_builder
(GSignondDictionary *dict
);
Converts the GSignondDictionary to a GVariantBuilder of type G_VARIANT_TYPE_VARDICT.
Caller should use g_variant_builder_unref()
on the return value when it is
no longer needed.
GVariant * gsignond_dictionary_get (GSignondDictionary *dict
,const gchar *key
);
Retrieves a GVariant value from the dictionary. This can be used to retrieve
a value of an arbitrary type, and then convert it manually to a specific type
using GVariant methods. For most commonly used types, also getters that
return the specific type directly are provided (gsignond_dictionary_get_string()
and similar).
gboolean gsignond_dictionary_set (GSignondDictionary *dict
,const gchar *key
,GVariant *value
);
Adds or replaces key-value pair in the dictionary. This allows to set a value of an arbitrary type: it first needs to be converted to a GVariant. For most commonly used types also type-specific setters are provided.
gboolean gsignond_dictionary_get_boolean (GSignondDictionary *dict
,const gchar *key
,gboolean *value
);
Retrieves a gboolean value.
dict |
instance of GSignondDictionary |
|
key |
key to look up |
|
value |
points to the location where the value should be set. |
[out] |
gboolean gsignond_dictionary_set_boolean (GSignondDictionary *dict
,const gchar *key
,gboolean value
);
Sets or replaces a gboolean value in the dictionary.
gboolean gsignond_dictionary_get_int32 (GSignondDictionary *dict
,const gchar *key
,gint *value
);
Retrieves a int32 value.
dict |
instance of GSignondDictionary |
|
key |
key to look up |
|
value |
points to the location where the value should be set. |
[out] |
gboolean gsignond_dictionary_set_int32 (GSignondDictionary *dict
,const gchar *key
,gint value
);
Sets or replaces a int32 value in the dictionary.
gboolean gsignond_dictionary_get_uint32 (GSignondDictionary *dict
,const gchar *key
,guint *value
);
Retrieves a uint32 value.
dict |
instance of GSignondDictionary |
|
key |
key to look up |
|
value |
points to the location where the value should be set. |
[out] |
gboolean gsignond_dictionary_set_uint32 (GSignondDictionary *dict
,const gchar *key
,guint32 value
);
Sets or replaces a uint32 value in the dictionary.
gboolean gsignond_dictionary_get_int64 (GSignondDictionary *dict
,const gchar *key
,gint64 *value
);
Retrieves a int64 value.
dict |
instance of GSignondDictionary |
|
key |
key to look up |
|
value |
points to the location where the value should be set. |
[out] |
gboolean gsignond_dictionary_set_int64 (GSignondDictionary *dict
,const gchar *key
,gint64 value
);
Sets or replaces a int64 value in the dictionary.
gboolean gsignond_dictionary_get_uint64 (GSignondDictionary *dict
,const gchar *key
,guint64 *value
);
Retrieves a uint64 value.
dict |
instance of GSignondDictionary |
|
key |
key to look up |
|
value |
points to the location where the value should be set. |
[out] |
gboolean gsignond_dictionary_set_uint64 (GSignondDictionary *dict
,const gchar *key
,guint64 value
);
Sets or replaces a uint64 value in the dictionary.
const gchar * gsignond_dictionary_get_string (GSignondDictionary *dict
,const gchar *key
);
Retrieves a string value.
gboolean gsignond_dictionary_set_string (GSignondDictionary *dict
,const gchar *key
,const gchar *value
);
Sets or replaces a string value in the dictionary.
gboolean gsignond_dictionary_remove (GSignondDictionary *dict
,const gchar *key
);
Removes key-value pair in the dictionary as per key.
dict |
instance of GSignondDictionary |
|
key |
key which needs to be removed from the dictionary |
gboolean gsignond_dictionary_contains (GSignondDictionary *dict
,const gchar *key
);
Checks if the dict
contains key
.
GHashTable *
gsignond_dictionary_get_table (GSignondDictionary *dict
);
Get the GHashTable associated to the GSignondDictionary.
It should not be modified.
The GHashTable contained into the GSignondDictionary.
[transfer none][element-type utf8 GVariant]
struct GSignondDictionaryClass { };
Opaque GSignondDictionaryClass data structure.
typedef struct _GSignondDictionary GSignondDictionary;
Opaque GSignondDictionary data structure.