aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/node.c2
-rw-r--r--src/serdi.c34
-rw-r--r--src/writer.c5
3 files changed, 7 insertions, 34 deletions
diff --git a/src/node.c b/src/node.c
index 25c1a9df..0f82b837 100644
--- a/src/node.c
+++ b/src/node.c
@@ -137,7 +137,7 @@ serd_node_malloc(const size_t length,
node->flags = flags;
node->type = type;
- assert((intptr_t)node % serd_node_align == 0);
+ assert((uintptr_t)node % serd_node_align == 0);
return node;
}
diff --git a/src/serdi.c b/src/serdi.c
index a94051bc..3f4593db 100644
--- a/src/serdi.c
+++ b/src/serdi.c
@@ -87,36 +87,6 @@ quiet_error_func(void* const handle, const SerdError* const e)
return SERD_SUCCESS;
}
-static SerdWriterFlags
-choose_style(const SerdSyntax input_syntax,
- const SerdSyntax output_syntax,
- const bool ascii,
- const bool bulk_write,
- const bool full_uris)
-{
- SerdWriterFlags writer_flags = 0u;
- if (output_syntax == SERD_NTRIPLES || ascii) {
- writer_flags |= SERD_WRITE_ASCII;
- } else if (output_syntax == SERD_TURTLE) {
- writer_flags |= SERD_WRITE_ABBREVIATED;
- if (!full_uris) {
- writer_flags |= SERD_WRITE_CURIED;
- }
- }
-
- if ((input_syntax == SERD_TURTLE || input_syntax == SERD_TRIG) ||
- (writer_flags & SERD_WRITE_CURIED)) {
- // Base URI may change and/or we're abbreviating URIs, so must resolve
- writer_flags |= SERD_WRITE_RESOLVED;
- }
-
- if (bulk_write) {
- writer_flags |= SERD_WRITE_BULK;
- }
-
- return writer_flags;
-}
-
int
main(int argc, char** argv)
{
@@ -249,7 +219,9 @@ main(int argc, char** argv)
}
const SerdWriterFlags writer_flags =
- choose_style(input_syntax, output_syntax, ascii, bulk_write, full_uris);
+ ((ascii ? SERD_WRITE_ASCII : 0u) | //
+ (bulk_write ? SERD_WRITE_BULK : 0u) | //
+ (full_uris ? (SERD_WRITE_UNQUALIFIED | SERD_WRITE_UNRESOLVED) : 0u));
SerdNode* base = NULL;
if (a < argc) { // Base URI given on command line
diff --git a/src/writer.c b/src/writer.c
index 66a53819..e50cdaf1 100644
--- a/src/writer.c
+++ b/src/writer.c
@@ -576,7 +576,7 @@ write_uri_node(SerdWriter* const writer,
return sink("()", 2, writer) == 2;
}
- if (has_scheme && (writer->flags & SERD_WRITE_CURIED) &&
+ if (has_scheme && !(writer->flags & SERD_WRITE_UNQUALIFIED) &&
serd_env_qualify(writer->env, node, &prefix, &suffix) &&
is_name(serd_node_string(prefix), serd_node_length(prefix)) &&
is_name(suffix.buf, suffix.len)) {
@@ -597,7 +597,8 @@ write_uri_node(SerdWriter* const writer,
}
write_sep(writer, SEP_URI_BEGIN);
- if ((writer->flags & SERD_WRITE_RESOLVED) && serd_env_base_uri(writer->env)) {
+ if (!(writer->flags & SERD_WRITE_UNRESOLVED) &&
+ serd_env_base_uri(writer->env)) {
const SerdURIView base_uri = serd_env_base_uri_view(writer->env);
SerdURIView uri = serd_parse_uri(node_str);
SerdURIView abs_uri = serd_resolve_uri(uri, base_uri);