aboutsummaryrefslogtreecommitdiffstats
path: root/src/serdi.c
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2019-04-28 17:54:00 +0200
committerDavid Robillard <d@drobilla.net>2021-03-08 23:23:05 -0500
commit2ab2b5f2c7bd4d26aa99eee959f0e5192b3813dc (patch)
tree9fccf392d6eb69fb11b9bc2bbe24cf35eaa63ab2 /src/serdi.c
parent01daa5914169d57a6a6c4925d3f8d76db80a2bd8 (diff)
downloadserd-2ab2b5f2c7bd4d26aa99eee959f0e5192b3813dc.tar.gz
serd-2ab2b5f2c7bd4d26aa99eee959f0e5192b3813dc.tar.bz2
serd-2ab2b5f2c7bd4d26aa99eee959f0e5192b3813dc.zip
Replace serd_reader_set_strict() with SerdReaderFlags
This makes reader options extensible and should hopefully prevent the need for grafting on more similar functions in the future.
Diffstat (limited to 'src/serdi.c')
-rw-r--r--src/serdi.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/serdi.c b/src/serdi.c
index 64206d7f..72b7afe1 100644
--- a/src/serdi.c
+++ b/src/serdi.c
@@ -97,12 +97,12 @@ main(int argc, char** argv)
SerdSyntax input_syntax = (SerdSyntax)0;
SerdSyntax output_syntax = (SerdSyntax)0;
- SerdWriterFlags writer_flags = SERD_WRITE_STRICT;
+ SerdReaderFlags reader_flags = 0;
+ SerdWriterFlags writer_flags = 0;
bool from_string = false;
bool from_stdin = false;
bool bulk_read = true;
bool bulk_write = false;
- bool lax = false;
bool quiet = false;
size_t stack_size = 4194304;
const char* add_prefix = NULL;
@@ -126,8 +126,8 @@ main(int argc, char** argv)
} else if (argv[a][1] == 'h') {
return print_usage(argv[0], false);
} else if (argv[a][1] == 'l') {
- writer_flags &= ~(unsigned)SERD_WRITE_STRICT;
- lax = true;
+ reader_flags |= SERD_READ_LAX;
+ writer_flags |= SERD_WRITE_LAX;
} else if (argv[a][1] == 'q') {
quiet = true;
} else if (argv[a][1] == 'v') {
@@ -232,10 +232,9 @@ main(int argc, char** argv)
(SerdWriteFunc)serd_byte_sink_write,
byte_sink);
- SerdReader* const reader =
- serd_reader_new(world, input_syntax, serd_writer_sink(writer), stack_size);
+ SerdReader* const reader = serd_reader_new(
+ world, input_syntax, reader_flags, serd_writer_sink(writer), stack_size);
- serd_reader_set_strict(reader, !lax);
if (quiet) {
serd_world_set_error_func(world, quiet_error_func, NULL);
}