summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/libtracker-data/tracker-sparql-pattern.vala4
-rw-r--r--src/libtracker-data/tracker-sparql-query.vala5
2 files changed, 9 insertions, 0 deletions
diff --git a/src/libtracker-data/tracker-sparql-pattern.vala b/src/libtracker-data/tracker-sparql-pattern.vala
index 37faf28dd..96efc1348 100644
--- a/src/libtracker-data/tracker-sparql-pattern.vala
+++ b/src/libtracker-data/tracker-sparql-pattern.vala
@@ -205,6 +205,10 @@ class Tracker.Sparql.Pattern : Object {
return query.accept (type);
}
+ inline void optional (SparqlTokenType type) throws Sparql.Error {
+ query.optional (type);
+ }
+
Sparql.Error get_error (string msg) {
return query.get_error (msg);
}
diff --git a/src/libtracker-data/tracker-sparql-query.vala b/src/libtracker-data/tracker-sparql-query.vala
index 32d31efa1..e611b0f38 100644
--- a/src/libtracker-data/tracker-sparql-query.vala
+++ b/src/libtracker-data/tracker-sparql-query.vala
@@ -347,6 +347,11 @@ public class Tracker.Sparql.Query : Object {
return false;
}
+ internal void optional (SparqlTokenType type) throws Sparql.Error {
+ if (current () == type)
+ next ();
+ }
+
internal Sparql.Error get_error (string msg) {
return new Sparql.Error.PARSE ("%d.%d: syntax error, %s".printf (tokens[index].begin.line, tokens[index].begin.column, msg));
}