aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2019-04-13Make statement sink take a statement rather than nodesDavid Robillard5-41/+34
This makes the interface more extensible, towards associating more information with statements. The serd_sink_write_nodes wrapper remains so that user code does not need to allocate in order to write statement.
2019-04-13Add sink interfaceDavid Robillard3-0/+123
2019-04-13Add SerdStatementDavid Robillard4-0/+129
2019-04-13Expand datatype of literal nodes in serd_env_expand_nodeDavid Robillard1-0/+12
2019-04-13Move syntax name/extension utilities to public APIDavid Robillard4-48/+110
2019-04-13Move SerdField to public APIDavid Robillard2-46/+50
2019-04-13Clean up reader error handlingDavid Robillard4-340/+377
2019-04-13Fix UTF-8 round trippingDavid Robillard1-1/+1
2019-04-13Add debug checks for node paddingDavid Robillard1-8/+40
2019-04-13Zero node padding before passing to reader sinksDavid Robillard5-3/+38
2019-04-13Remove datatype and language from reader contextDavid Robillard2-30/+17
2019-04-13Simplify stack management by popping in bulk at higher levelsDavid Robillard4-98/+66
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.
2019-04-13Use a fixed-size reader stackDavid Robillard12-228/+288
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.
2019-04-13Set datatypes on integer, decimal, and base64 nodesDavid Robillard3-35/+102
2019-04-13Add serd_world_get_blank()David Robillard4-1/+52
2019-04-13Avoid copying nodes when equivalent prefixes are setDavid Robillard1-3/+5
2019-04-13Separate base64 implementationDavid Robillard5-82/+179
2019-04-13Clean up node construction APIDavid Robillard9-261/+266
2019-04-13Clean up includes and improve source file separationDavid Robillard21-55/+99
2019-04-13Move system utilities to separate source filesDavid Robillard13-47/+99
2019-04-13Hide fopen wrapper and use reader interface consistentlyDavid Robillard9-145/+115
2019-04-13Add blank node APIDavid Robillard3-0/+34
2019-04-13Make serd_node_new_literal take datatype as a nodeDavid Robillard3-10/+20
2019-04-13Move error handling to worldDavid Robillard5-33/+37
2019-04-13Add SerdWorld for shared library stateDavid Robillard11-62/+149
2019-04-13Add SerdSink interface and hide individual function implementationsDavid Robillard7-138/+95
2019-04-13Bring read/write interface closer to C standardDavid Robillard11-82/+87
2019-04-13Clean up and separate internal headersDavid Robillard18-598/+767
2019-04-13Merge datatype and/or language into nodeDavid Robillard7-90/+243
This moves closer to the sord API, and is more convenient in most cases.
2019-04-13Simplify reader interfaceDavid Robillard5-137/+101
2019-04-13Remove serd_uri_to_path()David Robillard5-62/+8
2019-04-13Make nodes opaqueDavid Robillard9-379/+439
2019-04-13Use opaque node APIDavid Robillard5-58/+83
2019-04-13Add node accessor APIDavid Robillard2-0/+52
2019-04-13Make serd_strtod API const-correctDavid Robillard7-11/+16
This is an API breakage, but a minor one (particularly since NULL is allowed) that avoids the flaw in the C API.
2019-04-13Rename SerdChunk to SerdStringViewDavid Robillard7-28/+30
2019-04-13Use char* for strings in public APIDavid Robillard14-311/+308
The constant casting just makes user code a mess, for no benefit.
2019-04-13Remove useless character countingDavid Robillard10-90/+50
2019-04-13Use SerdBuffer for mutable buffersDavid Robillard7-32/+47
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks.
2019-04-13Fix configuration summary outputDavid Robillard1-1/+1
2019-04-02Remove Tk dependency from benchmark scriptDavid Robillard1-2/+6
2019-03-31Add documentation main pageDavid Robillard1-0/+15
2019-03-30Fix parsing "a" abbreviation without padding whitespaceDavid Robillard5-14/+23
2019-03-30Improve documentationDavid Robillard7-244/+313
2019-03-23Update Doxygen configurationDavid Robillard1-52/+119
2019-03-18Pass file comparison test if difflib finds no changesDavid Robillard1-3/+5
The Python filecmp module seems to be a bit flaky on some platforms, so with this change the test only fails if actual visible changes are printed.
2019-03-18Seek to end before checking the size of stderr outputDavid Robillard1-1/+2
This fixes the error message checks in virtual environments where temporary files act weird.
2019-03-18Use distinct output paths for each test runDavid Robillard1-2/+2
Even though there is no parallelism, this seems to cause sporadic problems on Windows. Regardless, it's a good idea, since the test framework might become parallel some day.
2019-03-17Update autowaf and adapt to new APIDavid Robillard47-604/+976
2019-03-17Squashed 'waflib/' changes from 915dcb17..e7a29b6bDavid Robillard46-438/+871
e7a29b6b Upgrade to waf 2.0.15 8280f9de Add command for running executables from the build directory 8073c1ad Make make_simple_dox() safe in case of exception 70d03b82 Avoid use of global counter hacks for configuration display b7d689a4 Rewrite test framework 94deadf0 Automatically add options and move add_flags() to options context f4259ee4 Reduce system include path noise 927b6082 Automatically display configuration header c44b8f3b Set line justification from a constant in the wscript a48e26fd Automatically detect if wscript has a test hook ef66724d Save runtime variables in the environment 63bcbcd3 Clean up TestContext b1d95050 Add ExecutionContext for setting runtime environment 387c1dfa Add show_diff() and test_file_equals() utilities 29d4d293 Fix in-tree library paths 9fde01f4 Add custom configuration context 6d3612fd Add lib_path_name constant git-subtree-dir: waflib git-subtree-split: e7a29b6b9b2f842314244c23c14d8f8f560904e1