aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2022-01-13Simplify URI API and implementationDavid Robillard8-318/+280
2022-01-13Add nullability annotations to internal node functionsDavid Robillard1-6/+7
2022-01-13Add serd_node_uri_view()David Robillard1-0/+12
2022-01-13Add serd_node_string_view()David Robillard1-0/+8
2022-01-13Align node allocationsDavid Robillard3-11/+55
2022-01-13Make nodes opaqueDavid Robillard11-302/+356
2022-01-13Add node accessor APIDavid Robillard1-0/+24
2022-01-13Shorten node constructor namesDavid Robillard3-29/+27
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 Robillard3-7/+10
2022-01-13Rename function types for consistencyDavid Robillard7-36/+36
2022-01-13Rename SerdStyle to SerdWriterFlagsDavid Robillard2-35/+35
2022-01-13Rename SerdType to SerdNodeTypeDavid Robillard4-21/+24
The old name will be even more ambiguous with the increased scope.
2022-01-13Rename SerdURI to SerdURIViewDavid Robillard6-65/+67
2022-01-13Rename SerdChunk to SerdStringViewDavid Robillard4-19/+14
2022-01-13Use char* for strings in public APIDavid Robillard16-242/+217
The constant casting just makes user code a mess, for no benefit.
2022-01-13Add SerdBuffer type for mutable buffersDavid Robillard4-24/+23
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.
2022-01-13Remove support for Turtle named inline nodes extensionDavid Robillard2-51/+6
2022-01-13Remove 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.
2022-01-13Remove useless character countingDavid Robillard7-79/+43
2022-01-13Remove serd_uri_to_path()David Robillard1-26/+1
2022-01-13Define _POSIX_C_SOURCE globally in the build systemDavid Robillard3-6/+0
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-13Suppress new warnings in clang-tidy 13David Robillard1-1/+2
2021-07-08Suppress new warnings in clang-tidy 12David Robillard1-0/+3
2021-06-30Move local URI utility functionsDavid Robillard1-28/+28
2021-06-30Make node qualify and expand functions tolerate a null EnvDavid Robillard1-0/+12
This is convenient in places where you don't necessarily need an Env, since these methods will work the same as with an empty Env.
2021-06-30Avoid writing invalid prefixed name prefixesDavid Robillard1-1/+2
2021-05-31Make most function parameters constDavid Robillard11-212/+283
More const never hurts in general, but in particular this allows the compiler to make better nullability deductions, which reduces the amount of manual nullability casting required.
2021-05-31Fix include orderDavid Robillard1-1/+2
2021-05-31Remove "static inline" for functions in implementation filesDavid Robillard7-26/+26
This is just noise since these are static functions local to a C compilation unit.
2021-05-31Remove default case from exhaustive switchDavid Robillard2-2/+1
2021-05-31Clean up switch case commentsDavid Robillard1-5/+5
2021-05-31Fix unannotated switch fallthroughsDavid Robillard2-7/+27
Unfortunately, clang does not support doing this with comments, requiring yet more preprocessor gunk.
2021-05-31Fix some conversion warningsDavid Robillard3-7/+7
2021-05-16Remove redundant castDavid Robillard1-1/+1
2021-05-16Avoid else after breakDavid Robillard1-3/+3
2021-04-12Sort command line argument handling codeDavid Robillard1-7/+7
2021-04-11Support combining several BSD-style command line flags in serdiDavid Robillard1-59/+68
2021-04-09Write invalid characters in URIs with percent encodingDavid Robillard1-5/+9
2021-04-09Write statements with invalid URI characters in lax modeDavid Robillard1-9/+9
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
2021-01-09Fix fallback aligned_alloc() detectionDavid Robillard1-1/+1