aboutsummaryrefslogtreecommitdiffstats
path: root/include
AgeCommit message (Collapse)AuthorFilesLines
2022-01-13Add serd_env_copy() and serd_env_equals()David Robillard1-0/+10
2022-01-13Make Writer always write to a ByteSinkDavid Robillard1-46/+72
2022-01-13Move I/O function prototypes to their own sectionDavid Robillard1-4/+10
2022-01-13Add empty syntax type for suppressing outputDavid Robillard1-8/+14
2022-01-13Replace SERD_WRITE_STRICT flag with SERD_WRITE_LAXDavid Robillard1-1/+1
The unset value for flags should represent the best default, which in this case is strict parsing. Lax parsing is the riskier opt-in option.
2022-01-13Improve writer error handlingDavid Robillard1-1/+4
2022-01-13Add support for writing terse collectionsDavid Robillard1-1/+3
2022-01-13Add option for writing terse output without newlinesDavid Robillard1-1/+2
2022-01-13Simplify streaming API and improve pretty printingDavid Robillard1-8/+5
This removes the obligation from the caller to correctly maintain flags to describe the current anonymous context, instead making the writer handle this itself as much as possible. Flags remain for the cases the writer can not infer from context: the start of anonymous subject and object nodes.
2022-01-13Simplify SerdEnv APIDavid Robillard1-18/+8
2022-01-13Separate ByteSink from writerDavid Robillard1-4/+3
2022-01-13Expose SerdByteSink in public APIDavid Robillard1-0/+38
2022-01-13Simplify writer style optionsDavid Robillard1-5/+4
2022-01-13Replace multiple stream callbacks with SerdEventDavid Robillard1-52/+67
This makes plumbing easier since everything goes through the same "stream" and only one callback is required to handling everything. It's also more easily extensible in case more event types need to be added in the future.
2022-01-13Cache commonly used nodes in the worldDavid Robillard1-0/+11
2022-01-13Add SerdNodes for storing a cache of interned nodesDavid Robillard1-0/+139
2022-01-13Add SerdStatementDavid Robillard1-6/+89
2022-01-13Add SerdCaretDavid Robillard1-9/+70
2022-01-13Add SerdField to public APIDavid Robillard1-0/+14
A statement field enum was previously only used by the writer internally, but will be used in the public API (without a sentinel value) in following commits.
2022-01-13Add serd_world_get_blank()David Robillard1-0/+10
2022-01-13Remove serd_reader_set_default_graph()David Robillard1-12/+0
2022-01-13Add SerdWorld for shared library stateDavid Robillard1-42/+62
2022-01-13Clean up base64 node construction and access APIDavid Robillard1-16/+58
2022-01-13Clean up numeric node construction and access APIDavid Robillard1-12/+75
2022-01-13Add serd_new_boolean()David Robillard1-0/+5
2022-01-13Use exess for reading and writing numeric and binary literalsDavid Robillard1-29/+18
2022-01-13Simplify literal construction APIDavid Robillard1-6/+15
2022-01-13Move syntax name/extension utilities to public APIDavid Robillard1-8/+43
2022-01-13Use a fixed-size reader stackDavid Robillard1-3/+6
2022-01-13Simplify reader interfaceDavid Robillard1-48/+35
2022-01-13Add SerdSink interface and hide implementationsDavid Robillard1-51/+89
2022-01-13Bring read/write interface closer to C standardDavid Robillard1-32/+33
2022-01-13Set datatypes on integer, decimal, and base64 nodesDavid Robillard1-4/+16
2022-01-13Simplify node construction APIDavid Robillard1-40/+38
2022-01-13Merge datatype/language into nodeDavid Robillard1-15/+34
This moves closer to the sord API, and is more convenient in most cases.
2022-01-13Simplify URI API and implementationDavid Robillard1-83/+93
2022-01-13Add serd_node_uri_view()David Robillard1-0/+15
2022-01-13Add serd_node_string_view()David Robillard1-0/+10
2022-01-13Make nodes opaqueDavid Robillard1-66/+38
2022-01-13Add node accessor APIDavid Robillard1-0/+20
2022-01-13Shorten node constructor namesDavid Robillard1-22/+22
2022-01-13Add string view construction macrosDavid Robillard1-1/+69
2022-01-13Remove "get" from accessor namesDavid Robillard1-4/+4
2022-01-13Rename function types for consistencyDavid Robillard1-22/+22
2022-01-13Rename SerdStyle to SerdWriterFlagsDavid Robillard1-8/+11
2022-01-13Rename SerdType to SerdNodeTypeDavid Robillard1-4/+4
The old name will be even more ambiguous with the increased scope.
2022-01-13Rename SerdURI to SerdURIViewDavid Robillard1-39/+39
2022-01-13Rename SerdChunk to SerdStringViewDavid Robillard1-14/+19
2022-01-13Use char* for strings in public APIDavid Robillard1-52/+51
The constant casting just makes user code a mess, for no benefit.
2022-01-13Add SerdBuffer type for mutable buffersDavid Robillard1-8/+14
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.