summaryrefslogtreecommitdiff
path: root/json-glib/json-generator.h
Commit message (Collapse)AuthorAgeFilesLines
* docs: Initial, rough port away from gtk-docEmmanuele Bassi2021-06-081-11/+0
| | | | | | | | | | Drop `SECTION` blurbs. Use gi-docgen syntax for internal links. Use summary lines for gi-docgen indices. Use Markdown syntax for code fragments.
* generator: Add an GString-based methodGarrett Regier2017-06-161-0/+4
| | | | | | This allows callers to avoid extra allocations when dumping to a preexisting string. https://bugzilla.gnome.org/show_bug.cgi?id=773504
* Add autoptr macrosEmmanuele Bassi2016-02-291-0/+4
| | | | | | | GLib can take advantage of the "cleanup" attribute by using a bunch of macro magic. This has been slowly been used across various libraries in the G* stack, so JSON-GLib should provide symbols for the automatic memory management of its types.
* Use compiler annotations to determine symbol visibilityEmmanuele Bassi2014-03-181-0/+13
| | | | | | | | | | | | | | | | | Instead of relying on a separate file that requires being update every time we add a new public function we should use compiler annotations to let the linker know which symbols are public and exported. In order to achieve this we have to: * check for the visibility=hidden attribute * add -fvisibility=hidden to the linker flags * add a macro to annotate all public symbols While we're at it, we should copy the versioned symbols macro layout already used by GLib, GTK+, and other G* libraries, including the ability to express the range of allowed versions of JSON-GLib that third party code can compile against.
* Move the single include guard after multiple inclusion oneEmmanuele Bassi2013-12-041-3/+3
| | | | | | | | | | | | | | GCC (and other compilers) can optimise multiple inclusion of headers if they find the: #ifndef FOO #define FOO #endif pattern as the first thing inside a header. The single-header inclusion guard was preventing that from happening, so we need to move it inside the multiple inclusion guard.
* generator: Clean up and add accessorsEmmanuele Bassi2010-12-141-13/+24
| | | | | | | | Instead of asking everyone to use g_object_set() to set up a JsonGenerator the class should provide a decent API for its properties. While we're at it, we should also use modern API for installing and notifying of property changes.
* generator: Add an OutputStream-based methodEmmanuele Bassi2010-08-021-8/+14
| | | | | | | Currently, only synchronous API. The output handling is pretty trivial, unlike the input handling in JsonParser; this is a really basic convenience API.
* Disallow single header file inclusionEmmanuele Bassi2009-08-121-0/+4
| | | | | | | | | The correct header file for JSON-GLib is, and has always been, json-glib.h. Anything else was not supported, as we've been moving around stuff for a while, now. This commit enforces the single include file, using the same policy enacted by other libraries, like: GLib, GTK+ and Clutter.
* Fix license and copyright noticesEmmanuele Bassi2009-06-091-2/+6
| | | | | | | | THere is no such thing as the "Lesser General Public License version 2": the LGPL v2 is the "Library GPL", and has been superceded by v2.1 with the new "Lesser GPL" name. Also, the copyright is now Intel Corp.
* Add stub class for JsonGeneratorEmmanuele Bassi2007-10-011-0/+82
JsonGenerator is an object that creates JSON data streams from a data model tree. This commit adds the JsonGenerator class to the build and API reference.