From 44e792d8da5ef93a88dac76b7b191e588203c42b Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 28 Apr 2019 17:54:00 +0200 Subject: 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. --- serd/serd.h | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) (limited to 'serd') diff --git a/serd/serd.h b/serd/serd.h index bad9a4ac..c48ace10 100644 --- a/serd/serd.h +++ b/serd/serd.h @@ -255,6 +255,14 @@ typedef struct { SerdStringView fragment; ///< Fragment } SerdURI; +/// Reader options +typedef enum { + SERD_READ_LAX = 1 << 0 ///< Tolerate invalid input where possible +} SerdReaderFlag; + +/// Bitwise OR of SerdReaderFlag values +typedef uint32_t SerdReaderFlags; + /** Writer style options @@ -268,7 +276,7 @@ typedef enum { SERD_WRITE_UNQUALIFIED = 1 << 1, ///< Do not shorten URIs into CURIEs SERD_WRITE_UNRESOLVED = 1 << 2, ///< Do not make URIs relative SERD_WRITE_TERSE = 1 << 3, ///< Write terser output without newlines - SERD_WRITE_STRICT = 1 << 4 ///< Abort with error on lossy output + SERD_WRITE_LAX = 1 << 4 ///< Tolerate lossy output } SerdWriterFlag; /// Bitwise OR of SerdWriterFlag values @@ -1145,20 +1153,10 @@ SERD_API SerdReader* serd_reader_new(SerdWorld* world, SerdSyntax syntax, + SerdReaderFlags flags, const SerdSink* sink, size_t stack_size); -/** - Enable or disable strict parsing - - The reader is non-strict (lax) by default, which will tolerate URIs with - invalid characters. Setting strict will fail when parsing such files. An - error is printed for invalid input in either case. -*/ -SERD_API -void -serd_reader_set_strict(SerdReader* reader, bool strict); - /** Set a prefix to be added to all blank node identifiers -- cgit v1.2.1