aboutsummaryrefslogtreecommitdiffstats
path: root/src/reader.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2018-12-29 17:36:15 -0500
committerDavid Robillard <d@drobilla.net>2020-06-21 18:12:04 +0200
commit87a0f519dce09e60bb378d278dff5ee7082d70f1 (patch)
tree273be45faf2dfca6d70e70b9e5afd437c08aa1b3 /src/reader.c
parent6344b9ffe89cd3662bef9b6eca3ad4cc56bb608c (diff)
downloadserd-87a0f519dce09e60bb378d278dff5ee7082d70f1.tar.gz
serd-87a0f519dce09e60bb378d278dff5ee7082d70f1.tar.bz2
serd-87a0f519dce09e60bb378d278dff5ee7082d70f1.zip
Add Env to Sink
This isn't technically necessary for any sink, but is a pattern common to every sink implementation in serd, so having it here reduces boilerplate and parameters in user code.
Diffstat (limited to 'src/reader.c')
-rw-r--r--src/reader.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/src/reader.c b/src/reader.c
index 70bedc31..5ea99543 100644
--- a/src/reader.c
+++ b/src/reader.c
@@ -20,7 +20,6 @@
#include "node.h"
#include "serd/serd.h"
#include "serd_internal.h"
-#include "sink.h"
#include "stack.h"
#include "statement.h"
#include "system.h"
@@ -121,9 +120,6 @@ SerdStatus
emit_statement(SerdReader* reader, ReadContext ctx, SerdNode* o)
{
SerdNode* graph = ctx.graph;
- if (!reader->sink->statement) {
- return SERD_SUCCESS;
- }
/* Zero the pad of the object node on the top of the stack. Lower nodes
(subject and predicate) were already zeroed by subsequent pushes. */
@@ -134,8 +130,9 @@ emit_statement(SerdReader* reader, ReadContext ctx, SerdNode* o)
&reader->source.cur
};
- const SerdStatus st = reader->sink->statement(
- reader->sink->handle, *ctx.flags, &statement);
+ const SerdStatus st = serd_sink_write_statement(
+ reader->sink, *ctx.flags, &statement);
+
*ctx.flags = 0;
return st;
}