aboutsummaryrefslogtreecommitdiffstats
path: root/src/reader.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2018-05-10 19:29:22 +0200
committerDavid Robillard <d@drobilla.net>2019-04-13 19:15:32 +0200
commit38ab5fbb4dd2bc6cb24b80cc346546677f3d2813 (patch)
tree29e885fd426c0c8745b3daf72b18ca2e6380fcc8 /src/reader.h
parent19b358a447cf62da8aff1f4ef0235b04f39499eb (diff)
downloadserd-38ab5fbb4dd2bc6cb24b80cc346546677f3d2813.tar.gz
serd-38ab5fbb4dd2bc6cb24b80cc346546677f3d2813.tar.bz2
serd-38ab5fbb4dd2bc6cb24b80cc346546677f3d2813.zip
Add SerdSink interface and hide individual function implementations
Diffstat (limited to 'src/reader.h')
-rw-r--r--src/reader.h43
1 files changed, 19 insertions, 24 deletions
diff --git a/src/reader.h b/src/reader.h
index 62e6a8c8..b4109eea 100644
--- a/src/reader.h
+++ b/src/reader.h
@@ -46,31 +46,26 @@ typedef struct {
} ReadContext;
struct SerdReaderImpl {
- void* handle;
- void (*free_handle)(void* ptr);
- SerdBaseSink base_sink;
- SerdPrefixSink prefix_sink;
- SerdStatementSink statement_sink;
- SerdEndSink end_sink;
- SerdErrorSink error_sink;
- void* error_handle;
- Ref rdf_first;
- Ref rdf_rest;
- Ref rdf_nil;
- SerdNode* default_graph;
- SerdByteSource source;
- SerdStack stack;
- SerdSyntax syntax;
- unsigned next_id;
- SerdStatus status;
- uint8_t* buf;
- char* bprefix;
- size_t bprefix_len;
- bool strict; ///< True iff strict parsing
- bool seen_genid;
+ const SerdSink* sink;
+ SerdErrorSink error_sink;
+ void* error_handle;
+ Ref rdf_first;
+ Ref rdf_rest;
+ Ref rdf_nil;
+ SerdNode* default_graph;
+ SerdByteSource source;
+ SerdStack stack;
+ SerdSyntax syntax;
+ unsigned next_id;
+ SerdStatus status;
+ uint8_t* buf;
+ char* bprefix;
+ size_t bprefix_len;
+ bool strict; ///< True iff strict parsing
+ bool seen_genid;
#ifdef SERD_STACK_CHECK
- Ref* allocs; ///< Stack of push offsets
- size_t n_allocs; ///< Number of stack pushes
+ Ref* allocs; ///< Stack of push offsets
+ size_t n_allocs; ///< Number of stack pushes
#endif
};