![]() |
![]() |
![]() |
JSON-GLib 0.6.2 Reference Manual | ![]() |
---|---|---|---|---|
JsonGenerator; JsonGeneratorClass; JsonGenerator* json_generator_new (void); gboolean json_generator_to_file (JsonGenerator *generator, const gchar *filename, GError **error); gchar* json_generator_to_data (JsonGenerator *generator, gsize *length); void json_generator_set_root (JsonGenerator *generator, JsonNode *node);
"indent" guint : Read / Write "indent-char" guint : Read / Write "pretty" gboolean : Read / Write "root" JsonNode* : Read / Write
JsonGenerator provides an object for generating a JSON data stream and put it into a buffer or a file.
typedef struct _JsonGenerator JsonGenerator;
JSON data streams generator. The contents of the JsonGenerator structure are private and should only be accessed via the provided API.
JsonGenerator* json_generator_new (void);
Creates a new JsonGenerator. You can use this object to generate a JSON data stream starting from a data object model composed by JsonNodes.
Returns : |
the newly created JsonGenerator instance |
gboolean json_generator_to_file (JsonGenerator *generator, const gchar *filename, GError **error);
Creates a JSON data stream and puts it inside filename
, overwriting the
current file contents. This operation is atomic.
|
a JsonGenerator |
|
path to the target file |
|
return location for a GError, or NULL
|
Returns : |
TRUE if saving was successful.
|
gchar* json_generator_to_data (JsonGenerator *generator, gsize *length);
Generates a JSON data stream from generator
and returns it as a
buffer.
|
a JsonGenerator |
|
return location for the length of the returned buffer, or NULL
|
Returns : |
a newly allocated buffer holding a JSON data stream. Use
g_free() to free the allocated resources.
|
void json_generator_set_root (JsonGenerator *generator, JsonNode *node);
Sets node
as the root of the JSON data stream to be serialized by
the JsonGenerator.
Note: the node is copied by the generator object, so it can be safely freed after calling this function.
|
a JsonGenerator |
|
a JsonNode |
"indent"
property"indent" guint : Read / Write
Number of spaces to be used to indent when pretty printing.
Default value: 2
"indent-char"
property"indent-char" guint : Read / Write
The character that should be used when indenting in pretty print.
Default value: ' '
Since 0.6
"pretty"
property"pretty" gboolean : Read / Write
Whether the output should be "pretty-printed", with indentation and newlines. The indentation level can be controlled by using the JsonGenerator:indent property
Default value: FALSE