aboutsummaryrefslogtreecommitdiffstats
path: root/tools/console.c
AgeCommit message (Collapse)AuthorFilesLines
2023-12-02[WIP] Add support for URI hex escape decodingDavid Robillard1-0/+2
2023-12-02Use ZixAllocator directlyDavid Robillard1-4/+5
2023-12-02Use ZixStringView directlyDavid Robillard1-11/+12
2023-12-02Use SerdNodes instead of manual memory management in testsDavid Robillard1-49/+19
2023-12-02Add "contextual" output optionDavid Robillard1-0/+1
This is mainly for developer or power-user cases, where one wants to look at some data for investigation or debugging. In such cases, it's common for the set of prefixes to be implicitly known (because they are baked in to the application, for example), so printing them just produces a large amount of redundant noise. That said, it can also be useful programmatically, because it allows several snippets to be written independently and ultimately concatenated (with a header to define the prefixes) without redundancy.
2023-12-02Add SERD_READ_ORDERED to preserve blank node ordering in modelsDavid Robillard1-0/+1
2023-12-02Add model and serd-sort utilityDavid Robillard1-0/+57
With all the new functionality, the complexity of the serd-pipe command-line interface is starting to push the limits of available flags. So, instead of grafting on further options to control a model, this commit adds a new tool, serd-sort, which acts somewhat like a stripped-down serd-pipe that stores statements in a model in memory. This keeps the complexity (including the user-facing complexity) of any one tool down, since other more focused tools can be used for streaming tasks in a pipeline. In other words, abandon Swissarmyknifeism, take a page from the Unix philosophy, and try to expose the model functionality to the command-line in a dedicated focused tool. The model implementation is tested by using this tool to run a subset of the usual test suites, and a special suite to test statement sorting.
2023-12-02Add "longhand" mode to write rdf:type predicates normallyDavid Robillard1-0/+1
2023-12-02Factor out and rewrite command-line interfaceDavid Robillard1-16/+315
2023-12-02Split SERD_READ_VERBATIM into two more precise flagsDavid Robillard1-1/+2
Although the "verbatim" idea is nice and simple, more fine-grained control is necessary since these features (relative URI preservation and blank node label clash avoidance) are useful in different situations.
2023-12-02Add a reader flag to disable generated blank label avoidanceDavid Robillard1-0/+1
2023-12-02Collapse input and output options into single flagsDavid Robillard1-0/+70
2023-12-02[WIP] Generalize node construction APIDavid Robillard1-2/+2
2023-12-02Add support for custom allocatorsDavid Robillard1-2/+2
This makes it explicit in the API where memory is allocated, and allows the user to provide a custom allocator to avoid the use of the default system allocator for whatever reason.
2023-12-02[WIP] Add extensible logging APIDavid Robillard1-4/+7
2023-12-02Factor out serd_choose_syntax()David Robillard1-0/+19
2023-12-02Factor out opening output filesDavid Robillard1-0/+14
2023-12-02Factor out setting base URI from a pathDavid Robillard1-0/+20
2023-12-02Add support for reading multiple files at onceDavid Robillard1-0/+34
2023-12-02Move serdi to tools subdirectoryDavid Robillard1-0/+41
This separates the command-line tool code from the library implementation.