diff options
author | Emmanuele Bassi <ebassi@openedhand.com> | 2007-10-01 18:01:20 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@openedhand.com> | 2007-10-01 18:01:20 +0100 |
commit | 228a5e4efe65995778847f48d2be43f3df988e10 (patch) | |
tree | 165f8b1dd7f0fabb926018b7d849324b938c23b2 /json-glib/json-types.h | |
parent | bfa60e9ef9da71e3c0d171f81cd08e8eac749061 (diff) | |
download | json-glib-228a5e4efe65995778847f48d2be43f3df988e10.tar.gz |
Move data types ctors and setters into the public headers
Now that we are providing a generator class we need to provide the
constructors and setters for JsonNode, JsonObject and JsonArray. This
also means that the json-private.h header is now useless, so we can
remove it from the build and repository.
Diffstat (limited to 'json-glib/json-types.h')
-rw-r--r-- | json-glib/json-types.h | 38 |
1 files changed, 31 insertions, 7 deletions
diff --git a/json-glib/json-types.h b/json-glib/json-types.h index 4663967..b92c709 100644 --- a/json-glib/json-types.h +++ b/json-glib/json-types.h @@ -89,15 +89,35 @@ struct _JsonNode JsonNode *parent; }; -JsonObject * json_node_get_object (JsonNode *node); -JsonArray * json_node_get_array (JsonNode *node); -void json_node_get_value (JsonNode *node, - GValue *value); -JsonNode * json_node_get_parent (JsonNode *node); -G_CONST_RETURN gchar *json_node_type_name (JsonNode *node); - +JsonNode * json_node_new (JsonNodeType type); +JsonNode * json_node_copy (JsonNode *node); +void json_node_free (JsonNode *node); + +void json_node_set_object (JsonNode *node, + JsonObject *object); +void json_node_take_object (JsonNode *node, + JsonObject *object); +JsonObject * json_node_get_object (JsonNode *node); +JsonObject * json_node_dup_object (JsonNode *node); +void json_node_set_array (JsonNode *node, + JsonArray *array); +void json_node_take_array (JsonNode *node, + JsonArray *array); +JsonArray * json_node_get_array (JsonNode *node); +JsonArray * json_node_dup_array (JsonNode *node); +void json_node_set_value (JsonNode *node, + const GValue *value); +void json_node_get_value (JsonNode *node, + GValue *value); +JsonNode * json_node_get_parent (JsonNode *node); +G_CONST_RETURN gchar *json_node_type_name (JsonNode *node); + +JsonObject * json_object_new (void); JsonObject * json_object_ref (JsonObject *object); void json_object_unref (JsonObject *object); +void json_object_add_member (JsonObject *object, + const gchar *member_name, + JsonNode *node); GList * json_object_get_members (JsonObject *object); JsonNode * json_object_get_member (JsonObject *object, const gchar *member_name); @@ -105,8 +125,12 @@ gboolean json_object_has_member (JsonObject *object, const gchar *member_name); guint json_object_get_size (JsonObject *object); +JsonArray * json_array_new (void); +JsonArray * json_array_sized_new (guint n_elements); JsonArray * json_array_ref (JsonArray *array); void json_array_unref (JsonArray *array); +void json_array_add_element (JsonArray *array, + JsonNode *node); GList * json_array_get_elements (JsonArray *array); JsonNode * json_array_get_element (JsonArray *array, guint index_); |