Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2023-12-02 | [WIP] Expand URIs in reader | David Robillard | 1 | -10/+14 | |
This expands relative and prefixed URIs in the reader on the stack, rather than passing them to the caller to be dealt with. This pushes these context-full forms to the edge of the system as much as possible to minimise the headaches they can cause. Towards having stricter guarantees about nodes and eliminating the CURIE node type altogether. | |||||
2023-12-02 | [WIP] Move SerdEnv mutation from writer to reader | David Robillard | 1 | -0/+2 | |
Writing having side-effects seems questionable in general, and this prepares things for expanding URIs in the reader. | |||||
2023-12-02 | Leave statement caret at the start of literals | David Robillard | 1 | -0/+7 | |
This allows a precise location to be reported for errors within literals, by adding the offset of the error in the literal to the caret. This will be used to report nice errors for things like regular expressions and supported XSD datatypes. | |||||
2023-12-02 | [WIP] Add extensible logging API | David Robillard | 1 | -3/+0 | |
2023-12-02 | [WIP] Add support for reading and writing variables | David Robillard | 1 | -0/+1 | |
[WIP] Command line option, move later? This adds a reader flag and serdi option for extending a syntax with support for SPARQL-like variables, for storing things like patterns or simple queries. | |||||
2023-12-02 | Simplify input stream API | David Robillard | 1 | -6/+5 | |
2023-12-02 | Rename SerdErrorFunc to SerdLogFunc | David Robillard | 1 | -1/+1 | |
2023-12-02 | Separate Turtle and TriG reading code | David Robillard | 1 | -6/+3 | |
2023-12-02 | Factor out NQuads reader | David Robillard | 1 | -6/+0 | |
2023-12-02 | Factor out NTriples reader | David Robillard | 1 | -0/+15 | |
2023-12-02 | Use Zix attributes directly | David Robillard | 1 | -2/+3 | |
2023-12-02 | Make r_err take a single line without trailing newline | David Robillard | 1 | -1/+1 | |
Towards having an actual logging (rather than printing) mechanism. | |||||
2023-12-02 | Be precise about the meaning of node "length" and "size" | David Robillard | 1 | -2/+2 | |
2023-12-02 | Handle read errors more precisely | David Robillard | 1 | -0/+3 | |
2023-12-02 | Simplify reader stack pushing code | David Robillard | 1 | -6/+6 | |
2023-12-02 | Remove serd_reader_set_default_graph() | David Robillard | 1 | -1/+0 | |
2023-12-02 | Add SerdWorld for shared library state | David Robillard | 1 | -0/+2 | |
2023-12-02 | Improve reader error handling | David Robillard | 1 | -8/+11 | |
2023-12-02 | Add debug checks for node padding | David Robillard | 1 | -5/+4 | |
2023-12-02 | Remove datatype and language from reader context | David Robillard | 1 | -2/+0 | |
2023-12-02 | Simplify stack management by popping in bulk at higher levels | David Robillard | 1 | -15/+0 | |
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. This is slightly more efficient (due to avoiding many pop calls), but also more resilient since "leaks" at deeper levels of recursion get nuked by some caller regardless of what was pushed. This should help prevent future regressions like f6437f606 (Fix memory consumption when reading documents). | |||||
2023-12-02 | Use a fixed-size reader stack | David Robillard | 1 | -30/+32 | |
2023-12-02 | Add SerdSink interface and hide implementations | David Robillard | 1 | -21/+16 | |
2023-12-02 | Merge datatype/language into node | David Robillard | 1 | -1/+1 | |
This moves closer to the sord API, and is more convenient in most cases. | |||||
2023-12-02 | Make nodes opaque | David Robillard | 1 | -4/+5 | |
2023-12-02 | Use more human-readable status codes | David Robillard | 1 | -2/+2 | |
2023-12-02 | Split up public API header | David Robillard | 1 | -2/+8 | |
2023-12-02 | Rename function types for consistency | David Robillard | 1 | -5/+5 | |
2023-12-02 | Rename SerdType to SerdNodeType | David Robillard | 1 | -6/+9 | |
The old name will be even more ambiguous with the increased scope. | |||||
2023-12-02 | Use char* for strings in public API | David Robillard | 1 | -5/+7 | |
The constant casting just makes user code a mess, for no benefit. | |||||
2023-12-02 | Remove useless character counting | David Robillard | 1 | -5/+0 | |
2023-05-03 | Make serd_reader_read_chunk() work with NQuads | David Robillard | 1 | -0/+3 | |
2023-04-06 | Improve pretty-printing of lists and inline subjects | David Robillard | 1 | -6/+0 | |
2023-04-05 | Use distinct include guards for internal headers | David Robillard | 1 | -4/+4 | |
2022-12-20 | Avoid using ASCII grave as a quote | David Robillard | 1 | -1/+1 | |
2022-11-25 | Always handle the return value of eat_byte_safe() | David Robillard | 1 | -4/+13 | |
2022-11-24 | Gracefully handle bad characters in Turtle blank node syntax | David Robillard | 1 | -1/+2 | |
2022-08-31 | Adopt REUSE machine-readable licensing standard | David Robillard | 1 | -15/+2 | |
2021-05-31 | Make most function parameters const | David Robillard | 1 | -1/+1 | |
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-01-02 | Use email address instead of website for attribution | David Robillard | 1 | -1/+1 | |
2020-12-31 | Format all code with clang-format | David Robillard | 1 | -87/+99 | |
2020-11-10 | Add const, pure, and malloc function attributes | David Robillard | 1 | -3/+3 | |
2020-10-28 | Simplify reader byte reading interface | David Robillard | 1 | -10/+3 | |
This eliminates eat_byte() and the way it conflates the status of advancing the source with the current character, which can cause problems with custom sinks. | |||||
2020-08-15 | Clean up reader error handling | David Robillard | 1 | -13/+12 | |
2020-08-15 | Make r_err() return a status | David Robillard | 1 | -3/+4 | |
2020-08-15 | Move prototype to a more sensible location | David Robillard | 1 | -4/+4 | |
2020-08-14 | Make serd_stack_push() return a void pointer | David Robillard | 1 | -1/+1 | |
This avoids some unnecessary type punning. | |||||
2020-08-14 | Clean up and separate internal headers | David Robillard | 1 | -1/+93 | |
2020-06-21 | Clean up includes | David Robillard | 1 | -1/+5 | |
2019-10-27 | Use int as internal character type so it can represent EOF | David Robillard | 1 | -12/+19 | |