diff options
author | Emmanuele Bassi <ebassi@openedhand.com> | 2007-10-05 11:59:44 +0100 |
---|---|---|
committer | Emmanuele Bassi <ebassi@openedhand.com> | 2007-10-05 11:59:44 +0100 |
commit | fa9d1676da588306be5a14bcab100ad58a41b799 (patch) | |
tree | 41015117f027591dc385c63c811b2975db9d3e5a /json-glib/json-parser.h | |
parent | aa2b31234f7cfac63b870e8d9d74e682b3121d4a (diff) | |
download | json-glib-fa9d1676da588306be5a14bcab100ad58a41b799.tar.gz |
Add more signals to the JsonParser class
JsonParser should emit signals in critical places, like: start/end of
the parsing process; start and end of a JsonObject and a JsonArray;
completion of every member and element of a JsonObject and a JsonArray.
These signals require the addition of some custom marshaller.
Diffstat (limited to 'json-glib/json-parser.h')
-rw-r--r-- | json-glib/json-parser.h | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/json-glib/json-parser.h b/json-glib/json-parser.h index 5dfc9e1..942496d 100644 --- a/json-glib/json-parser.h +++ b/json-glib/json-parser.h @@ -20,7 +20,8 @@ #ifndef __JSON_PARSER_H__ #define __JSON_PARSER_H__ -#include <json-glib/json-types.h> +#include <glib-object.h> +#include "json-types.h" G_BEGIN_DECLS @@ -84,8 +85,26 @@ struct _JsonParserClass GObjectClass parent_class; /*< public >*/ - void (* error) (JsonParser *parser, - const GError *error); + void (* parse_start) (JsonParser *parser); + + void (* object_start) (JsonParser *parser); + void (* object_member) (JsonParser *parser, + JsonObject *object, + const gchar *member_name); + void (* object_end) (JsonParser *parser, + JsonObject *object); + + void (* array_start) (JsonParser *parser); + void (* array_element) (JsonParser *parser, + JsonArray *array, + gint index_); + void (* array_end) (JsonParser *parser, + JsonArray *array); + + void (* parse_end) (JsonParser *parser); + + void (* error) (JsonParser *parser, + const GError *error); /*< private >*/ /* padding for future expansion */ |