aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2021-03-08Add serd_new_float() and serd_new_double()David Robillard3-0/+30
2021-03-08Add serd_new_boolean()David Robillard2-0/+9
2021-03-08Remove serd_node_align constantDavid Robillard1-10/+8
2021-03-08WIP: Use exess for reading and writing numeric and binary literalsDavid Robillard3-261/+102
2021-03-08Simplify literal construction APIDavid Robillard2-40/+76
2021-03-08Expand datatype of literal nodes in serd_env_expand_nodeDavid Robillard1-2/+14
2021-03-08Move syntax name/extension utilities to public APIDavid Robillard2-51/+73
2021-03-08Improve reader error handlingDavid Robillard1-31/+40
2021-03-08Remove unnecessary parameter from read_LANGTAG()David Robillard1-8/+8
2021-03-08Set flags directly when reading literal nodesDavid Robillard1-57/+35
2021-03-08Improve push_byte() performanceDavid Robillard1-5/+4
2021-03-08Add debug checks for node paddingDavid Robillard2-9/+37
2021-03-08Zero node padding before passing to reader sinksDavid Robillard5-2/+41
2021-03-08Remove datatype and language from reader contextDavid Robillard2-32/+25
2021-03-08Simplify stack management by popping in bulk at higher levelsDavid Robillard4-109/+51
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.
2021-03-08Use a fixed-size reader stackDavid Robillard7-198/+235
This improves performance, and makes the reader more suitable for embedded or network-facing applications, at the cost of requiring the user to specify a maximum stack size.
2021-03-07Simplify reader interfaceDavid Robillard5-135/+78
2021-03-07Add SerdSink interface and hide implementationsDavid Robillard7-77/+197
2021-03-07Use consistent naming for function typesDavid Robillard7-36/+36
2021-03-07Bring read/write interface closer to C standardDavid Robillard8-56/+53
2021-03-07Simplify reader interfaceDavid Robillard3-92/+74
2021-03-07Set datatypes on integer, decimal, and base64 nodesDavid Robillard2-28/+92
2021-03-07Simplify node construction APIDavid Robillard5-150/+177
2021-03-07Simplify URI API and implementationDavid Robillard8-312/+290
2021-03-07Add serd_node_uri_view()David Robillard1-0/+12
2021-03-07Add serd_node_string_view()David Robillard1-0/+8
2021-03-07Merge datatype/language into nodeDavid Robillard5-65/+174
This moves closer to the sord API, and is more convenient in most cases.
2021-03-07Remove SERD_NOTHING node typeDavid Robillard2-4/+0
2021-03-07Make nodes opaqueDavid Robillard9-272/+318
2021-03-07Add node accessor APIDavid Robillard1-0/+24
2021-03-07Shorten node constructor namesDavid Robillard3-25/+23
2021-03-07Remove "get" from accessor namesDavid Robillard3-7/+10
2021-03-07Rename SerdStyle to SerdWriterFlagsDavid Robillard2-35/+35
2021-03-07Rename SerdType to SerdNodeTypeDavid Robillard4-17/+23
The old name will be even more ambiguous with the increased scope.
2021-03-07Rename SerdURI to SerdURIViewDavid Robillard6-57/+59
2021-03-07Rename SerdChunk to SerdStringViewDavid Robillard4-20/+14
2021-03-07Use char* for strings in public APIDavid Robillard16-238/+211
The constant casting just makes user code a mess, for no benefit.
2021-03-07Remove escape parameter from serd_node_new_file_uriDavid Robillard2-4/+3
Since characters are escaped because they are not valid characters in a URI, any use of this function without escaping is problematic at best.
2021-03-07Remove useless character countingDavid Robillard7-77/+43
2021-03-07Add SerdBuffer type for mutable buffersDavid Robillard4-24/+23
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.
2021-03-07Remove serd_uri_to_path()David Robillard1-26/+1
2021-02-15Fix writing long literals with triple quotesDavid Robillard2-3/+11
2021-01-20Serd 0.30.10v0.30.10David Robillard1-1/+1
2021-01-17Remove aligned_alloc supportDavid Robillard2-19/+0
This causes build issues when targeting older versions of MacOS. That could be fixed, but I don't have the ability to reproduce it at the moment, and it's a problem in the build system check code which is about to be entirely replaced anyway. Since, as far as I know, this does not actually add aligned allocation support to any real system (they all support one of the other methods), just remove it for now.
2021-01-10Add missing includesDavid Robillard1-0/+2
2021-01-10Avoid use of strcpyDavid Robillard1-3/+3
Again, really just skirting around warnings here, but this is faster anyway since we know what we're doing here and doing require any fine-grained null termination.
2021-01-09Only define WIN32_LEAN_AND_MEAN for MSVCDavid Robillard1-1/+3
This avoids a warning with MinGW.
2021-01-09Avoid GCC warning about printed string overflowDavid Robillard1-9/+14
GCC seems to think there was a potential overflow here, but I don't see it. I think it just can't figure out that the printed text and the size both depend on the same variable. In any case, avoiding formatting functions here avoids the warning, and is probably faster anyway.
2021-01-09Avoid GCC warning about potential signed overflowDavid Robillard1-1/+1
2021-01-09Add missing pure attributesDavid Robillard2-2/+2