aboutsummaryrefslogtreecommitdiffstats
path: root/src/writer.c
AgeCommit message (Collapse)AuthorFilesLines
2020-11-11Add nonnull and nullable attributes to APIDavid Robillard1-0/+1
This will warn if NULL is passed to any nonnull-annotated parameter, and is also supported by sanitizers which can check for violations at runtime. Unfortunately, it is currently only supported by clang. GCC has a similar feature in the nonnull attribute, but this has a different syntax (it's a function attribute) and is more dangerous since it is used by the optimizer to assume a null pointer is undefined behavior. This one just warns and still allows code to handle the situation gracefully, which I think is more appropriate for a library API. Note that this optimization behavior is not some unlikely edge case: switching these attributes to the GCC one will break release builds.
2020-08-16Ensure that all free methods tolerate NULLDavid Robillard1-0/+4
2020-08-14Fix incorrect separator lengthDavid Robillard1-1/+1
2020-08-14Fix Wswitch-enum warningsDavid Robillard1-6/+4
2020-08-14Clean up and separate internal headersDavid Robillard1-0/+12
2020-07-06Fix spurious semicolon warningsDavid Robillard1-3/+5
2020-06-21Cleanup: Add missing default switch casesDavid Robillard1-0/+3
2020-06-21Cleanup: Fix uninitialised variablesDavid Robillard1-3/+4
2020-06-21Cleanup: Avoid declaring multiple variables on a single lineDavid Robillard1-1/+3
2020-06-21Clean up includesDavid Robillard1-1/+6
2020-04-26Fix potential passing of NULL to printfDavid Robillard1-1/+1
2019-01-05Fix unused parameter warningsDavid Robillard1-2/+1
2018-06-15Remove redundant SERD_API declarationsDavid Robillard1-14/+0
2018-06-10Remove syntax assumptions from SerdEnv implementationDavid Robillard1-1/+15
2018-05-27Clarify errors returned by serd_env_expand()David Robillard1-5/+5
2018-02-04Factor out syntax-specific reader implementationDavid Robillard1-8/+0
2017-11-05Factor out namespace definesDavid Robillard1-3/+0
2017-09-23Use more efficient stack allocation and growth policiesDavid Robillard1-1/+1
2017-08-29Fix writing of corrupt UTF-8David Robillard1-8/+7
2017-07-30Move parse_utf8_char to shared internal headerDavid Robillard1-20/+1
2017-07-30Cleanup: Add push_bytes function to reduce code verbosityDavid Robillard1-2/+0
2017-07-10Cleanup: Separate writer code into smaller functionsDavid Robillard1-154/+207
2017-07-10Gracefully handle applications that write corrupt UTF-8David Robillard1-7/+13
2017-07-10Factor out UTF-8 character size countingDavid Robillard1-23/+1
2017-06-30Clean up UTF-8 parsing and use CLZ if availableDavid Robillard1-27/+29
2017-06-30Cleanup: Remove unnecessary variableDavid Robillard1-4/+3
2017-06-30Fix various clang-tidy issuesDavid Robillard1-1/+1
2017-05-20Abstract more syntax specifics away from writerDavid Robillard1-7/+11
2017-04-14Make BulkSink general and factor out details from WriterDavid Robillard1-21/+6
2017-02-14Improve struct packingDavid Robillard1-1/+1
2017-01-07Add support for writing TriGDavid Robillard1-29/+67
2017-01-06Add support for reading TriGDavid Robillard1-10/+11
2017-01-06TidyDavid Robillard1-2/+2
2017-01-05Add support for NQuadsDavid Robillard1-2/+9
2016-09-18Update copyright datesDavid Robillard1-1/+1
2016-06-13Fix use of uninitialized fieldsDavid Robillard1-8/+1
Fixes #1135
2016-03-15Fix potential out of bounds readDavid Robillard1-1/+2
2015-10-07Update copyright datesDavid Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@500 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2015-10-04Delete trailing whitespaceDavid Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@494 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-12-17Add support for Turtle named inline nodes extension.David Robillard1-15/+37
git-svn-id: http://svn.drobilla.net/serd/trunk@482 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-05-19Add TODO comment about future API break needed for better error reporting.David Robillard1-0/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@461 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-12-24Update to latest Turtle test suite.David Robillard1-14/+56
Support UTF-8 in blank node names. Support idiotic SPARQL escaping in local names. git-svn-id: http://svn.drobilla.net/serd/trunk@452 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-31Write \uFFFF, not \U0000FFFF.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@448 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-30Don't escape backspace or form feed for ntriples.David Robillard1-2/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@440 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-24Set SERD_HAS_NEWLINE and SERD_HAS_QUOTE flags when unescaped newlines or ↵David Robillard1-4/+14
quotes are read. Don't escape legal ASCII characters when writing long literals. git-svn-id: http://svn.drobilla.net/serd/trunk@439 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-24Remove unused SERD_URI enum value.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/serd/trunk@438 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-03Don't write xsd:decimal literals to Turtle bare if they would not be read backDavid Robillard1-1/+9
with the same type. Run thru tests on manifest-based test suites. git-svn-id: http://svn.drobilla.net/serd/trunk@428 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-03-03Pass turtle-syntax-bad-prefix-01 (propagate errors in write_node).David Robillard1-5/+8
git-svn-id: http://svn.drobilla.net/serd/trunk@424 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2013-02-25Support most of the latest Turtle Editor's Draft.David Robillard1-75/+135
git-svn-id: http://svn.drobilla.net/serd/trunk@418 490d8e77-9747-427b-9fa3-0b8f29cee8a0