Browse Source

Update serd

tags/1.9.7
falkTX 10 years ago
parent
commit
749771bd64
100 changed files with 111 additions and 286 deletions
  1. +1
    -1
      source/includes/serd
  2. +1
    -1
      source/modules/lilv/Makefile
  3. +0
    -29
      source/modules/lilv/serd-0.21.1/PACKAGING
  4. +0
    -168
      source/modules/lilv/serd-0.21.1/waf
  5. +0
    -0
      source/modules/lilv/serd-0.22.0/AUTHORS
  6. +1
    -1
      source/modules/lilv/serd-0.22.0/COPYING
  7. +17
    -10
      source/modules/lilv/serd-0.22.0/INSTALL
  8. +5
    -2
      source/modules/lilv/serd-0.22.0/NEWS
  9. +0
    -0
      source/modules/lilv/serd-0.22.0/README
  10. +0
    -0
      source/modules/lilv/serd-0.22.0/doc/layout.xml
  11. +0
    -0
      source/modules/lilv/serd-0.22.0/doc/reference.doxygen.in
  12. +0
    -0
      source/modules/lilv/serd-0.22.0/doc/serdi.1
  13. +0
    -0
      source/modules/lilv/serd-0.22.0/doc/style.css
  14. +1
    -1
      source/modules/lilv/serd-0.22.0/serd.pc.in
  15. +1
    -1
      source/modules/lilv/serd-0.22.0/serd/serd.h
  16. +0
    -0
      source/modules/lilv/serd-0.22.0/src/env.c
  17. +1
    -1
      source/modules/lilv/serd-0.22.0/src/node.c
  18. +58
    -54
      source/modules/lilv/serd-0.22.0/src/reader.c
  19. +0
    -0
      source/modules/lilv/serd-0.22.0/src/serd_internal.h
  20. +22
    -14
      source/modules/lilv/serd-0.22.0/src/serdi.c
  21. +0
    -0
      source/modules/lilv/serd-0.22.0/src/string.c
  22. +0
    -0
      source/modules/lilv/serd-0.22.0/src/uri.c
  23. +3
    -3
      source/modules/lilv/serd-0.22.0/src/writer.c
  24. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/HYPHEN_MINUS_in_localName.nt
  25. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRIREF_datatype.nt
  26. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRI_spo.nt
  27. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRI_with_all_punctuation.nt
  28. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LICENSE
  29. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1.nt
  30. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_all_controls.nt
  31. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_all_punctuation.nt
  32. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_ascii_boundaries.nt
  33. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL2_ascii_boundaries.nt
  34. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt
  35. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt
  36. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt
  37. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt
  38. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt
  39. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt
  40. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt
  41. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt
  42. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/README
  43. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/anonymous_blank_node_object.nt
  44. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/anonymous_blank_node_subject.nt
  45. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_a_predicate.nt
  46. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_decimal.nt
  47. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_double.nt
  48. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_as_object.nt
  49. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_as_subject.nt
  50. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_containing_collection.nt
  51. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt
  52. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/collection_object.nt
  53. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/collection_subject.nt
  54. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/comment_following_PNAME_NS.nt
  55. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/double_lower_case_e.nt
  56. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/empty_collection.nt
  57. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/first.nt
  58. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_object.nt
  59. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_subject.nt
  60. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt
  61. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_leading_digit.nt
  62. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt
  63. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt
  64. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/langtagged_LONG_with_subtag.nt
  65. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/langtagged_non_LONG.nt
  66. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/lantag_with_subtag.nt
  67. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/last.nt
  68. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_false.nt
  69. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_true.nt
  70. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_BACKSPACE.nt
  71. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt
  72. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt
  73. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_FORM_FEED.nt
  74. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_LINE_FEED.nt
  75. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt
  76. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_numeric_escape4.nt
  77. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt
  78. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt
  79. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_leading_digit.nt
  80. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_leading_underscore.nt
  81. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt
  82. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_non_leading_extras.nt
  83. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/localname_with_COLON.nt
  84. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/negative_numeric.nt
  85. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/nested_blankNodePropertyLists.nt
  86. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/nested_collection.nt
  87. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_PNAME_NS.nt
  88. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru
  89. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_localName.nt
  90. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/numeric_with_leading_0.nt
  91. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/objectList_with_two_objects.nt
  92. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/percent_escaped_localName.nt
  93. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/positive_numeric.nt
  94. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/predicateObjectList_with_two_objectLists.nt
  95. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/prefix_reassigned_and_used.nt
  96. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/repeated_semis_not_at_end.nt
  97. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/reserved_escaped_localName.nt
  98. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/reserved_escaped_localName.ttl.thru
  99. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/sole_blankNodePropertyList.nt
  100. +0
    -0
      source/modules/lilv/serd-0.22.0/tests/TurtleTests/turtle-eval-struct-01.nt

+ 1
- 1
source/includes/serd View File

@@ -1 +1 @@
../modules/lilv/serd-0.21.1/serd/
../modules/lilv/serd-0.22.0/serd/

+ 1
- 1
source/modules/lilv/Makefile View File

@@ -10,7 +10,7 @@ include ../Makefile.mk

# ----------------------------------------------------------------------------------------------------------------------------

SERD_VERSION = 0.21.1
SERD_VERSION = 0.22.0
SORD_VERSION = 0.13.0
SRATOM_VERSION = 0.4.7
LILV_VERSION = 0.21.3


+ 0
- 29
source/modules/lilv/serd-0.21.1/PACKAGING View File

@@ -1,29 +0,0 @@
This library is designed to allow parallel installation of different major
versions. To facilitate this, the shared library name, include directory, and
pkg-config file are suffixed with the major version number of the library.

For example, if this library was named "foo" and at version 1.x.y:

/usr/include/foo-1/foo/foo.h
/usr/lib/foo-1.so.1.x.y
/usr/lib/pkgconfig/foo-1.pc

Dependencies check for pkg-config name "foo-1" and will build
against a compatible version 1, regardless any other installed versions.

*** IMPORTANT GUIDELINES FOR PACKAGERS ***

Packages should follow the same conventions as above, i.e. include the major
version (and only the major version) in the name of the package. Continuing the
example above, the package(s) would be named foo-1 and foo-1-dev. This way,
if/when version 2 comes out, it may be installed at the same time as version 1
without breaking anything.

Please do not create packages of this library that do not follow these
guidelines, you will break things and cause unnecessary headaches. Please do
not use any number as a suffix other than the actual major version number of the
upstream source package.

Because program and documentation names are not versioned, these should be
included in separate packages which may replace previous versions, since
there is little use in having parallel installations of them.

+ 0
- 168
source/modules/lilv/serd-0.21.1/waf
File diff suppressed because it is too large
View File


source/modules/lilv/serd-0.21.1/AUTHORS → source/modules/lilv/serd-0.22.0/AUTHORS View File


source/modules/lilv/serd-0.21.1/COPYING → source/modules/lilv/serd-0.22.0/COPYING View File

@@ -1,4 +1,4 @@
Copyright 2011-2014 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above

source/modules/lilv/serd-0.21.1/INSTALL → source/modules/lilv/serd-0.22.0/INSTALL View File

@@ -8,11 +8,7 @@ Building this software requires only Python. To install with default options:

./waf configure
./waf
./waf install

You may need to become root for the install stage, for example:

sudo ./waf install
./waf install # or sudo ./waf install

Configuration Options
---------------------
@@ -40,12 +36,20 @@ invoked:
* CPPFLAGS: C preprocessor options
* LINKFLAGS: Linker options

Installation Directories
------------------------
Library Versioning
------------------

This library uses semantic versioning <http://semver.org/>.

Several major versions can be installed in parallel. The shared library name,
include directory, and pkg-config file are suffixed with the major version
number. For example, a library named "foo" at version 1.x.y might install:

The --prefix option (or the PREFIX environment variable) can be used to change
the prefix which all files are installed under. There are also several options
allowing for more fine-tuned control, see the --help output for details.
/usr/include/foo-1/foo/foo.h
/usr/lib/foo-1.so.1.x.y
/usr/lib/pkgconfig/foo-1.pc

Dependencies can check for the package "foo-1" with pkg-config.

Packaging
---------
@@ -57,3 +61,6 @@ which adds a prefix to all install paths. For example:
./waf configure --prefix=/usr
./waf
./waf install --destdir=/tmp/package

Packages should allow parallel installation of several major versions. For
example, the above would be packaged as "foo-1".

source/modules/lilv/serd-0.21.1/NEWS → source/modules/lilv/serd-0.22.0/NEWS View File

@@ -1,16 +1,19 @@
serd (0.21.1) unstable;
serd (0.22.0) stable;

* Remove dependence on fmax() to avoid portability issues
* Fix serd_reader_read_file() for URIs with escaped characters (spaces)
* Add serd_reader_set_strict() and -l (lax) option to serdi to tolerate
parsing URIs with escaped characters
* Fix reading statements ending with a blank then dot with no space
* Fix clash resolution when a blank node ID prefix is set
* Fix serializing fractional decimals that would round up
* Add support for Turtle named inline nodes extension
* Report errors for invalid IRI characters and missing terminators
* Show serdi errors in standard format
* Fix warnings when building with ISO C++ compilers
* Upgrade to waf 1.8.14

-- David Robillard <d@drobilla.net> Sat, 04 Apr 2015 16:22:17 -0400
-- David Robillard <d@drobilla.net> Thu, 08 Oct 2015 15:34:18 -0400

serd (0.20.0) stable;


source/modules/lilv/serd-0.21.1/README → source/modules/lilv/serd-0.22.0/README View File


source/modules/lilv/serd-0.21.1/doc/layout.xml → source/modules/lilv/serd-0.22.0/doc/layout.xml View File


source/modules/lilv/serd-0.21.1/doc/reference.doxygen.in → source/modules/lilv/serd-0.22.0/doc/reference.doxygen.in View File


source/modules/lilv/serd-0.21.1/doc/serdi.1 → source/modules/lilv/serd-0.22.0/doc/serdi.1 View File


source/modules/lilv/serd-0.21.1/doc/style.css → source/modules/lilv/serd-0.22.0/doc/style.css View File


source/modules/lilv/serd-0.21.1/serd.pc.in → source/modules/lilv/serd-0.22.0/serd.pc.in View File

@@ -6,6 +6,6 @@ includedir=@INCLUDEDIR@
Name: Serd
Version: @SERD_VERSION@
Description: Lightweight RDF syntax library
Libs: -L${libdir} -l@LIB_SERD@ -lm
Libs: -L${libdir} -l@LIB_SERD@
Libs.private: -lm
Cflags: -I${includedir}/serd-@SERD_MAJOR_VERSION@

source/modules/lilv/serd-0.21.1/serd/serd.h → source/modules/lilv/serd-0.22.0/serd/serd.h View File

@@ -1,5 +1,5 @@
/*
Copyright 2011-2014 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above

source/modules/lilv/serd-0.21.1/src/env.c → source/modules/lilv/serd-0.22.0/src/env.c View File


source/modules/lilv/serd-0.21.1/src/node.c → source/modules/lilv/serd-0.22.0/src/node.c View File

@@ -1,5 +1,5 @@
/*
Copyright 2011-2014 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above

source/modules/lilv/serd-0.21.1/src/reader.c → source/modules/lilv/serd-0.22.0/src/reader.c View File

@@ -1,5 +1,5 @@
/*
Copyright 2011-2014 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
@@ -635,7 +635,7 @@ read_PN_CHARS(SerdReader* reader, Ref dest)
if ((c & 0x80)) { // Multi-byte character
return !read_utf8_character(reader, dest, eat_byte_safe(reader, c));
}
if (is_alpha(c) || is_digit(c) || c == '_' || c == '-') {
push_byte(reader, dest, eat_byte_safe(reader, c));
return true;
@@ -656,7 +656,7 @@ read_PERCENT(SerdReader* reader, Ref dest)
}
return false;
}
static SerdStatus
read_PLX(SerdReader* reader, Ref dest)
{
@@ -884,7 +884,7 @@ read_number(SerdReader* reader, Ref* dest, Ref* datatype, bool* ate_dot)
*ate_dot = true; // Force caller to deal with stupid grammar
return true; // Next byte is not a number character, done
}
push_byte(reader, ref, '.');
read_0_9(reader, ref, false);
}
@@ -1035,11 +1035,12 @@ read_BLANK_NODE_LABEL(SerdReader* reader, bool* ate_dot)
}

if (reader->syntax == SERD_TURTLE) {
if (is_digit(n->buf[1])) {
if (n->buf[0] == 'b') {
((char*)n->buf)[0] = 'B'; // Prevent clash
if (is_digit(n->buf[reader->bprefix_len + 1])) {
if ((n->buf[reader->bprefix_len]) == 'b') {
((char*)n->buf)[reader->bprefix_len] = 'B'; // Prevent clash
reader->seen_genid = true;
} else if (reader->seen_genid && n->buf[0] == 'B') {
} else if (reader->seen_genid &&
n->buf[reader->bprefix_len] == 'B') {
r_err(reader, SERD_ERR_ID_CLASH,
"found both `b' and `B' blank IDs, prefix required\n");
return pop_node(reader, ref);
@@ -1088,56 +1089,48 @@ read_blankName(SerdReader* reader)
}

static bool
read_blank(SerdReader* reader, ReadContext ctx, bool subject, Ref* dest, bool* ate_dot)
read_anon(SerdReader* reader, ReadContext ctx, bool subject, Ref* dest)
{
const SerdStatementFlags old_flags = *ctx.flags;
bool empty;
switch (peek_byte(reader)) {
case '_':
return (*dest = read_BLANK_NODE_LABEL(reader, ate_dot));
case '[':
eat_byte_safe(reader, '[');
if ((empty = peek_delim(reader, ']'))) {
*ctx.flags |= (subject) ? SERD_EMPTY_S : SERD_EMPTY_O;
} else {
*ctx.flags |= (subject) ? SERD_ANON_S_BEGIN : SERD_ANON_O_BEGIN;
if (peek_delim(reader, '=')) {
if (!(*dest = read_blankName(reader)) ||
!eat_delim(reader, ';')) {
return false;
}
eat_byte_safe(reader, '[');
if ((empty = peek_delim(reader, ']'))) {
*ctx.flags |= (subject) ? SERD_EMPTY_S : SERD_EMPTY_O;
} else {
*ctx.flags |= (subject) ? SERD_ANON_S_BEGIN : SERD_ANON_O_BEGIN;
if (peek_delim(reader, '=')) {
if (!(*dest = read_blankName(reader)) ||
!eat_delim(reader, ';')) {
return false;
}
}
}

if (!*dest) {
*dest = blank_id(reader);
}
if (ctx.subject) {
TRY_RET(emit_statement(reader, ctx, *dest, 0, 0));
}

if (!*dest) {
*dest = blank_id(reader);
ctx.subject = *dest;
if (!empty) {
*ctx.flags &= ~(SERD_LIST_CONT);
if (!subject) {
*ctx.flags |= SERD_ANON_CONT;
}
if (ctx.subject) {
TRY_RET(emit_statement(reader, ctx, *dest, 0, 0));
bool ate_dot_in_list = false;
read_predicateObjectList(reader, ctx, &ate_dot_in_list);
if (ate_dot_in_list) {
return r_err(reader, SERD_ERR_BAD_SYNTAX, "`.' inside blank\n");
}

ctx.subject = *dest;
if (!empty) {
*ctx.flags &= ~(SERD_LIST_CONT);
if (!subject) {
*ctx.flags |= SERD_ANON_CONT;
}
bool ate_dot_in_list = false;
read_predicateObjectList(reader, ctx, &ate_dot_in_list);
if (ate_dot_in_list) {
return r_err(reader, SERD_ERR_BAD_SYNTAX, "`.' inside blank\n");
}
read_ws_star(reader);
if (reader->end_sink) {
reader->end_sink(reader->handle, deref(reader, *dest));
}
*ctx.flags = old_flags;
read_ws_star(reader);
if (reader->end_sink) {
reader->end_sink(reader->handle, deref(reader, *dest));
}
return (eat_byte_check(reader, ']') == ']');
case '(':
return read_collection(reader, ctx, dest);
default: return false; // never reached
*ctx.flags = old_flags;
}
return (eat_byte_check(reader, ']') == ']');
}

// Recurses, calling statement_sink for every statement encountered.
@@ -1164,11 +1157,16 @@ read_object(SerdReader* reader, ReadContext ctx, bool* ate_dot)
case '\0':
case ')':
return false;
case '[': case '(':
case '[':
emit = false;
// fall through
TRY_THROW(ret = read_anon(reader, ctx, false, &o));
break;
case '(':
emit = false;
TRY_THROW(ret = read_collection(reader, ctx, &o));
break;
case '_':
TRY_THROW(ret = read_blank(reader, ctx, false, &o, ate_dot));
TRY_THROW(ret = (o = read_BLANK_NODE_LABEL(reader, ate_dot)));
break;
case '<': case ':':
TRY_THROW(ret = read_iri(reader, &o, ate_dot));
@@ -1333,11 +1331,17 @@ read_subject(SerdReader* reader, ReadContext ctx, bool* nested)
Ref subject = 0;
bool ate_dot = false;
switch (peek_byte(reader)) {
case '[': case '(':
case '[':
*nested = true;
// nobreak
read_anon(reader, ctx, true, &subject);
break;
case '(':
*nested = true;
read_collection(reader, ctx, &subject);
break;
case '_':
read_blank(reader, ctx, true, &subject, &ate_dot);
*nested = false;
subject = read_BLANK_NODE_LABEL(reader, &ate_dot);
break;
default:
read_iri(reader, &subject, &ate_dot);

source/modules/lilv/serd-0.21.1/src/serd_internal.h → source/modules/lilv/serd-0.22.0/src/serd_internal.h View File


source/modules/lilv/serd-0.21.1/src/serdi.c → source/modules/lilv/serd-0.22.0/src/serdi.c View File

@@ -1,5 +1,5 @@
/*
Copyright 2011-2013 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
@@ -21,6 +21,9 @@
#include <stdlib.h>
#include <string.h>

#define SERDI_ERROR(msg) fprintf(stderr, "serdi: " msg);
#define SERDI_ERRORF(fmt, ...) fprintf(stderr, "serdi: " fmt, __VA_ARGS__);

typedef struct {
SerdEnv* env;
SerdWriter* writer;
@@ -41,6 +44,7 @@ static int
print_usage(const char* name, bool error)
{
FILE* const os = error ? stderr : stdout;
fprintf(os, "%s", error ? "\n" : "");
fprintf(os, "Usage: %s [OPTION]... INPUT [BASE_URI]\n", name);
fprintf(os, "Read and write RDF syntax.\n");
fprintf(os, "Use - for INPUT to read from standard input.\n\n");
@@ -68,17 +72,17 @@ set_syntax(SerdSyntax* syntax, const char* name)
} else if (!strcmp(name, "ntriples")) {
*syntax = SERD_NTRIPLES;
} else {
fprintf(stderr, "Unknown input format `%s'\n", name);
SERDI_ERRORF("unknown syntax `%s'\n", name);
return false;
}
return true;
}

static int
bad_arg(const char* name, char opt)
missing_arg(const char* name, char opt)
{
fprintf(stderr, "%s: Bad or missing value for -%c\n", name, opt);
return 1;
SERDI_ERRORF("option requires an argument -- '%c'\n", opt);
return print_usage(name, true);
}

static SerdStatus
@@ -133,36 +137,40 @@ main(int argc, char** argv)
++a;
break;
} else if (argv[a][1] == 'i') {
if (++a == argc || !set_syntax(&input_syntax, argv[a])) {
return bad_arg(argv[0], 'i');
if (++a == argc) {
return missing_arg(argv[0], 'i');
} else if (!set_syntax(&input_syntax, argv[a])) {
return print_usage(argv[0], true);
}
} else if (argv[a][1] == 'o') {
if (++a == argc || !set_syntax(&output_syntax, argv[a])) {
return bad_arg(argv[0], 'o');
if (++a == argc) {
return missing_arg(argv[0], 'o');
} else if (!set_syntax(&output_syntax, argv[a])) {
return print_usage(argv[0], true);
}
} else if (argv[a][1] == 'p') {
if (++a == argc) {
return bad_arg(argv[0], 'p');
return missing_arg(argv[0], 'p');
}
add_prefix = (const uint8_t*)argv[a];
} else if (argv[a][1] == 'c') {
if (++a == argc) {
return bad_arg(argv[0], 'c');
return missing_arg(argv[0], 'c');
}
chop_prefix = (const uint8_t*)argv[a];
} else if (argv[a][1] == 'r') {
if (++a == argc) {
return bad_arg(argv[0], 'r');
return missing_arg(argv[0], 'r');
}
root_uri = (const uint8_t*)argv[a];
} else {
fprintf(stderr, "%s: Unknown option `%s'\n", argv[0], argv[a]);
SERDI_ERRORF("invalid option -- '%s'\n", argv[a] + 1);
return print_usage(argv[0], true);
}
}

if (a == argc) {
fprintf(stderr, "%s: Missing input\n", argv[0]);
SERDI_ERROR("missing input\n");
return 1;
}


source/modules/lilv/serd-0.21.1/src/string.c → source/modules/lilv/serd-0.22.0/src/string.c View File


source/modules/lilv/serd-0.21.1/src/uri.c → source/modules/lilv/serd-0.22.0/src/uri.c View File


source/modules/lilv/serd-0.21.1/src/writer.c → source/modules/lilv/serd-0.22.0/src/writer.c View File

@@ -1,5 +1,5 @@
/*
Copyright 2011-2014 David Robillard <http://drobilla.net>
Copyright 2011-2015 David Robillard <http://drobilla.net>

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted, provided that the above
@@ -177,7 +177,7 @@ parse_utf8_char(SerdWriter* writer, const uint8_t* utf8, size_t* size)

size_t i = 0;
uint8_t in = utf8[i++];
#define READ_BYTE() \
in = utf8[i++] & 0x3F; \
c = (c << 6) | in;
@@ -237,7 +237,7 @@ uri_must_escape(const uint8_t c)
return !in_range(c, 0x20, 0x7E);
}
}
static size_t
write_uri(SerdWriter* writer, const uint8_t* utf8, size_t n_bytes)
{

source/modules/lilv/serd-0.21.1/tests/TurtleTests/HYPHEN_MINUS_in_localName.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/HYPHEN_MINUS_in_localName.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/IRIREF_datatype.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRIREF_datatype.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/IRI_spo.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRI_spo.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/IRI_with_all_punctuation.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/IRI_with_all_punctuation.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LICENSE → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LICENSE View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL1.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL1_all_controls.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_all_controls.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL1_all_punctuation.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_all_punctuation.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL1_ascii_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL1_ascii_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL2_ascii_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL2_ascii_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_ascii_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_with_1_squote.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG1_with_2_squotes.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_ascii_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_1_squote.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_2_squotes.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_LONG2_with_REVERSE_SOLIDUS.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/LITERAL_with_UTF8_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/README → source/modules/lilv/serd-0.22.0/tests/TurtleTests/README View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/anonymous_blank_node_object.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/anonymous_blank_node_object.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/anonymous_blank_node_subject.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/anonymous_blank_node_subject.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/bareword_a_predicate.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_a_predicate.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/bareword_decimal.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_decimal.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/bareword_double.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/bareword_double.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/blankNodePropertyList_as_object.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_as_object.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/blankNodePropertyList_as_subject.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_as_subject.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/blankNodePropertyList_containing_collection.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_containing_collection.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/blankNodePropertyList_with_multiple_triples.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/collection_object.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/collection_object.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/collection_subject.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/collection_subject.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/comment_following_PNAME_NS.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/comment_following_PNAME_NS.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/double_lower_case_e.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/double_lower_case_e.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/empty_collection.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/empty_collection.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/first.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/first.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_object.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_object.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_subject.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_subject.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_PN_CHARS_BASE_character_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_with_leading_digit.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_leading_digit.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_leading_underscore.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/labeled_blank_node_with_non_leading_extras.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/langtagged_LONG_with_subtag.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/langtagged_LONG_with_subtag.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/langtagged_non_LONG.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/langtagged_non_LONG.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/lantag_with_subtag.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/lantag_with_subtag.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/last.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/last.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_false.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_false.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_true.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_true.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_BACKSPACE.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_BACKSPACE.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_CARRIAGE_RETURN.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_CHARACTER_TABULATION.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_FORM_FEED.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_FORM_FEED.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_LINE_FEED.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_LINE_FEED.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_REVERSE_SOLIDUS.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/literal_with_numeric_escape4.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/literal_with_numeric_escape4.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_assigned_nfc_PN_CHARS_BASE_character_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_assigned_nfc_bmp_PN_CHARS_BASE_character_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_leading_digit.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_leading_digit.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_leading_underscore.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_leading_underscore.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_nfc_PN_CHARS_BASE_character_boundaries.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localName_with_non_leading_extras.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localName_with_non_leading_extras.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/localname_with_COLON.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/localname_with_COLON.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/negative_numeric.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/negative_numeric.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/nested_blankNodePropertyLists.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/nested_blankNodePropertyLists.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/nested_collection.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/nested_collection.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/number_sign_following_PNAME_NS.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_PNAME_NS.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru → source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_PNAME_NS.ttl.thru View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/number_sign_following_localName.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/number_sign_following_localName.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/numeric_with_leading_0.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/numeric_with_leading_0.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/objectList_with_two_objects.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/objectList_with_two_objects.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/percent_escaped_localName.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/percent_escaped_localName.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/positive_numeric.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/positive_numeric.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/predicateObjectList_with_two_objectLists.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/predicateObjectList_with_two_objectLists.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/prefix_reassigned_and_used.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/prefix_reassigned_and_used.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/repeated_semis_not_at_end.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/repeated_semis_not_at_end.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/reserved_escaped_localName.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/reserved_escaped_localName.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/reserved_escaped_localName.ttl.thru → source/modules/lilv/serd-0.22.0/tests/TurtleTests/reserved_escaped_localName.ttl.thru View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/sole_blankNodePropertyList.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/sole_blankNodePropertyList.nt View File


source/modules/lilv/serd-0.21.1/tests/TurtleTests/turtle-eval-struct-01.nt → source/modules/lilv/serd-0.22.0/tests/TurtleTests/turtle-eval-struct-01.nt View File


Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save