Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2021-03-08 | Pass context flags to write_sep() | David Robillard | 1 | -22/+24 | |
2021-03-08 | Add initial flags to write context | David Robillard | 1 | -21/+24 | |
2021-03-08 | Simplify internal writer context API | David Robillard | 1 | -31/+31 | |
2021-03-08 | Strengthen writer statement preconditions | David Robillard | 1 | -1/+3 | |
2021-03-08 | Add option for writing terse output without newlines | David Robillard | 1 | -4/+8 | |
2021-03-08 | Factor out writing top level separator | David Robillard | 1 | -7/+10 | |
2021-03-08 | WIP: Write invalid characters in URIs with percent encoding | David Robillard | 1 | -5/+9 | |
2021-03-08 | Use simpler names for statement flags | David Robillard | 1 | -18/+15 | |
2021-03-08 | Simplify streaming API and improve pretty printing | David Robillard | 1 | -144/+236 | |
This removes the obligation from the caller to correctly maintain flags to describe the current anonymous context, instead making the writer handle this itself as much as possible. Flags remain for the cases the writer can not infer from context: the start of anonymous subject and object nodes. | |||||
2021-03-08 | Cache commonly used nodes in the world | David Robillard | 1 | -9/+8 | |
2021-03-08 | Separate ByteSink from Writer | David Robillard | 1 | -7/+6 | |
2021-03-08 | Expose SerdByteSink in public API | David Robillard | 1 | -5/+4 | |
2021-03-08 | Simplify writer style options | David Robillard | 1 | -2/+3 | |
2021-03-08 | Avoid writing invalid prefixed name prefixes | David Robillard | 1 | -1/+2 | |
2021-03-08 | Replace multiple stream callbacks with SerdEvent | David Robillard | 1 | -5/+21 | |
This makes plumbing easier since everything goes through the same "stream" and only one callback is required to handling everything. It's also more easily extensible in case more event types need to be added in the future. | |||||
2021-03-08 | Add SerdStatement | David Robillard | 1 | -6/+8 | |
2021-03-08 | Move SerdField to public API | David Robillard | 1 | -46/+40 | |
2021-03-08 | Simplify SerdEnv API | David Robillard | 1 | -2/+2 | |
2021-03-08 | Move error handling to world | David Robillard | 1 | -27/+16 | |
2021-03-08 | Add SerdWorld for shared library state | David Robillard | 1 | -12/+6 | |
2021-03-08 | Use a fixed-size reader stack | David Robillard | 1 | -1/+5 | |
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. | |||||
2021-03-07 | Add SerdSink interface and hide implementations | David Robillard | 1 | -2/+21 | |
2021-03-07 | Use consistent naming for function types | David Robillard | 1 | -4/+4 | |
2021-03-07 | Bring read/write interface closer to C standard | David Robillard | 1 | -15/+13 | |
2021-03-07 | Simplify node construction API | David Robillard | 1 | -25/+26 | |
2021-03-07 | Simplify URI API and implementation | David Robillard | 1 | -12/+15 | |
2021-03-07 | Merge datatype/language into node | David Robillard | 1 | -28/+20 | |
This moves closer to the sord API, and is more convenient in most cases. | |||||
2021-03-07 | Remove SERD_NOTHING node type | David Robillard | 1 | -3/+0 | |
2021-03-07 | Make nodes opaque | David Robillard | 1 | -108/+114 | |
2021-03-07 | Remove "get" from accessor names | David Robillard | 1 | -5/+8 | |
2021-03-07 | Rename SerdStyle to SerdWriterFlags | David Robillard | 1 | -24/+24 | |
2021-03-07 | Rename SerdURI to SerdURIView | David Robillard | 1 | -14/+14 | |
2021-03-07 | Rename SerdChunk to SerdStringView | David Robillard | 1 | -11/+5 | |
2021-03-07 | Use char* for strings in public API | David Robillard | 1 | -36/+30 | |
The constant casting just makes user code a mess, for no benefit. | |||||
2021-03-07 | Remove useless character counting | David Robillard | 1 | -4/+3 | |
2021-03-07 | Add SerdBuffer type for mutable buffers | David Robillard | 1 | -7/+8 | |
This avoids const violations from abusing SerdChunk as a mutable buffer for string sinks. | |||||
2021-02-15 | Fix writing long literals with triple quotes | David Robillard | 1 | -2/+10 | |
2021-01-09 | Add missing pure attributes | David Robillard | 1 | -1/+1 | |
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 | -751/+814 | |
2020-12-31 | Avoid "else" after "break" and "return" | David Robillard | 1 | -16/+31 | |
2020-11-14 | Refuse to write relative URI references to NTriples | David Robillard | 1 | -0/+15 | |
2020-11-14 | Simplify abbreviated URI writing code | David Robillard | 1 | -13/+14 | |
2020-11-13 | Simplify writer statement validity checking | David Robillard | 1 | -5/+3 | |
2020-11-13 | Improve add and chop prefix functions when given empty strings | David Robillard | 1 | -4/+5 | |
2020-11-11 | Add nonnull and nullable attributes to API | David Robillard | 1 | -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-16 | Ensure that all free methods tolerate NULL | David Robillard | 1 | -0/+4 | |
2020-08-14 | Fix incorrect separator length | David Robillard | 1 | -1/+1 | |
2020-08-14 | Fix Wswitch-enum warnings | David Robillard | 1 | -6/+4 | |
2020-08-14 | Clean up and separate internal headers | David Robillard | 1 | -0/+12 | |