aboutsummaryrefslogtreecommitdiffstats
path: root/src/writer.c
AgeCommit message (Collapse)AuthorFilesLines
2012-03-08Add serd_writer_get_env().David Robillard1-38/+64
Add serd_node_new_uri_from_path() and serd_file_uri_parse() and implement proper URI to/from path hex escaping, etc. Add serd_uri_serialise_relative() for making URIs relative to a base where possible (by chopping a common prefix and adding dot segments). Make URIs serialised by the writer properly escape characters. git-svn-id: http://svn.drobilla.net/serd/trunk@330 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-03Add serd_chunk_sink for easy writing to a string.David Robillard1-0/+19
git-svn-id: http://svn.drobilla.net/serd/trunk@329 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Trim code.David Robillard1-4/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@322 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Remove dead code.David Robillard1-8/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@318 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Trim code.David Robillard1-16/+9
git-svn-id: http://svn.drobilla.net/serd/trunk@317 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Further isolate collection writing stuff.David Robillard1-34/+24
Trim code. git-svn-id: http://svn.drobilla.net/serd/trunk@316 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Avoid comparing against NS_XSD several times per node.David Robillard1-6/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@315 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Tidy.David Robillard1-7/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@314 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Print command name in serdi error messages.David Robillard1-10/+6
Trim code. git-svn-id: http://svn.drobilla.net/serd/trunk@313 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-20Fix collection writing memory leaks.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@308 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-20Break collection writing out into a simple separate case to avoid confusing ↵David Robillard1-22/+24
the triple writing code. git-svn-id: http://svn.drobilla.net/serd/trunk@307 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-20Implement pretty-printing for collections.David Robillard1-44/+157
git-svn-id: http://svn.drobilla.net/serd/trunk@305 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Avoid non-portable %zu (offset is of dubious value in this case anyway).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@295 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Fix compilation on sane platforms.David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@292 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Support compilation as C++ under MSVC++David Robillard1-6/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@291 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@285 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-14Lint.David Robillard1-4/+4
git-svn-id: http://svn.drobilla.net/serd/trunk@283 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-26Escape non-printable ASCII characters in ASCII output (fix #795).David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@278 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25Near 100% branch coverage.David Robillard1-20/+15
git-svn-id: http://svn.drobilla.net/serd/trunk@277 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25100% test coverage.David Robillard1-9/+24
git-svn-id: http://svn.drobilla.net/serd/trunk@276 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-23Escape ASCII control characters in output (e.g. fix problems with stringDavid Robillard1-8/+9
literals that start with a backspace). git-svn-id: http://svn.drobilla.net/serd/trunk@263 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-23Add serd_file_sink for the common case of writing to a FILE* stream.David Robillard1-0/+9
git-svn-id: http://svn.drobilla.net/serd/trunk@262 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-15Remove peek_string, use exactly 1 page as a read buffer.David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@256 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-12Make bulk writer internal and inlinable to avoid function call overhead in ↵David Robillard1-60/+79
the writer. git-svn-id: http://svn.drobilla.net/serd/trunk@254 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-12Reuse write context node memory where possible.David Robillard1-33/+51
git-svn-id: http://svn.drobilla.net/serd/trunk@248 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-11Move all #ifdef gunk to serd_internal.h.David Robillard1-2/+2
Centralise file open and buffer allocation to localize platform tweaks. git-svn-id: http://svn.drobilla.net/serd/trunk@244 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-11Improve write performance by doing bulk writes for unescaped substrings.David Robillard1-0/+16
git-svn-id: http://svn.drobilla.net/serd/trunk@238 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-09-29Tidy.David Robillard1-4/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@218 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-07-26Fix pretty printing of successive blank descriptions, i.e. "] , [".David Robillard1-3/+9
git-svn-id: http://svn.drobilla.net/serd/trunk@209 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-06-19Fix abbreviation of repeated predicates with blank objects, and abbreviation ↵David Robillard1-2/+4
memory errors (hopefully fix ticket #710). Add example test from ticket #710 (as of this revision, this graph, tests/test-blank-cont.ttl, correctly serialises with serdi -i turtle -o turtle, though the indentation is a bit off...). git-svn-id: http://svn.drobilla.net/serd/trunk@205 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-24Remove unused object component of write context.David Robillard1-9/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@192 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-19Express inlining information via statement flags rather than node types.David Robillard1-66/+71
Correctly support inline blank subjects (e.g. "[ :a :b ] :c :d ."). git-svn-id: http://svn.drobilla.net/serd/trunk@184 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-18Add test to ensure blank node IDs don't clash with generated IDs.David Robillard1-11/+41
Add handle destructor parameter to serd_reader_new. Add serd_reader_get_handle. Rename serd_reader_set_blank_prefix to serd_reader_add_blank_prefix. Rename serd_reader_read_file to serd_reader_read_file_handle. Add new serd_reader_read_file that takes a path/URI parameter. Add serdi -i option to select input syntax. Add serdi -p and -c options to add/chop a prefix to/from blank IDs. Add optional base_uri parameter to serd_env_new. Add serd_writer_chop_blank_prefix. Bump version to 0.3.0. git-svn-id: http://svn.drobilla.net/serd/trunk@183 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Use conventional string lengths not including NULL terminatorDavid Robillard1-11/+11
git-svn-id: http://svn.drobilla.net/serd/trunk@174 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Only abbreviate rdf:type to "a" in predicate position.David Robillard1-12/+13
git-svn-id: http://svn.drobilla.net/serd/trunk@173 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Print newline after @prefix statements.David Robillard1-0/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@171 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Correctly abbreviate repeated inline blank node objects ("] , [").David Robillard1-6/+19
git-svn-id: http://svn.drobilla.net/serd/trunk@170 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-11Fix crash when setting an identical namespace prefix.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@169 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-11Record whether strings contains quotes or newlines for smart selection of ↵David Robillard1-23/+38
long strings vs short strings in writer output. git-svn-id: http://svn.drobilla.net/serd/trunk@167 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-06Make writer methods directly compatible with reader callbacks.David Robillard1-23/+30
Connect writer directly to reader in serdi. git-svn-id: http://svn.drobilla.net/serd/trunk@164 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-05Tidy.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@161 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-04Fix too-short buffer.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@156 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-30Use descriptive return codes instead of boolDavid Robillard1-14/+16
git-svn-id: http://svn.drobilla.net/serd/trunk@154 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-30Consistent error messagesDavid Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@152 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-27Don't hide pointers in typedefs.David Robillard1-16/+16
git-svn-id: http://svn.drobilla.net/serd/trunk@150 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-24Fix reader memory stack use and verify read_object fully clears its stack.David Robillard1-18/+39
Make abbreviation in writer not assume equivalent nodes have equivalent addresses (abbreviate more than on input if triples are sorted correctly, e.g. abbrevate ntriples) git-svn-id: http://svn.drobilla.net/serd/trunk@149 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-23Tidy.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/serd/trunk@145 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-22Fix license header (awk oops).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@143 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-22Switch to ISC license (legally equivalent to MIT license but with less ↵David Robillard1-20/+12
obnoxious lawyer noise). git-svn-id: http://svn.drobilla.net/serd/trunk@139 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-25Switch to 2-clause BSD license.David Robillard1-18/+24
git-svn-id: http://svn.drobilla.net/serd/trunk@105 490d8e77-9747-427b-9fa3-0b8f29cee8a0