aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2022-01-13Add serd_new_boolean()David Robillard4-0/+35
2022-01-13Use exess for reading and writing numeric and binary literalsDavid Robillard13-368/+221
2022-01-13Clean up nodes in reader/writer testsDavid Robillard1-12/+20
2022-01-13Simplify literal construction APIDavid Robillard5-68/+122
2022-01-13Move syntax name/extension utilities to public APIDavid Robillard4-59/+117
2022-01-13Improve reader error handlingDavid Robillard5-131/+350
2022-01-13Set flags directly when reading literal nodesDavid Robillard1-61/+43
2022-01-13Add debug checks for node paddingDavid Robillard3-14/+37
2022-01-13Zero node padding before passing to reader sinksDavid Robillard5-2/+41
2022-01-13Remove datatype and language from reader contextDavid Robillard2-38/+31
2022-01-13Simplify stack management by popping in bulk at higher levelsDavid Robillard4-126/+49
Since all memory used by the reader is POD in the stack, there is no benefit to forcing code to explicitly pop everything pushed to the stack, since any function can record an offset and pop back down to it regardless of what its callers pushed if it knows that it does not need those items.
2022-01-13Handle writer stack overflows gracefullyDavid Robillard2-7/+74
2022-01-13Use a fixed-size reader stackDavid Robillard15-212/+292
2022-01-13Simplify reader interfaceDavid Robillard9-284/+190
2022-01-13Add SerdSink interface and hide implementationsDavid Robillard15-163/+500
2022-01-13Bring read/write interface closer to C standardDavid Robillard11-92/+99
2022-01-13Set datatypes on integer, decimal, and base64 nodesDavid Robillard4-38/+132
2022-01-13Simplify node construction APIDavid Robillard11-299/+395
2022-01-13Merge datatype/language into nodeDavid Robillard10-144/+273
This moves closer to the sord API, and is more convenient in most cases.
2022-01-13Improve URI testsDavid Robillard1-9/+29
2022-01-13Simplify URI API and implementationDavid Robillard13-443/+514
2022-01-13Add nullability annotations to internal node functionsDavid Robillard1-6/+7
2022-01-13Add serd_node_uri_view()David Robillard2-0/+27
2022-01-13Add serd_node_string_view()David Robillard2-0/+18
2022-01-13Align node allocationsDavid Robillard3-11/+55
2022-01-13Make nodes opaqueDavid Robillard19-545/+582
2022-01-13Add node accessor APIDavid Robillard2-0/+44
2022-01-13Shorten node constructor namesDavid Robillard6-66/+62
2022-01-13Add string view construction macrosDavid Robillard1-1/+69
2022-01-13Remove redundant null check in serd_env_set_base_uri()David Robillard1-1/+1
The env parameter here is declared as nonnull in the API, so it is an error to call it with NULL (which clang can statically flag as a warning).
2022-01-13Remove "get" from accessor namesDavid Robillard6-18/+21
2022-01-13Rename function types for consistencyDavid Robillard8-58/+58
2022-01-13Rename SerdStyle to SerdWriterFlagsDavid Robillard5-50/+52
2022-01-13Rename SerdType to SerdNodeTypeDavid Robillard5-25/+28
The old name will be even more ambiguous with the increased scope.
2022-01-13Rename SerdURI to SerdURIViewDavid Robillard8-113/+115
2022-01-13Rename SerdChunk to SerdStringViewDavid Robillard7-35/+36
2022-01-13Use char* for strings in public APIDavid Robillard24-397/+354
The constant casting just makes user code a mess, for no benefit.
2022-01-13Add SerdBuffer type for mutable buffersDavid Robillard9-41/+47
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.
2022-01-13Remove support for Turtle named inline nodes extensionDavid Robillard10-84/+7
2022-01-13Remove escape parameter from serd_node_new_file_uriDavid Robillard4-19/+11
Since characters are escaped because they are not valid characters in a URI, any use of this function without escaping is problematic at best.
2022-01-13Remove useless character countingDavid Robillard11-101/+55
2022-01-13Remove serd_uri_to_path()David Robillard4-95/+7
2022-01-13Define _POSIX_C_SOURCE globally in the build systemDavid Robillard4-8/+8
Using inconsistent defines like this that affect the standard library implementation can cause issues. So, doing this consistently for the whole library is a better approach, although it unfortunately makes the code more difficult to compile manually.
2022-01-13Switch to MesonDavid Robillard22-727/+859
2022-01-13Factor out test suite running to a standalone scriptDavid Robillard2-199/+442
2022-01-13Add dark theme for HTML man pagesDavid Robillard1-10/+70
2022-01-13Fix name shadowing in benchmarking scriptDavid Robillard1-3/+3
2022-01-13Suppress new warnings in clang-tidy 13David Robillard2-2/+4
2021-07-10Fix out of bounds read in testDavid Robillard1-0/+4
2021-07-10Clean up socket-like stream reading testDavid Robillard1-5/+17