aboutsummaryrefslogtreecommitdiffstats
path: root/src/node.c
AgeCommit message (Collapse)AuthorFilesLines
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 Robillard1-17/+132
This moves closer to the sord API, and is more convenient in most cases.
2021-03-07Make nodes opaqueDavid Robillard1-74/+98
2021-03-07Add node accessor APIDavid Robillard1-0/+24
2021-03-07Shorten node constructor namesDavid Robillard1-20/+18
2021-03-07Rename SerdType to SerdNodeTypeDavid Robillard1-2/+2
The old name will be even more ambiguous with the increased scope.
2021-03-07Rename SerdURI to SerdURIViewDavid Robillard1-15/+17
2021-03-07Use char* for strings in public APIDavid Robillard1-28/+25
The constant casting just makes user code a mess, for no benefit.
2021-03-07Remove escape parameter from serd_node_new_file_uriDavid Robillard1-3/+2
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 Robillard1-22/+14
2021-03-07Add SerdBuffer type for mutable buffersDavid Robillard1-9/+9
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.
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-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-02Use email address instead of website for attributionDavid Robillard1-1/+1
2020-12-31Format all code with clang-formatDavid Robillard1-237/+256
2020-08-14Separate base64 implementationDavid Robillard1-33/+4
2020-08-14Use SerdNodeFlags type everywhereDavid Robillard1-7/+7
2020-08-14Clean up and separate internal headersDavid Robillard1-0/+3
2020-07-06Fix spurious semicolon warningsDavid Robillard1-5/+5
2020-07-06Fix format conversion warningsDavid Robillard1-1/+4
2020-06-21Clean up includesDavid Robillard1-1/+7
2019-10-27Fix integer conversion warningsDavid Robillard1-8/+8
2019-01-06Fix serd_node_new_decimal() on WindowsDavid Robillard1-1/+1
2019-01-05Use lround() instead of sketchy offset and castDavid Robillard1-1/+1
2019-01-05Fix unsorted includesDavid Robillard1-3/+2
2018-09-30Fix calloc argument orderDavid Robillard1-1/+1
2018-07-14Fix length of base64 encoded nodesDavid Robillard1-1/+1
2018-06-15Remove redundant SERD_API declarationsDavid Robillard1-13/+0
2017-07-09Add serd_node_from_substring()David Robillard1-1/+17
This allows creating nodes in-place from substrings of other strings to allow zero-copy serialization from existing delimited buffers.
2017-06-30Fix various clang-tidy issuesDavid Robillard1-4/+4
2016-07-31Fix compilation with mingwDavid Robillard1-2/+6
2016-07-10Add serd_node_new_relative_uri()David Robillard1-0/+26
2016-07-10Shrink codeDavid Robillard1-5/+3
2016-07-09Fix construction of URIs with UTF-8 charactersDavid Robillard1-7/+5
2015-10-07Update copyright datesDavid Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@500 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2015-04-04Fix serializing fractional decimals that would round up.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@489 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-10-03Remove dependence on fmax() to avoid portability issues.David Robillard1-2/+9
git-svn-id: http://svn.drobilla.net/serd/trunk@476 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-08-08Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@467 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-04-11Minor hardening.David Robillard1-3/+7
git-svn-id: http://svn.drobilla.net/serd/trunk@459 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-12-23Windows compatibility fixes.David Robillard1-0/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@405 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-12-21Fix crash when serd_node_new_decimal is called with infinity or NaN.David Robillard1-0/+4
git-svn-id: http://svn.drobilla.net/serd/trunk@401 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-08-08Fix warnings: -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes ↵David Robillard1-7/+7
-Wmissing-prototypes. git-svn-id: http://svn.drobilla.net/serd/trunk@374 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-10Add serd_writer_set_root_uri(), root parameter toDavid Robillard1-1/+1
serd_uri_serialise_relative(), and -r option to serdi, to enable writing URIs with up references (../) within a parent namespace. Resolve dot segments in serd_uri_resolve() instead of at write time. git-svn-id: http://svn.drobilla.net/serd/trunk@336 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-08Add escape parameter to serd_node_new_file_uri().David Robillard1-2/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@333 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-08Make serd_node_from_string tolerate NULL.David Robillard1-0/+4
git-svn-id: http://svn.drobilla.net/serd/trunk@332 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-08serd_node_new_uri_from_path => serd_node_new_file_uri.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@331 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-08Add serd_writer_get_env().David Robillard1-0/+62
Add serd_node_new_uri_from_path() and serd_file_uri_parse() and implement proper URI to/from path hex escaping, etc. Add serd_uri_serialise_relative() for making URIs relative to a base where possible (by chopping a common prefix and adding dot segments). Make URIs serialised by the writer properly escape characters. git-svn-id: http://svn.drobilla.net/serd/trunk@330 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-28Fix serialisation of decimals like 10.0, 20.0, etc.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@325 490d8e77-9747-427b-9fa3-0b8f29cee8a0