aboutsummaryrefslogtreecommitdiffstats
path: root/src/writer.c
AgeCommit message (Collapse)AuthorFilesLines
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
2011-02-16Make serd_writer_set_prefix return bool so it is compatible with ↵David Robillard1-9/+18
SerdPrefixSink and can be used with serd_env_foreach. Add SERD_STYLE_CURIED option to shorten URIs in output where possible. Fix serd_env_qualify. git-svn-id: http://svn.drobilla.net/serd/trunk@102 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-16Turtle rdf:type, xsd:decimal, xsd:integer, and xsd:float abbreviation.David Robillard1-1/+21
Automatically finish writing in serd_writer_free if necessary. git-svn-id: http://svn.drobilla.net/serd/trunk@99 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-10Make serd_uri_resolve return void, since it has no error case anyway.David Robillard1-6/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@96 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-28Fix crashes when passed NULL nodes.David Robillard1-3/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@88 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-26Tolerate NULL base URI.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@83 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-26Fix compilation in C++ (which won't implicitly cast 0 to an enum).David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@82 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-25Add `amalgamate' waf target for building single source file distribution.David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@78 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-25Change source header tag line.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@72 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-24Remove support for 5 and 6 byte UTF-8 characters.David Robillard1-8/+0
The UTF-8 spec supports this, but I can't even find real characters to test it with. There don't seem to be actual Unicode code points this high yet. If it can't be tested, it can't be useful. Gone. git-svn-id: http://svn.drobilla.net/serd/trunk@55 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-24Remove SerdString from public API in favour of more expressive (and not ↵David Robillard1-66/+63
necessarily inline with data payload) SerdNode. git-svn-id: http://svn.drobilla.net/serd/trunk@53 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Fix build (oops).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@51 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Faster serd_uri_serialise.David Robillard1-4/+5
git-svn-id: http://svn.drobilla.net/serd/trunk@50 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Fix abbreviation.David Robillard1-4/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@49 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Gracefully handle failure to emit statement.David Robillard1-1/+3
Add test cases for 5 and 6-byte UTF-* characters and undefined namespaces. git-svn-id: http://svn.drobilla.net/serd/trunk@48 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Shrink code.David Robillard1-92/+36
git-svn-id: http://svn.drobilla.net/serd/trunk@47 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Rearrange code, put common internal stuff in serd_internal.h.David Robillard1-2/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@46 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23Code cleanup (appease cpplint).David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@45 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-23SerdNodeType => SerdType.David Robillard1-14/+14
git-svn-id: http://svn.drobilla.net/serd/trunk@43 490d8e77-9747-427b-9fa3-0b8f29cee8a0