aboutsummaryrefslogtreecommitdiffstats
path: root/src/writer.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2020-08-14 17:32:01 +0200
committerDavid Robillard <d@drobilla.net>2020-10-27 13:13:58 +0100
commitb81636681210b56caa0b9ad2d84118c8f355a186 (patch)
tree27d90d11c4e0370bb5e47bce3431e249e856a6c4 /src/writer.c
parentd459c6044e3bfdacded8d21c49315cf447e22d3e (diff)
downloadserd-b81636681210b56caa0b9ad2d84118c8f355a186.tar.gz
serd-b81636681210b56caa0b9ad2d84118c8f355a186.tar.bz2
serd-b81636681210b56caa0b9ad2d84118c8f355a186.zip
Add empty syntax type for suppressing output
Diffstat (limited to 'src/writer.c')
-rw-r--r--src/writer.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/writer.c b/src/writer.c
index cd6b8437..4f41b303 100644
--- a/src/writer.c
+++ b/src/writer.c
@@ -733,6 +733,8 @@ write_curie(SerdWriter* const writer,
if (is_inline_start(writer, field, flags)) {
TRY(st, esink(" ;", 2, writer));
}
+ case SERD_SYNTAX_EMPTY:
+ break;
}
return st;
}
@@ -831,6 +833,10 @@ serd_writer_write_statement(SerdWriter* writer,
assert(!((flags & SERD_ANON_S) && (flags & SERD_LIST_S)));
assert(!((flags & SERD_ANON_O) && (flags & SERD_LIST_O)));
+ if (writer->syntax == SERD_SYNTAX_EMPTY) {
+ return SERD_SUCCESS;
+ }
+
const SerdNode* const subject = serd_statement_subject(statement);
const SerdNode* const predicate = serd_statement_predicate(statement);
const SerdNode* const object = serd_statement_object(statement);
@@ -969,10 +975,9 @@ serd_writer_write_statement(SerdWriter* writer,
}
SERD_WARN_UNUSED_RESULT static SerdStatus
-serd_writer_end_anon(SerdWriter* writer,
- const SerdNode* node)
+serd_writer_end_anon(SerdWriter* writer, const SerdNode* node)
{
- if (writer->syntax == SERD_NTRIPLES || writer->syntax == SERD_NQUADS) {
+ if (writer->syntax != SERD_TURTLE && writer->syntax != SERD_TRIG) {
return SERD_SUCCESS;
} else if (serd_stack_is_empty(&writer->anon_stack)) {
return SERD_LOG_ERROR(writer->world, SERD_ERR_UNKNOWN,