tracker-0.16.2/src/libtracker-data/tracker-sparql-expression.c

Location Tool Test ID Function Issue
tracker-sparql-expression.c:1387:2 clang-analyzer Value stored to 'type' is never read
tracker-sparql-expression.c:2054:9 gcc unused-but-set-variable tracker_sparql_expression_translate_select_expression variable '_tmp99__length1' set but not used
tracker-sparql-expression.c:2069:4 clang-analyzer Value stored to '_tmp99_' is never read
tracker-sparql-expression.c:2071:4 clang-analyzer Value stored to '_tmp99__length1' is never read
tracker-sparql-expression.c:2123:4 clang-analyzer Value stored to '_tmp113_' is never read
tracker-sparql-expression.c:2125:4 clang-analyzer Value stored to '_tmp113__length1' is never read
tracker-sparql-expression.c:2242:3 clang-analyzer Value stored to '_tmp136_' is never read
tracker-sparql-expression.c:2244:3 clang-analyzer Value stored to '_tmp136__length1' is never read
tracker-sparql-expression.c:2274:3 clang-analyzer Value stored to '_tmp145_' is never read
tracker-sparql-expression.c:2276:3 clang-analyzer Value stored to '_tmp145__length1' is never read
tracker-sparql-expression.c:3325:13 gcc unused-but-set-variable tracker_sparql_expression_translate_expression_as_string variable 'is_var' set but not used
tracker-sparql-expression.c:3345:4 clang-analyzer Value stored to 'is_var' is never read
tracker-sparql-expression.c:6299:31 gcc unused-but-set-variable tracker_sparql_expression_translate_function variable 'is_var' set but not used
tracker-sparql-expression.c:6314:22 clang-analyzer Value stored to 'is_var' is never read
tracker-sparql-expression.c:6380:23 clang-analyzer Value stored to 'is_var' is never read
tracker-sparql-expression.c:6483:24 clang-analyzer Value stored to 'is_var' is never read
tracker-sparql-expression.c:15203:28 gcc unused-but-set-variable _vala_tracker_sparql_expression_get_property variable 'self' set but not used
tracker-sparql-expression.c:15206:2 clang-analyzer Value stored to 'self' is never read
    1 /* tracker-sparql-expression.c generated by valac 0.18.1, the Vala compiler
    2  * generated from tracker-sparql-expression.vala, do not modify */
    3 
    4 /*
    5  * Copyright (C) 2008-2010, Nokia
    6  *
    7  * This library is free software; you can redistribute it and/or
    8  * modify it under the terms of the GNU Lesser General Public
    9  * License as published by the Free Software Foundation; either
   10  * version 2.1 of the License, or (at your option) any later version.
   11  *
   12  * This library is distributed in the hope that it will be useful,
   13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
   14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
   15  * Lesser General Public License for more details.
   16  *
   17  * You should have received a copy of the GNU Lesser General Public
   18  * License along with this library; if not, write to the
   19  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
   20  * Boston, MA  02110-1301, USA.
   21  */
   22 
   23 #include <glib.h>
   24 #include <glib-object.h>
   25 #include <stdlib.h>
   26 #include <string.h>
   27 #include "libtracker-sparql/tracker-sparql.h"
   28 #include "libtracker-data/tracker-property.h"
   29 #include "libtracker-data/tracker-db-interface-sqlite.h"
   30 #include "libtracker-data/tracker-class.h"
   31 #include "libtracker-data/tracker-collation.h"
   32 #include "libtracker-data/tracker-ontologies.h"
   33 
   34 
   35 #define TRACKER_SPARQL_TYPE_EXPRESSION (tracker_sparql_expression_get_type ())
   36 #define TRACKER_SPARQL_EXPRESSION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpression))
   37 #define TRACKER_SPARQL_EXPRESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpressionClass))
   38 #define TRACKER_SPARQL_IS_EXPRESSION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_EXPRESSION))
   39 #define TRACKER_SPARQL_IS_EXPRESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_EXPRESSION))
   40 #define TRACKER_SPARQL_EXPRESSION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpressionClass))
   41 
   42 typedef struct _TrackerSparqlExpression TrackerSparqlExpression;
   43 typedef struct _TrackerSparqlExpressionClass TrackerSparqlExpressionClass;
   44 typedef struct _TrackerSparqlExpressionPrivate TrackerSparqlExpressionPrivate;
   45 
   46 #define TRACKER_SPARQL_TYPE_QUERY (tracker_sparql_query_get_type ())
   47 #define TRACKER_SPARQL_QUERY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQuery))
   48 #define TRACKER_SPARQL_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQueryClass))
   49 #define TRACKER_SPARQL_IS_QUERY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_QUERY))
   50 #define TRACKER_SPARQL_IS_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_QUERY))
   51 #define TRACKER_SPARQL_QUERY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQueryClass))
   52 
   53 typedef struct _TrackerSparqlQuery TrackerSparqlQuery;
   54 typedef struct _TrackerSparqlQueryClass TrackerSparqlQueryClass;
   55 #define _g_free0(var) (var = (g_free (var), NULL))
   56 
   57 #define TRACKER_TYPE_SPARQL_TOKEN_TYPE (tracker_sparql_token_type_get_type ())
   58 
   59 #define TRACKER_SPARQL_TYPE_VARIABLE (tracker_sparql_variable_get_type ())
   60 #define TRACKER_SPARQL_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariable))
   61 #define TRACKER_SPARQL_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariableClass))
   62 #define TRACKER_SPARQL_IS_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_VARIABLE))
   63 #define TRACKER_SPARQL_IS_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_VARIABLE))
   64 #define TRACKER_SPARQL_VARIABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariableClass))
   65 
   66 typedef struct _TrackerSparqlVariable TrackerSparqlVariable;
   67 typedef struct _TrackerSparqlVariableClass TrackerSparqlVariableClass;
   68 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
   69 
   70 #define TRACKER_SPARQL_TYPE_CONTEXT (tracker_sparql_context_get_type ())
   71 #define TRACKER_SPARQL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContext))
   72 #define TRACKER_SPARQL_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContextClass))
   73 #define TRACKER_SPARQL_IS_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_CONTEXT))
   74 #define TRACKER_SPARQL_IS_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_CONTEXT))
   75 #define TRACKER_SPARQL_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContextClass))
   76 
   77 typedef struct _TrackerSparqlContext TrackerSparqlContext;
   78 typedef struct _TrackerSparqlContextClass TrackerSparqlContextClass;
   79 typedef struct _TrackerSparqlVariablePrivate TrackerSparqlVariablePrivate;
   80 
   81 #define TRACKER_SPARQL_TYPE_DATA_BINDING (tracker_sparql_data_binding_get_type ())
   82 #define TRACKER_SPARQL_DATA_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBinding))
   83 #define TRACKER_SPARQL_DATA_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBindingClass))
   84 #define TRACKER_SPARQL_IS_DATA_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING))
   85 #define TRACKER_SPARQL_IS_DATA_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_DATA_BINDING))
   86 #define TRACKER_SPARQL_DATA_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBindingClass))
   87 
   88 typedef struct _TrackerSparqlDataBinding TrackerSparqlDataBinding;
   89 typedef struct _TrackerSparqlDataBindingClass TrackerSparqlDataBindingClass;
   90 
   91 #define TRACKER_SPARQL_TYPE_VARIABLE_BINDING (tracker_sparql_variable_binding_get_type ())
   92 #define TRACKER_SPARQL_VARIABLE_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBinding))
   93 #define TRACKER_SPARQL_VARIABLE_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBindingClass))
   94 #define TRACKER_SPARQL_IS_VARIABLE_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING))
   95 #define TRACKER_SPARQL_IS_VARIABLE_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING))
   96 #define TRACKER_SPARQL_VARIABLE_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBindingClass))
   97 
   98 typedef struct _TrackerSparqlVariableBinding TrackerSparqlVariableBinding;
   99 typedef struct _TrackerSparqlVariableBindingClass TrackerSparqlVariableBindingClass;
  100 
  101 #define TRACKER_SPARQL_TYPE_PATTERN (tracker_sparql_pattern_get_type ())
  102 #define TRACKER_SPARQL_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPattern))
  103 #define TRACKER_SPARQL_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPatternClass))
  104 #define TRACKER_SPARQL_IS_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_PATTERN))
  105 #define TRACKER_SPARQL_IS_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_PATTERN))
  106 #define TRACKER_SPARQL_PATTERN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPatternClass))
  107 
  108 typedef struct _TrackerSparqlPattern TrackerSparqlPattern;
  109 typedef struct _TrackerSparqlPatternClass TrackerSparqlPatternClass;
  110 
  111 #define TRACKER_SPARQL_TYPE_SELECT_CONTEXT (tracker_sparql_select_context_get_type ())
  112 #define TRACKER_SPARQL_SELECT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext))
  113 #define TRACKER_SPARQL_SELECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContextClass))
  114 #define TRACKER_SPARQL_IS_SELECT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT))
  115 #define TRACKER_SPARQL_IS_SELECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_SELECT_CONTEXT))
  116 #define TRACKER_SPARQL_SELECT_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContextClass))
  117 
  118 typedef struct _TrackerSparqlSelectContext TrackerSparqlSelectContext;
  119 typedef struct _TrackerSparqlSelectContextClass TrackerSparqlSelectContextClass;
  120 #define _tracker_sparql_context_unref0(var) ((var == NULL) ? NULL : (var = (tracker_sparql_context_unref (var), NULL)))
  121 typedef struct _TrackerSparqlContextPrivate TrackerSparqlContextPrivate;
  122 
  123 #define TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE (tracker_sparql_predicate_variable_get_type ())
  124 #define TRACKER_SPARQL_PREDICATE_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariable))
  125 #define TRACKER_SPARQL_PREDICATE_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariableClass))
  126 #define TRACKER_SPARQL_IS_PREDICATE_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE))
  127 #define TRACKER_SPARQL_IS_PREDICATE_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE))
  128 #define TRACKER_SPARQL_PREDICATE_VARIABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariableClass))
  129 
  130 typedef struct _TrackerSparqlPredicateVariable TrackerSparqlPredicateVariable;
  131 typedef struct _TrackerSparqlPredicateVariableClass TrackerSparqlPredicateVariableClass;
  132 typedef struct _TrackerSparqlSelectContextPrivate TrackerSparqlSelectContextPrivate;
  133 typedef struct _TrackerSparqlDataBindingPrivate TrackerSparqlDataBindingPrivate;
  134 
  135 #define TRACKER_SPARQL_TYPE_DATA_TABLE (tracker_sparql_data_table_get_type ())
  136 #define TRACKER_SPARQL_DATA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTable))
  137 #define TRACKER_SPARQL_DATA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTableClass))
  138 #define TRACKER_SPARQL_IS_DATA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE))
  139 #define TRACKER_SPARQL_IS_DATA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_DATA_TABLE))
  140 #define TRACKER_SPARQL_DATA_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTableClass))
  141 
  142 typedef struct _TrackerSparqlDataTable TrackerSparqlDataTable;
  143 typedef struct _TrackerSparqlDataTableClass TrackerSparqlDataTableClass;
  144 typedef struct _TrackerSparqlVariableBindingPrivate TrackerSparqlVariableBindingPrivate;
  145 
  146 #define TRACKER_SPARQL_TYPE_VARIABLE_STATE (tracker_sparql_variable_state_get_type ())
  147 #define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL)))
  148 typedef struct _TrackerSparqlPatternPrivate TrackerSparqlPatternPrivate;
  149 
  150 #define TRACKER_SPARQL_TYPE_LITERAL_BINDING (tracker_sparql_literal_binding_get_type ())
  151 #define TRACKER_SPARQL_LITERAL_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBinding))
  152 #define TRACKER_SPARQL_LITERAL_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBindingClass))
  153 #define TRACKER_SPARQL_IS_LITERAL_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING))
  154 #define TRACKER_SPARQL_IS_LITERAL_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_LITERAL_BINDING))
  155 #define TRACKER_SPARQL_LITERAL_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBindingClass))
  156 
  157 typedef struct _TrackerSparqlLiteralBinding TrackerSparqlLiteralBinding;
  158 typedef struct _TrackerSparqlLiteralBindingClass TrackerSparqlLiteralBindingClass;
  159 typedef struct _TrackerSparqlLiteralBindingPrivate TrackerSparqlLiteralBindingPrivate;
  160 typedef struct _TrackerSparqlQueryPrivate TrackerSparqlQueryPrivate;
  161 
  162 struct _TrackerSparqlExpression {
  163 	GObject parent_instance;
  164 	TrackerSparqlExpressionPrivate * priv;
  165 };
  166 
  167 struct _TrackerSparqlExpressionClass {
  168 	GObjectClass parent_class;
  169 };
  170 
  171 struct _TrackerSparqlExpressionPrivate {
  172 	TrackerSparqlQuery* query;
  173 	gchar* fts_sql;
  174 };
  175 
  176 typedef enum  {
  177 	TRACKER_SPARQL_TOKEN_TYPE_NONE,
  178 	TRACKER_SPARQL_TOKEN_TYPE_A,
  179 	TRACKER_SPARQL_TOKEN_TYPE_AS,
  180 	TRACKER_SPARQL_TOKEN_TYPE_ASC,
  181 	TRACKER_SPARQL_TOKEN_TYPE_ASK,
  182 	TRACKER_SPARQL_TOKEN_TYPE_ATBASE,
  183 	TRACKER_SPARQL_TOKEN_TYPE_ATPREFIX,
  184 	TRACKER_SPARQL_TOKEN_TYPE_AVG,
  185 	TRACKER_SPARQL_TOKEN_TYPE_BASE,
  186 	TRACKER_SPARQL_TOKEN_TYPE_BLANK_NODE,
  187 	TRACKER_SPARQL_TOKEN_TYPE_BOUND,
  188 	TRACKER_SPARQL_TOKEN_TYPE_BY,
  189 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE,
  190 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACKET,
  191 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS,
  192 	TRACKER_SPARQL_TOKEN_TYPE_COALESCE,
  193 	TRACKER_SPARQL_TOKEN_TYPE_COLON,
  194 	TRACKER_SPARQL_TOKEN_TYPE_COMMA,
  195 	TRACKER_SPARQL_TOKEN_TYPE_CONSTRUCT,
  196 	TRACKER_SPARQL_TOKEN_TYPE_COUNT,
  197 	TRACKER_SPARQL_TOKEN_TYPE_DATA,
  198 	TRACKER_SPARQL_TOKEN_TYPE_DATATYPE,
  199 	TRACKER_SPARQL_TOKEN_TYPE_DECIMAL,
  200 	TRACKER_SPARQL_TOKEN_TYPE_DELETE,
  201 	TRACKER_SPARQL_TOKEN_TYPE_DESC,
  202 	TRACKER_SPARQL_TOKEN_TYPE_DESCRIBE,
  203 	TRACKER_SPARQL_TOKEN_TYPE_DISTINCT,
  204 	TRACKER_SPARQL_TOKEN_TYPE_DIV,
  205 	TRACKER_SPARQL_TOKEN_TYPE_DOT,
  206 	TRACKER_SPARQL_TOKEN_TYPE_DOUBLE,
  207 	TRACKER_SPARQL_TOKEN_TYPE_DOUBLE_CIRCUMFLEX,
  208 	TRACKER_SPARQL_TOKEN_TYPE_DROP,
  209 	TRACKER_SPARQL_TOKEN_TYPE_EOF,
  210 	TRACKER_SPARQL_TOKEN_TYPE_EXISTS,
  211 	TRACKER_SPARQL_TOKEN_TYPE_FALSE,
  212 	TRACKER_SPARQL_TOKEN_TYPE_FILTER,
  213 	TRACKER_SPARQL_TOKEN_TYPE_FROM,
  214 	TRACKER_SPARQL_TOKEN_TYPE_GRAPH,
  215 	TRACKER_SPARQL_TOKEN_TYPE_GROUP,
  216 	TRACKER_SPARQL_TOKEN_TYPE_GROUP_CONCAT,
  217 	TRACKER_SPARQL_TOKEN_TYPE_HAVING,
  218 	TRACKER_SPARQL_TOKEN_TYPE_IF,
  219 	TRACKER_SPARQL_TOKEN_TYPE_INSERT,
  220 	TRACKER_SPARQL_TOKEN_TYPE_INTEGER,
  221 	TRACKER_SPARQL_TOKEN_TYPE_INTO,
  222 	TRACKER_SPARQL_TOKEN_TYPE_IRI_REF,
  223 	TRACKER_SPARQL_TOKEN_TYPE_ISBLANK,
  224 	TRACKER_SPARQL_TOKEN_TYPE_ISIRI,
  225 	TRACKER_SPARQL_TOKEN_TYPE_ISLITERAL,
  226 	TRACKER_SPARQL_TOKEN_TYPE_ISURI,
  227 	TRACKER_SPARQL_TOKEN_TYPE_LANG,
  228 	TRACKER_SPARQL_TOKEN_TYPE_LANGMATCHES,
  229 	TRACKER_SPARQL_TOKEN_TYPE_LIMIT,
  230 	TRACKER_SPARQL_TOKEN_TYPE_MAX,
  231 	TRACKER_SPARQL_TOKEN_TYPE_MIN,
  232 	TRACKER_SPARQL_TOKEN_TYPE_MINUS,
  233 	TRACKER_SPARQL_TOKEN_TYPE_NAMED,
  234 	TRACKER_SPARQL_TOKEN_TYPE_NOT,
  235 	TRACKER_SPARQL_TOKEN_TYPE_NULL,
  236 	TRACKER_SPARQL_TOKEN_TYPE_OFFSET,
  237 	TRACKER_SPARQL_TOKEN_TYPE_OP_AND,
  238 	TRACKER_SPARQL_TOKEN_TYPE_OP_EQ,
  239 	TRACKER_SPARQL_TOKEN_TYPE_OP_GE,
  240 	TRACKER_SPARQL_TOKEN_TYPE_OP_GT,
  241 	TRACKER_SPARQL_TOKEN_TYPE_OP_LE,
  242 	TRACKER_SPARQL_TOKEN_TYPE_OP_LT,
  243 	TRACKER_SPARQL_TOKEN_TYPE_OP_NE,
  244 	TRACKER_SPARQL_TOKEN_TYPE_OP_NEG,
  245 	TRACKER_SPARQL_TOKEN_TYPE_OP_OR,
  246 	TRACKER_SPARQL_TOKEN_TYPE_OP_IN,
  247 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE,
  248 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACKET,
  249 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS,
  250 	TRACKER_SPARQL_TOKEN_TYPE_OPTIONAL,
  251 	TRACKER_SPARQL_TOKEN_TYPE_OR,
  252 	TRACKER_SPARQL_TOKEN_TYPE_ORDER,
  253 	TRACKER_SPARQL_TOKEN_TYPE_PLUS,
  254 	TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX,
  255 	TRACKER_SPARQL_TOKEN_TYPE_PREFIX,
  256 	TRACKER_SPARQL_TOKEN_TYPE_REDUCED,
  257 	TRACKER_SPARQL_TOKEN_TYPE_REGEX,
  258 	TRACKER_SPARQL_TOKEN_TYPE_REPLACE,
  259 	TRACKER_SPARQL_TOKEN_TYPE_SAMETERM,
  260 	TRACKER_SPARQL_TOKEN_TYPE_SELECT,
  261 	TRACKER_SPARQL_TOKEN_TYPE_SEMICOLON,
  262 	TRACKER_SPARQL_TOKEN_TYPE_SILENT,
  263 	TRACKER_SPARQL_TOKEN_TYPE_STAR,
  264 	TRACKER_SPARQL_TOKEN_TYPE_STR,
  265 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL1,
  266 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL2,
  267 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG1,
  268 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG2,
  269 	TRACKER_SPARQL_TOKEN_TYPE_SUM,
  270 	TRACKER_SPARQL_TOKEN_TYPE_TRUE,
  271 	TRACKER_SPARQL_TOKEN_TYPE_UNION,
  272 	TRACKER_SPARQL_TOKEN_TYPE_VAR,
  273 	TRACKER_SPARQL_TOKEN_TYPE_WHERE,
  274 	TRACKER_SPARQL_TOKEN_TYPE_WITH
  275 } TrackerSparqlTokenType;
  276 
  277 struct _TrackerSparqlVariable {
  278 	GObject parent_instance;
  279 	TrackerSparqlVariablePrivate * priv;
  280 	TrackerSparqlVariableBinding* binding;
  281 };
  282 
  283 struct _TrackerSparqlVariableClass {
  284 	GObjectClass parent_class;
  285 };
  286 
  287 struct _TrackerSparqlContext {
  288 	GTypeInstance parent_instance;
  289 	volatile int ref_count;
  290 	TrackerSparqlContextPrivate * priv;
  291 	TrackerSparqlQuery* query;
  292 	TrackerSparqlContext* parent_context;
  293 	GHashTable* var_set;
  294 	GHashTable* var_map;
  295 	GHashTable* select_var_set;
  296 	GHashTable* predicate_variable_map;
  297 	gboolean scalar_subquery;
  298 };
  299 
  300 struct _TrackerSparqlContextClass {
  301 	GTypeClass parent_class;
  302 	void (*finalize) (TrackerSparqlContext *self);
  303 };
  304 
  305 struct _TrackerSparqlSelectContext {
  306 	TrackerSparqlContext parent_instance;
  307 	TrackerSparqlSelectContextPrivate * priv;
  308 	TrackerPropertyType type;
  309 	TrackerPropertyType* types;
  310 	gint types_length1;
  311 	gint _types_size_;
  312 	gchar** variable_names;
  313 	gint variable_names_length1;
  314 	gint _variable_names_size_;
  315 };
  316 
  317 struct _TrackerSparqlSelectContextClass {
  318 	TrackerSparqlContextClass parent_class;
  319 };
  320 
  321 struct _TrackerSparqlDataBinding {
  322 	GObject parent_instance;
  323 	TrackerSparqlDataBindingPrivate * priv;
  324 	TrackerPropertyType data_type;
  325 	TrackerSparqlDataTable* table;
  326 	gchar* sql_db_column_name;
  327 };
  328 
  329 struct _TrackerSparqlDataBindingClass {
  330 	GObjectClass parent_class;
  331 };
  332 
  333 struct _TrackerSparqlVariableBinding {
  334 	TrackerSparqlDataBinding parent_instance;
  335 	TrackerSparqlVariableBindingPrivate * priv;
  336 	TrackerSparqlVariable* variable;
  337 	gboolean maybe_null;
  338 	gboolean in_simple_optional;
  339 	TrackerClass* type;
  340 };
  341 
  342 struct _TrackerSparqlVariableBindingClass {
  343 	TrackerSparqlDataBindingClass parent_class;
  344 };
  345 
  346 typedef enum  {
  347 	TRACKER_SPARQL_VARIABLE_STATE_NONE,
  348 	TRACKER_SPARQL_VARIABLE_STATE_BOUND,
  349 	TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL
  350 } TrackerSparqlVariableState;
  351 
  352 struct _TrackerSparqlPattern {
  353 	GObject parent_instance;
  354 	TrackerSparqlPatternPrivate * priv;
  355 	gchar* current_graph;
  356 	TrackerSparqlVariable* fts_subject;
  357 	gchar** fts_variables;
  358 	gint fts_variables_length1;
  359 	gint _fts_variables_size_;
  360 	GString* match_str;
  361 	gboolean queries_fts_data;
  362 };
  363 
  364 struct _TrackerSparqlPatternClass {
  365 	GObjectClass parent_class;
  366 };
  367 
  368 struct _TrackerSparqlLiteralBinding {
  369 	TrackerSparqlDataBinding parent_instance;
  370 	TrackerSparqlLiteralBindingPrivate * priv;
  371 	gboolean is_fts_match;
  372 	gchar* literal;
  373 };
  374 
  375 struct _TrackerSparqlLiteralBindingClass {
  376 	TrackerSparqlDataBindingClass parent_class;
  377 };
  378 
  379 struct _TrackerSparqlQuery {
  380 	GObject parent_instance;
  381 	TrackerSparqlQueryPrivate * priv;
  382 	TrackerSparqlExpression* expression;
  383 	TrackerSparqlPattern* pattern;
  384 	GList* bindings;
  385 	TrackerSparqlContext* context;
  386 	gint last_var_index;
  387 };
  388 
  389 struct _TrackerSparqlQueryClass {
  390 	GObjectClass parent_class;
  391 };
  392 
  393 
  394 static gpointer tracker_sparql_expression_parent_class = NULL;
  395 
  396 GType tracker_sparql_expression_get_type (void) G_GNUC_CONST;
  397 GType tracker_sparql_query_get_type (void) G_GNUC_CONST;
  398 #define TRACKER_SPARQL_EXPRESSION_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpressionPrivate))
  399 enum  {
  400 	TRACKER_SPARQL_EXPRESSION_DUMMY_PROPERTY
  401 };
  402 #define TRACKER_SPARQL_EXPRESSION_MAX_VARIABLES_FOR_IN 20
  403 #define TRACKER_SPARQL_EXPRESSION_XSD_NS "http://www.w3.org/2001/XMLSchema#"
  404 #define TRACKER_SPARQL_EXPRESSION_FN_NS "http://www.w3.org/2005/xpath-functions#"
  405 #define TRACKER_SPARQL_EXPRESSION_FTS_NS "http://www.tracker-project.org/ontologies/fts#"
  406 #define TRACKER_SPARQL_EXPRESSION_TRACKER_NS "http://www.tracker-project.org/ontologies/tracker#"
  407 TrackerSparqlExpression* tracker_sparql_expression_new (TrackerSparqlQuery* query);
  408 TrackerSparqlExpression* tracker_sparql_expression_construct (GType object_type, TrackerSparqlQuery* query);
  409 static inline gboolean tracker_sparql_expression_next (TrackerSparqlExpression* self, GError** error);
  410 gboolean tracker_sparql_query_next (TrackerSparqlQuery* self, GError** error);
  411 GType tracker_sparql_token_type_get_type (void) G_GNUC_CONST;
  412 static inline TrackerSparqlTokenType tracker_sparql_expression_current (TrackerSparqlExpression* self);
  413 TrackerSparqlTokenType tracker_sparql_query_current (TrackerSparqlQuery* self);
  414 static inline TrackerSparqlTokenType tracker_sparql_expression_last (TrackerSparqlExpression* self);
  415 TrackerSparqlTokenType tracker_sparql_query_last (TrackerSparqlQuery* self);
  416 static inline gboolean tracker_sparql_expression_accept (TrackerSparqlExpression* self, TrackerSparqlTokenType type, GError** error);
  417 gboolean tracker_sparql_query_accept (TrackerSparqlQuery* self, TrackerSparqlTokenType type, GError** error);
  418 static GError* tracker_sparql_expression_get_error (TrackerSparqlExpression* self, const gchar* msg);
  419 GError* tracker_sparql_query_get_error (TrackerSparqlQuery* self, const gchar* msg);
  420 static gboolean tracker_sparql_expression_expect (TrackerSparqlExpression* self, TrackerSparqlTokenType type, GError** error);
  421 gboolean tracker_sparql_query_expect (TrackerSparqlQuery* self, TrackerSparqlTokenType type, GError** error);
  422 static gchar* tracker_sparql_expression_get_last_string (TrackerSparqlExpression* self, gint strip);
  423 gchar* tracker_sparql_query_get_last_string (TrackerSparqlQuery* self, gint strip);
  424 static gchar* tracker_sparql_expression_escape_sql_string_literal (TrackerSparqlExpression* self, const gchar* literal);
  425 static gboolean tracker_sparql_expression_maybe_numeric (TrackerSparqlExpression* self, TrackerPropertyType type);
  426 static void tracker_sparql_expression_append_collate (TrackerSparqlExpression* self, GString* sql);
  427 static void tracker_sparql_expression_skip_bracketted_expression (TrackerSparqlExpression* self, GError** error);
  428 void tracker_sparql_expression_skip_select_variables (TrackerSparqlExpression* self, GError** error);
  429 TrackerPropertyType tracker_sparql_expression_translate_select_expression (TrackerSparqlExpression* self, GString* sql, gboolean subquery, gint variable_index, GError** error);
  430 GType tracker_sparql_variable_get_type (void) G_GNUC_CONST;
  431 TrackerPropertyType tracker_sparql_expression_translate_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  432 gpointer tracker_sparql_context_ref (gpointer instance);
  433 void tracker_sparql_context_unref (gpointer instance);
  434 GParamSpec* tracker_sparql_param_spec_context (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
  435 void tracker_sparql_value_set_context (GValue* value, gpointer v_object);
  436 void tracker_sparql_value_take_context (GValue* value, gpointer v_object);
  437 gpointer tracker_sparql_value_get_context (const GValue* value);
  438 GType tracker_sparql_context_get_type (void) G_GNUC_CONST;
  439 static TrackerSparqlContext* tracker_sparql_expression_get_context (TrackerSparqlExpression* self);
  440 TrackerSparqlVariable* tracker_sparql_context_get_variable (TrackerSparqlContext* self, const gchar* name);
  441 GType tracker_sparql_data_binding_get_type (void) G_GNUC_CONST;
  442 GType tracker_sparql_variable_binding_get_type (void) G_GNUC_CONST;
  443 const gchar* tracker_sparql_variable_get_name (TrackerSparqlVariable* self);
  444 GType tracker_sparql_pattern_get_type (void) G_GNUC_CONST;
  445 static TrackerSparqlPattern* tracker_sparql_expression_get_pattern (TrackerSparqlExpression* self);
  446 GType tracker_sparql_select_context_get_type (void) G_GNUC_CONST;
  447 TrackerSparqlSelectContext* tracker_sparql_pattern_translate_select (TrackerSparqlPattern* self, GString* sql, gboolean subquery, gboolean scalar_subquery, GError** error);
  448 GType tracker_sparql_predicate_variable_get_type (void) G_GNUC_CONST;
  449 static void tracker_sparql_expression_convert_expression_to_string (GString* sql, TrackerPropertyType type, glong begin);
  450 const gchar* tracker_sparql_variable_get_sql_expression (TrackerSparqlVariable* self);
  451 TrackerSparqlVariableBinding* tracker_sparql_variable_binding_new (void);
  452 TrackerSparqlVariableBinding* tracker_sparql_variable_binding_construct (GType object_type);
  453 GType tracker_sparql_data_table_get_type (void) G_GNUC_CONST;
  454 void tracker_sparql_data_binding_set_sql_expression (TrackerSparqlDataBinding* self, const gchar* value);
  455 GType tracker_sparql_variable_state_get_type (void) G_GNUC_CONST;
  456 void tracker_sparql_pattern_add_variable_binding (TrackerSparqlPattern* self, GString* sql, TrackerSparqlVariableBinding* binding, TrackerSparqlVariableState variable_state);
  457 static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value);
  458 static void _vala_array_add2 (gchar*** array, int* length, int* size, gchar* value);
  459 static void _vala_array_add3 (gchar*** array, int* length, int* size, gchar* value);
  460 static void _vala_array_add4 (gchar*** array, int* length, int* size, gchar* value);
  461 static void tracker_sparql_expression_translate_expression_as_order_condition (TrackerSparqlExpression* self, GString* sql, GError** error);
  462 void tracker_sparql_expression_translate_order_condition (TrackerSparqlExpression* self, GString* sql, GError** error);
  463 static void tracker_sparql_expression_translate_bound_call (TrackerSparqlExpression* self, GString* sql, GError** error);
  464 static TrackerPropertyType tracker_sparql_expression_translate_if_call (TrackerSparqlExpression* self, GString* sql, GError** error);
  465 static void tracker_sparql_expression_translate_regex (TrackerSparqlExpression* self, GString* sql, GError** error);
  466 static void tracker_sparql_expression_translate_expression_as_string (TrackerSparqlExpression* self, GString* sql, GError** error);
  467 gchar* tracker_sparql_expression_parse_string_literal (TrackerSparqlExpression* self, TrackerPropertyType* type, GError** error);
  468 static void tracker_sparql_expression_translate_exists (TrackerSparqlExpression* self, GString* sql, GError** error);
  469 void tracker_sparql_pattern_translate_exists (TrackerSparqlPattern* self, GString* sql, GError** error);
  470 void tracker_sparql_expression_append_expression_as_string (GString* sql, const gchar* expression, TrackerPropertyType type);
  471 TrackerSparqlLiteralBinding* tracker_sparql_literal_binding_new (void);
  472 TrackerSparqlLiteralBinding* tracker_sparql_literal_binding_construct (GType object_type);
  473 GType tracker_sparql_literal_binding_get_type (void) G_GNUC_CONST;
  474 gchar* tracker_sparql_pattern_parse_var_or_term (TrackerSparqlPattern* self, GString* sql, gboolean* is_var, GError** error);
  475 static TrackerPropertyType tracker_sparql_expression_translate_function (TrackerSparqlExpression* self, GString* sql, const gchar* uri, GError** error);
  476 static void tracker_sparql_expression_translate_str (TrackerSparqlExpression* self, GString* sql, GError** error);
  477 static void tracker_sparql_expression_translate_isuri (TrackerSparqlExpression* self, GString* sql, GError** error);
  478 static void tracker_sparql_expression_translate_datatype (TrackerSparqlExpression* self, GString* sql, GError** error);
  479 gchar* tracker_sparql_variable_get_extra_sql_expression (TrackerSparqlVariable* self, const gchar* suffix);
  480 static TrackerPropertyType tracker_sparql_expression_parse_type_uri (TrackerSparqlExpression* self, GError** error);
  481 gchar* tracker_sparql_query_resolve_prefixed_name (TrackerSparqlQuery* self, const gchar* prefix, const gchar* local_name, GError** error);
  482 static TrackerPropertyType tracker_sparql_expression_translate_uri_expression (TrackerSparqlExpression* self, GString* sql, const gchar* uri, GError** error);
  483 static TrackerPropertyType tracker_sparql_expression_translate_primary_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  484 static TrackerPropertyType tracker_sparql_expression_translate_bracketted_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  485 gboolean tracker_sparql_query_get_no_cache (TrackerSparqlQuery* self);
  486 void tracker_sparql_query_set_no_cache (TrackerSparqlQuery* self, gboolean value);
  487 static TrackerPropertyType tracker_sparql_expression_translate_aggregate_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  488 static TrackerPropertyType tracker_sparql_expression_translate_unary_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  489 static TrackerPropertyType tracker_sparql_expression_translate_multiplicative_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  490 static TrackerPropertyType tracker_sparql_expression_translate_additive_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  491 static TrackerPropertyType tracker_sparql_expression_translate_numeric_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  492 static TrackerPropertyType tracker_sparql_expression_process_relational_expression (TrackerSparqlExpression* self, GString* sql, glong begin, guint n_bindings, TrackerPropertyType op1type, const gchar* operator, GError** error);
  493 static TrackerPropertyType tracker_sparql_expression_translate_in (TrackerSparqlExpression* self, GString* sql, gboolean not, GError** error);
  494 static TrackerPropertyType tracker_sparql_expression_translate_relational_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  495 static TrackerPropertyType tracker_sparql_expression_translate_value_logical (TrackerSparqlExpression* self, GString* sql, GError** error);
  496 static TrackerPropertyType tracker_sparql_expression_translate_conditional_and_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  497 static TrackerPropertyType tracker_sparql_expression_translate_conditional_or_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  498 TrackerPropertyType tracker_sparql_expression_translate_constraint (TrackerSparqlExpression* self, GString* sql, GError** error);
  499 static void tracker_sparql_expression_finalize (GObject* obj);
  500 static void _vala_tracker_sparql_expression_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
  501 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
  502 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
  503 static gint _vala_array_length (gpointer array);
  504 
  505 
  506 TrackerSparqlExpression* tracker_sparql_expression_construct (GType object_type, TrackerSparqlQuery* query) {
  507 	TrackerSparqlExpression * self = NULL;
  508 	TrackerSparqlQuery* _tmp0_;
  509 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  510 	g_return_val_if_fail (query != NULL, NULL);
  511 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  512 	self = (TrackerSparqlExpression*) g_object_new (object_type, NULL);
  513 #line 32 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  514 	_tmp0_ = query;
  515 #line 32 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  516 	self->priv->query = _tmp0_;
  517 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  518 	return self;
  519 #line 520 "tracker-sparql-expression.c"
  520 }
  521 
  522 
  523 TrackerSparqlExpression* tracker_sparql_expression_new (TrackerSparqlQuery* query) {
  524 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  525 	return tracker_sparql_expression_construct (TRACKER_SPARQL_TYPE_EXPRESSION, query);
  526 #line 527 "tracker-sparql-expression.c"
  527 }
  528 
  529 
  530 static inline gboolean tracker_sparql_expression_next (TrackerSparqlExpression* self, GError** error) {
  531 	gboolean result = FALSE;
  532 	TrackerSparqlQuery* _tmp0_;
  533 	gboolean _tmp1_ = FALSE;
  534 	gboolean _tmp2_;
  535 	GError * _inner_error_ = NULL;
  536 #line 43 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  537 	g_return_val_if_fail (self != NULL, FALSE);
  538 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  539 	_tmp0_ = self->priv->query;
  540 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  541 	_tmp1_ = tracker_sparql_query_next (_tmp0_, &_inner_error_);
  542 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  543 	_tmp2_ = _tmp1_;
  544 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  545 	if (_inner_error_ != NULL) {
  546 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  547 		if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  548 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  549 			g_propagate_error (error, _inner_error_);
  550 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  551 			return FALSE;
  552 #line 553 "tracker-sparql-expression.c"
  553 		} else {
  554 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  555 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  556 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  557 			g_clear_error (&_inner_error_);
  558 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  559 			return FALSE;
  560 #line 561 "tracker-sparql-expression.c"
  561 		}
  562 	}
  563 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  564 	result = _tmp2_;
  565 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  566 	return result;
  567 #line 568 "tracker-sparql-expression.c"
  568 }
  569 
  570 
  571 static inline TrackerSparqlTokenType tracker_sparql_expression_current (TrackerSparqlExpression* self) {
  572 	TrackerSparqlTokenType result = 0;
  573 	TrackerSparqlQuery* _tmp0_;
  574 	TrackerSparqlTokenType _tmp1_ = 0;
  575 #line 47 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  576 	g_return_val_if_fail (self != NULL, 0);
  577 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  578 	_tmp0_ = self->priv->query;
  579 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  580 	_tmp1_ = tracker_sparql_query_current (_tmp0_);
  581 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  582 	result = _tmp1_;
  583 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  584 	return result;
  585 #line 586 "tracker-sparql-expression.c"
  586 }
  587 
  588 
  589 static inline TrackerSparqlTokenType tracker_sparql_expression_last (TrackerSparqlExpression* self) {
  590 	TrackerSparqlTokenType result = 0;
  591 	TrackerSparqlQuery* _tmp0_;
  592 	TrackerSparqlTokenType _tmp1_ = 0;
  593 #line 51 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  594 	g_return_val_if_fail (self != NULL, 0);
  595 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  596 	_tmp0_ = self->priv->query;
  597 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  598 	_tmp1_ = tracker_sparql_query_last (_tmp0_);
  599 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  600 	result = _tmp1_;
  601 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  602 	return result;
  603 #line 604 "tracker-sparql-expression.c"
  604 }
  605 
  606 
  607 static inline gboolean tracker_sparql_expression_accept (TrackerSparqlExpression* self, TrackerSparqlTokenType type, GError** error) {
  608 	gboolean result = FALSE;
  609 	TrackerSparqlQuery* _tmp0_;
  610 	TrackerSparqlTokenType _tmp1_;
  611 	gboolean _tmp2_ = FALSE;
  612 	gboolean _tmp3_;
  613 	GError * _inner_error_ = NULL;
  614 #line 55 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  615 	g_return_val_if_fail (self != NULL, FALSE);
  616 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  617 	_tmp0_ = self->priv->query;
  618 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  619 	_tmp1_ = type;
  620 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  621 	_tmp2_ = tracker_sparql_query_accept (_tmp0_, _tmp1_, &_inner_error_);
  622 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  623 	_tmp3_ = _tmp2_;
  624 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  625 	if (_inner_error_ != NULL) {
  626 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  627 		if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  628 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  629 			g_propagate_error (error, _inner_error_);
  630 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  631 			return FALSE;
  632 #line 633 "tracker-sparql-expression.c"
  633 		} else {
  634 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  635 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  636 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  637 			g_clear_error (&_inner_error_);
  638 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  639 			return FALSE;
  640 #line 641 "tracker-sparql-expression.c"
  641 		}
  642 	}
  643 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  644 	result = _tmp3_;
  645 #line 56 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  646 	return result;
  647 #line 648 "tracker-sparql-expression.c"
  648 }
  649 
  650 
  651 static GError* tracker_sparql_expression_get_error (TrackerSparqlExpression* self, const gchar* msg) {
  652 	GError* result = NULL;
  653 	TrackerSparqlQuery* _tmp0_;
  654 	const gchar* _tmp1_;
  655 	GError* _tmp2_ = NULL;
  656 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  657 	g_return_val_if_fail (self != NULL, NULL);
  658 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  659 	g_return_val_if_fail (msg != NULL, NULL);
  660 #line 60 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  661 	_tmp0_ = self->priv->query;
  662 #line 60 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  663 	_tmp1_ = msg;
  664 #line 60 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  665 	_tmp2_ = tracker_sparql_query_get_error (_tmp0_, _tmp1_);
  666 #line 60 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  667 	result = _tmp2_;
  668 #line 60 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  669 	return result;
  670 #line 671 "tracker-sparql-expression.c"
  671 }
  672 
  673 
  674 static gboolean tracker_sparql_expression_expect (TrackerSparqlExpression* self, TrackerSparqlTokenType type, GError** error) {
  675 	gboolean result = FALSE;
  676 	TrackerSparqlQuery* _tmp0_;
  677 	TrackerSparqlTokenType _tmp1_;
  678 	gboolean _tmp2_ = FALSE;
  679 	gboolean _tmp3_;
  680 	GError * _inner_error_ = NULL;
  681 #line 63 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  682 	g_return_val_if_fail (self != NULL, FALSE);
  683 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  684 	_tmp0_ = self->priv->query;
  685 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  686 	_tmp1_ = type;
  687 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  688 	_tmp2_ = tracker_sparql_query_expect (_tmp0_, _tmp1_, &_inner_error_);
  689 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  690 	_tmp3_ = _tmp2_;
  691 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  692 	if (_inner_error_ != NULL) {
  693 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  694 		if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  695 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  696 			g_propagate_error (error, _inner_error_);
  697 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  698 			return FALSE;
  699 #line 700 "tracker-sparql-expression.c"
  700 		} else {
  701 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  702 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  703 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  704 			g_clear_error (&_inner_error_);
  705 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  706 			return FALSE;
  707 #line 708 "tracker-sparql-expression.c"
  708 		}
  709 	}
  710 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  711 	result = _tmp3_;
  712 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  713 	return result;
  714 #line 715 "tracker-sparql-expression.c"
  715 }
  716 
  717 
  718 static gchar* tracker_sparql_expression_get_last_string (TrackerSparqlExpression* self, gint strip) {
  719 	gchar* result = NULL;
  720 	TrackerSparqlQuery* _tmp0_;
  721 	gint _tmp1_;
  722 	gchar* _tmp2_ = NULL;
  723 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  724 	g_return_val_if_fail (self != NULL, NULL);
  725 #line 68 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  726 	_tmp0_ = self->priv->query;
  727 #line 68 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  728 	_tmp1_ = strip;
  729 #line 68 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  730 	_tmp2_ = tracker_sparql_query_get_last_string (_tmp0_, _tmp1_);
  731 #line 68 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  732 	result = _tmp2_;
  733 #line 68 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  734 	return result;
  735 #line 736 "tracker-sparql-expression.c"
  736 }
  737 
  738 
  739 static gchar* tracker_sparql_expression_escape_sql_string_literal (TrackerSparqlExpression* self, const gchar* literal) {
  740 	gchar* result = NULL;
  741 	const gchar* _tmp0_;
  742 	gchar** _tmp1_;
  743 	gchar** _tmp2_ = NULL;
  744 	gchar** _tmp3_;
  745 	gint _tmp3__length1;
  746 	gchar* _tmp4_ = NULL;
  747 	gchar* _tmp5_;
  748 	gchar* _tmp6_ = NULL;
  749 	gchar* _tmp7_;
  750 #line 71 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  751 	g_return_val_if_fail (self != NULL, NULL);
  752 #line 71 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  753 	g_return_val_if_fail (literal != NULL, NULL);
  754 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  755 	_tmp0_ = literal;
  756 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  757 	_tmp2_ = _tmp1_ = g_strsplit (_tmp0_, "'", 0);
  758 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  759 	_tmp3_ = _tmp2_;
  760 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  761 	_tmp3__length1 = _vala_array_length (_tmp1_);
  762 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  763 	_tmp4_ = g_strjoinv ("''", _tmp3_);
  764 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  765 	_tmp5_ = _tmp4_;
  766 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  767 	_tmp6_ = g_strdup_printf ("'%s'", _tmp5_);
  768 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  769 	_tmp7_ = _tmp6_;
  770 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  771 	_g_free0 (_tmp5_);
  772 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  773 	_tmp3_ = (_vala_array_free (_tmp3_, _tmp3__length1, (GDestroyNotify) g_free), NULL);
  774 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  775 	result = _tmp7_;
  776 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  777 	return result;
  778 #line 779 "tracker-sparql-expression.c"
  779 }
  780 
  781 
  782 static gboolean tracker_sparql_expression_maybe_numeric (TrackerSparqlExpression* self, TrackerPropertyType type) {
  783 	gboolean result = FALSE;
  784 	gboolean _tmp0_ = FALSE;
  785 	gboolean _tmp1_ = FALSE;
  786 	gboolean _tmp2_ = FALSE;
  787 	gboolean _tmp3_ = FALSE;
  788 	TrackerPropertyType _tmp4_;
  789 	gboolean _tmp6_;
  790 	gboolean _tmp8_;
  791 	gboolean _tmp10_;
  792 	gboolean _tmp12_;
  793 #line 75 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  794 	g_return_val_if_fail (self != NULL, FALSE);
  795 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  796 	_tmp4_ = type;
  797 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  798 	if (_tmp4_ == TRACKER_PROPERTY_TYPE_INTEGER) {
  799 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  800 		_tmp3_ = TRUE;
  801 #line 802 "tracker-sparql-expression.c"
  802 	} else {
  803 		TrackerPropertyType _tmp5_;
  804 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  805 		_tmp5_ = type;
  806 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  807 		_tmp3_ = _tmp5_ == TRACKER_PROPERTY_TYPE_DOUBLE;
  808 #line 809 "tracker-sparql-expression.c"
  809 	}
  810 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  811 	_tmp6_ = _tmp3_;
  812 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  813 	if (_tmp6_) {
  814 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  815 		_tmp2_ = TRUE;
  816 #line 817 "tracker-sparql-expression.c"
  817 	} else {
  818 		TrackerPropertyType _tmp7_;
  819 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  820 		_tmp7_ = type;
  821 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  822 		_tmp2_ = _tmp7_ == TRACKER_PROPERTY_TYPE_DATE;
  823 #line 824 "tracker-sparql-expression.c"
  824 	}
  825 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  826 	_tmp8_ = _tmp2_;
  827 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  828 	if (_tmp8_) {
  829 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  830 		_tmp1_ = TRUE;
  831 #line 832 "tracker-sparql-expression.c"
  832 	} else {
  833 		TrackerPropertyType _tmp9_;
  834 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  835 		_tmp9_ = type;
  836 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  837 		_tmp1_ = _tmp9_ == TRACKER_PROPERTY_TYPE_DATETIME;
  838 #line 839 "tracker-sparql-expression.c"
  839 	}
  840 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  841 	_tmp10_ = _tmp1_;
  842 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  843 	if (_tmp10_) {
  844 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  845 		_tmp0_ = TRUE;
  846 #line 847 "tracker-sparql-expression.c"
  847 	} else {
  848 		TrackerPropertyType _tmp11_;
  849 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  850 		_tmp11_ = type;
  851 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  852 		_tmp0_ = _tmp11_ == TRACKER_PROPERTY_TYPE_UNKNOWN;
  853 #line 854 "tracker-sparql-expression.c"
  854 	}
  855 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  856 	_tmp12_ = _tmp0_;
  857 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  858 	result = _tmp12_;
  859 #line 76 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  860 	return result;
  861 #line 862 "tracker-sparql-expression.c"
  862 }
  863 
  864 
  865 static void tracker_sparql_expression_append_collate (TrackerSparqlExpression* self, GString* sql) {
  866 	GString* _tmp0_;
  867 #line 79 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  868 	g_return_if_fail (self != NULL);
  869 #line 79 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  870 	g_return_if_fail (sql != NULL);
  871 #line 80 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  872 	_tmp0_ = sql;
  873 #line 80 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  874 	g_string_append_printf (_tmp0_, " COLLATE %s", TRACKER_COLLATION_NAME);
  875 #line 876 "tracker-sparql-expression.c"
  876 }
  877 
  878 
  879 static void tracker_sparql_expression_skip_bracketted_expression (TrackerSparqlExpression* self, GError** error) {
  880 	GError * _inner_error_ = NULL;
  881 #line 83 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  882 	g_return_if_fail (self != NULL);
  883 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  884 	tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_);
  885 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  886 	if (_inner_error_ != NULL) {
  887 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  888 		if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  889 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  890 			g_propagate_error (error, _inner_error_);
  891 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  892 			return;
  893 #line 894 "tracker-sparql-expression.c"
  894 		} else {
  895 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  896 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  897 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  898 			g_clear_error (&_inner_error_);
  899 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  900 			return;
  901 #line 902 "tracker-sparql-expression.c"
  902 		}
  903 	}
  904 #line 85 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  905 	while (TRUE) {
  906 #line 907 "tracker-sparql-expression.c"
  907 		TrackerSparqlTokenType _tmp0_ = 0;
  908 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  909 		_tmp0_ = tracker_sparql_expression_current (self);
  910 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  911 		switch (_tmp0_) {
  912 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  913 			case TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS:
  914 #line 915 "tracker-sparql-expression.c"
  915 			{
  916 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  917 				tracker_sparql_expression_skip_bracketted_expression (self, &_inner_error_);
  918 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  919 				if (_inner_error_ != NULL) {
  920 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  921 					if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  922 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  923 						g_propagate_error (error, _inner_error_);
  924 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  925 						return;
  926 #line 927 "tracker-sparql-expression.c"
  927 					} else {
  928 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  929 						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  930 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  931 						g_clear_error (&_inner_error_);
  932 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  933 						return;
  934 #line 935 "tracker-sparql-expression.c"
  935 					}
  936 				}
  937 #line 90 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  938 				continue;
  939 #line 940 "tracker-sparql-expression.c"
  940 			}
  941 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  942 			case TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS:
  943 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  944 			case TRACKER_SPARQL_TOKEN_TYPE_EOF:
  945 #line 946 "tracker-sparql-expression.c"
  946 			{
  947 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  948 				break;
  949 #line 950 "tracker-sparql-expression.c"
  950 			}
  951 			default:
  952 			{
  953 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  954 				tracker_sparql_expression_next (self, &_inner_error_);
  955 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  956 				if (_inner_error_ != NULL) {
  957 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  958 					if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  959 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  960 						g_propagate_error (error, _inner_error_);
  961 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  962 						return;
  963 #line 964 "tracker-sparql-expression.c"
  964 					} else {
  965 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  966 						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  967 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  968 						g_clear_error (&_inner_error_);
  969 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  970 						return;
  971 #line 972 "tracker-sparql-expression.c"
  972 					}
  973 				}
  974 #line 96 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  975 				continue;
  976 #line 977 "tracker-sparql-expression.c"
  977 			}
  978 		}
  979 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  980 		break;
  981 #line 982 "tracker-sparql-expression.c"
  982 	}
  983 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  984 	tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_);
  985 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  986 	if (_inner_error_ != NULL) {
  987 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  988 		if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
  989 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  990 			g_propagate_error (error, _inner_error_);
  991 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  992 			return;
  993 #line 994 "tracker-sparql-expression.c"
  994 		} else {
  995 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  996 			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
  997 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
  998 			g_clear_error (&_inner_error_);
  999 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1000 			return;
 1001 #line 1002 "tracker-sparql-expression.c"
 1002 		}
 1003 	}
 1004 }
 1005 
 1006 
 1007 void tracker_sparql_expression_skip_select_variables (TrackerSparqlExpression* self, GError** error) {
 1008 	GError * _inner_error_ = NULL;
 1009 #line 103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1010 	g_return_if_fail (self != NULL);
 1011 #line 104 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1012 	while (TRUE) {
 1013 #line 1014 "tracker-sparql-expression.c"
 1014 		TrackerSparqlTokenType _tmp0_ = 0;
 1015 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1016 		_tmp0_ = tracker_sparql_expression_current (self);
 1017 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1018 		switch (_tmp0_) {
 1019 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1020 			case TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS:
 1021 #line 1022 "tracker-sparql-expression.c"
 1022 			{
 1023 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1024 				tracker_sparql_expression_skip_bracketted_expression (self, &_inner_error_);
 1025 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1026 				if (_inner_error_ != NULL) {
 1027 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1028 					if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
 1029 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1030 						g_propagate_error (error, _inner_error_);
 1031 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1032 						return;
 1033 #line 1034 "tracker-sparql-expression.c"
 1034 					} else {
 1035 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1036 						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 1037 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1038 						g_clear_error (&_inner_error_);
 1039 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1040 						return;
 1041 #line 1042 "tracker-sparql-expression.c"
 1042 					}
 1043 				}
 1044 #line 108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1045 				continue;
 1046 #line 1047 "tracker-sparql-expression.c"
 1047 			}
 1048 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1049 			case TRACKER_SPARQL_TOKEN_TYPE_FROM:
 1050 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1051 			case TRACKER_SPARQL_TOKEN_TYPE_WHERE:
 1052 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1053 			case TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE:
 1054 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1055 			case TRACKER_SPARQL_TOKEN_TYPE_GROUP:
 1056 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1057 			case TRACKER_SPARQL_TOKEN_TYPE_ORDER:
 1058 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1059 			case TRACKER_SPARQL_TOKEN_TYPE_LIMIT:
 1060 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1061 			case TRACKER_SPARQL_TOKEN_TYPE_OFFSET:
 1062 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1063 			case TRACKER_SPARQL_TOKEN_TYPE_EOF:
 1064 #line 1065 "tracker-sparql-expression.c"
 1065 			{
 1066 #line 117 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1067 				break;
 1068 #line 1069 "tracker-sparql-expression.c"
 1069 			}
 1070 			default:
 1071 			{
 1072 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1073 				tracker_sparql_expression_next (self, &_inner_error_);
 1074 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1075 				if (_inner_error_ != NULL) {
 1076 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1077 					if (_inner_error_->domain == TRACKER_SPARQL_ERROR) {
 1078 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1079 						g_propagate_error (error, _inner_error_);
 1080 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1081 						return;
 1082 #line 1083 "tracker-sparql-expression.c"
 1083 					} else {
 1084 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1085 						g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
 1086 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1087 						g_clear_error (&_inner_error_);
 1088 #line 119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1089 						return;
 1090 #line 1091 "tracker-sparql-expression.c"
 1091 					}
 1092 				}
 1093 #line 120 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1094 				continue;
 1095 #line 1096 "tracker-sparql-expression.c"
 1096 			}
 1097 		}
 1098 #line 122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1099 		break;
 1100 #line 1101 "tracker-sparql-expression.c"
 1101 	}
 1102 }
 1103 
 1104 
 1105 static glong string_strnlen (gchar* str, glong maxlen) {
 1106 	glong result = 0L;
 1107 	gchar* _tmp0_;
 1108 	glong _tmp1_;
 1109 	gchar* _tmp2_ = NULL;
 1110 	gchar* end;
 1111 	gchar* _tmp3_;
 1112 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1113 	_tmp0_ = str;
 1114 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1115 	_tmp1_ = maxlen;
 1116 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1117 	_tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_);
 1118 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1119 	end = _tmp2_;
 1120 #line 1148 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1121 	_tmp3_ = end;
 1122 #line 1148 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1123 	if (_tmp3_ == NULL) {
 1124 #line 1125 "tracker-sparql-expression.c"
 1125 		glong _tmp4_;
 1126 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1127 		_tmp4_ = maxlen;
 1128 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1129 		result = _tmp4_;
 1130 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1131 		return result;
 1132 #line 1133 "tracker-sparql-expression.c"
 1133 	} else {
 1134 		gchar* _tmp5_;
 1135 		gchar* _tmp6_;
 1136 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1137 		_tmp5_ = end;
 1138 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1139 		_tmp6_ = str;
 1140 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1141 		result = (glong) (_tmp5_ - _tmp6_);
 1142 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1143 		return result;
 1144 #line 1145 "tracker-sparql-expression.c"
 1145 	}
 1146 }
 1147 
 1148 
 1149 static gchar* string_substring (const gchar* self, glong offset, glong len) {
 1150 	gchar* result = NULL;
 1151 	glong string_length = 0L;
 1152 	gboolean _tmp0_ = FALSE;
 1153 	glong _tmp1_;
 1154 	gboolean _tmp3_;
 1155 	glong _tmp9_;
 1156 	glong _tmp15_;
 1157 	glong _tmp18_;
 1158 	glong _tmp19_;
 1159 	glong _tmp20_;
 1160 	glong _tmp21_;
 1161 	glong _tmp22_;
 1162 	gchar* _tmp23_ = NULL;
 1163 #line 1158 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1164 	g_return_val_if_fail (self != NULL, NULL);
 1165 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1166 	_tmp1_ = offset;
 1167 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1168 	if (_tmp1_ >= ((glong) 0)) {
 1169 #line 1170 "tracker-sparql-expression.c"
 1170 		glong _tmp2_;
 1171 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1172 		_tmp2_ = len;
 1173 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1174 		_tmp0_ = _tmp2_ >= ((glong) 0);
 1175 #line 1176 "tracker-sparql-expression.c"
 1176 	} else {
 1177 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1178 		_tmp0_ = FALSE;
 1179 #line 1180 "tracker-sparql-expression.c"
 1180 	}
 1181 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1182 	_tmp3_ = _tmp0_;
 1183 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1184 	if (_tmp3_) {
 1185 #line 1186 "tracker-sparql-expression.c"
 1186 		glong _tmp4_;
 1187 		glong _tmp5_;
 1188 		glong _tmp6_ = 0L;
 1189 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1190 		_tmp4_ = offset;
 1191 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1192 		_tmp5_ = len;
 1193 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1194 		_tmp6_ = string_strnlen ((gchar*) self, _tmp4_ + _tmp5_);
 1195 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1196 		string_length = _tmp6_;
 1197 #line 1198 "tracker-sparql-expression.c"
 1198 	} else {
 1199 		gint _tmp7_;
 1200 		gint _tmp8_;
 1201 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1202 		_tmp7_ = strlen (self);
 1203 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1204 		_tmp8_ = _tmp7_;
 1205 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1206 		string_length = (glong) _tmp8_;
 1207 #line 1208 "tracker-sparql-expression.c"
 1208 	}
 1209 #line 1167 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1210 	_tmp9_ = offset;
 1211 #line 1167 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1212 	if (_tmp9_ < ((glong) 0)) {
 1213 #line 1214 "tracker-sparql-expression.c"
 1214 		glong _tmp10_;
 1215 		glong _tmp11_;
 1216 		glong _tmp12_;
 1217 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1218 		_tmp10_ = string_length;
 1219 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1220 		_tmp11_ = offset;
 1221 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1222 		offset = _tmp10_ + _tmp11_;
 1223 #line 1169 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1224 		_tmp12_ = offset;
 1225 #line 1169 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1226 		g_return_val_if_fail (_tmp12_ >= ((glong) 0), NULL);
 1227 #line 1228 "tracker-sparql-expression.c"
 1228 	} else {
 1229 		glong _tmp13_;
 1230 		glong _tmp14_;
 1231 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1232 		_tmp13_ = offset;
 1233 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1234 		_tmp14_ = string_length;
 1235 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1236 		g_return_val_if_fail (_tmp13_ <= _tmp14_, NULL);
 1237 #line 1238 "tracker-sparql-expression.c"
 1238 	}
 1239 #line 1173 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1240 	_tmp15_ = len;
 1241 #line 1173 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1242 	if (_tmp15_ < ((glong) 0)) {
 1243 #line 1244 "tracker-sparql-expression.c"
 1244 		glong _tmp16_;
 1245 		glong _tmp17_;
 1246 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1247 		_tmp16_ = string_length;
 1248 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1249 		_tmp17_ = offset;
 1250 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1251 		len = _tmp16_ - _tmp17_;
 1252 #line 1253 "tracker-sparql-expression.c"
 1253 	}
 1254 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1255 	_tmp18_ = offset;
 1256 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1257 	_tmp19_ = len;
 1258 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1259 	_tmp20_ = string_length;
 1260 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1261 	g_return_val_if_fail ((_tmp18_ + _tmp19_) <= _tmp20_, NULL);
 1262 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1263 	_tmp21_ = offset;
 1264 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1265 	_tmp22_ = len;
 1266 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1267 	_tmp23_ = g_strndup (((gchar*) self) + _tmp21_, (gsize) _tmp22_);
 1268 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1269 	result = _tmp23_;
 1270 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi"
 1271 	return result;
 1272 #line 1273 "tracker-sparql-expression.c"
 1273 }
 1274 
 1275 
 1276 static gpointer _g_object_ref0 (gpointer self) {
 1277 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1278 	return self ? g_object_ref (self) : NULL;
 1279 #line 1280 "tracker-sparql-expression.c"
 1280 }
 1281 
 1282 
 1283 static void _vala_array_add1 (gchar*** array, int* length, int* size, gchar* value) {
 1284 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1285 	if ((*length) == (*size)) {
 1286 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1287 		*size = (*size) ? (2 * (*size)) : 4;
 1288 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1289 		*array = g_renew (gchar*, *array, (*size) + 1);
 1290 #line 1291 "tracker-sparql-expression.c"
 1291 	}
 1292 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1293 	(*array)[(*length)++] = value;
 1294 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1295 	(*array)[*length] = NULL;
 1296 #line 1297 "tracker-sparql-expression.c"
 1297 }
 1298 
 1299 
 1300 static void _vala_array_add2 (gchar*** array, int* length, int* size, gchar* value) {
 1301 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1302 	if ((*length) == (*size)) {
 1303 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1304 		*size = (*size) ? (2 * (*size)) : 4;
 1305 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1306 		*array = g_renew (gchar*, *array, (*size) + 1);
 1307 #line 1308 "tracker-sparql-expression.c"
 1308 	}
 1309 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1310 	(*array)[(*length)++] = value;
 1311 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1312 	(*array)[*length] = NULL;
 1313 #line 1314 "tracker-sparql-expression.c"
 1314 }
 1315 
 1316 
 1317 static void _vala_array_add3 (gchar*** array, int* length, int* size, gchar* value) {
 1318 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1319 	if ((*length) == (*size)) {
 1320 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1321 		*size = (*size) ? (2 * (*size)) : 4;
 1322 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1323 		*array = g_renew (gchar*, *array, (*size) + 1);
 1324 #line 1325 "tracker-sparql-expression.c"
 1325 	}
 1326 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1327 	(*array)[(*length)++] = value;
 1328 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1329 	(*array)[*length] = NULL;
 1330 #line 1331 "tracker-sparql-expression.c"
 1331 }
 1332 
 1333 
 1334 static void _vala_array_add4 (gchar*** array, int* length, int* size, gchar* value) {
 1335 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1336 	if ((*length) == (*size)) {
 1337 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1338 		*size = (*size) ? (2 * (*size)) : 4;
 1339 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1340 		*array = g_renew (gchar*, *array, (*size) + 1);
 1341 #line 1342 "tracker-sparql-expression.c"
 1342 	}
 1343 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1344 	(*array)[(*length)++] = value;
 1345 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1346 	(*array)[*length] = NULL;
 1347 #line 1348 "tracker-sparql-expression.c"
 1348 }
 1349 
 1350 
 1351 TrackerPropertyType tracker_sparql_expression_translate_select_expression (TrackerSparqlExpression* self, GString* sql, gboolean subquery, gint variable_index, GError** error) {
 1352 	TrackerPropertyType result = 0;
 1353 	TrackerSparqlVariable* variable;
 1354 	gboolean expect_close_parens;
 1355 	gboolean as_handled;
 1356 	GString* _tmp0_;
 1357 	gssize _tmp1_;
 1358 	glong begin;
 1359 	TrackerPropertyType type;
 1360 	TrackerSparqlTokenType _tmp2_ = 0;
 1361 	gboolean _tmp42_;
 1362 	gboolean _tmp46_ = FALSE;
 1363 	gboolean _tmp47_;
 1364 	TrackerSparqlPattern* _tmp83_;
 1365 	TrackerSparqlPattern* _tmp84_;
 1366 	TrackerSparqlVariable* _tmp85_;
 1367 	gboolean _tmp118_;
 1368 	TrackerSparqlVariable* _tmp119_;
 1369 	GError * _inner_error_ = NULL;
 1370 #line 126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1371 	g_return_val_if_fail (self != NULL, 0);
 1372 #line 126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1373 	g_return_val_if_fail (sql != NULL, 0);
 1374 #line 127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1375 	variable = NULL;
 1376 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1377 	expect_close_parens = FALSE;
 1378 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1379 	as_handled = FALSE;
 1380 #line 131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1381 	_tmp0_ = sql;
 1382 #line 131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1383 	_tmp1_ = _tmp0_->len;
 1384 #line 131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1385 	begin = (glong) _tmp1_;
 1386 #line 132 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala"
 1387 	type = TRACKER_PROPERTY_TYPE_UNKNOWN;
Value stored to 'type' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

1388 #line 133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1389 _tmp2_ = tracker_sparql_expression_current (self); 1390 #line 133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1391 if (_tmp2_ == TRACKER_SPARQL_TOKEN_TYPE_VAR) { 1392 #line 1393 "tracker-sparql-expression.c" 1393 GString* _tmp3_; 1394 TrackerPropertyType _tmp4_ = 0; 1395 TrackerPropertyType _tmp5_; 1396 TrackerSparqlContext* _tmp6_; 1397 TrackerSparqlContext* _tmp7_; 1398 gchar* _tmp8_ = NULL; 1399 gchar* _tmp9_; 1400 gchar* _tmp10_ = NULL; 1401 gchar* _tmp11_; 1402 TrackerSparqlVariable* _tmp12_ = NULL; 1403 TrackerSparqlVariable* _tmp13_; 1404 TrackerSparqlVariable* _tmp14_; 1405 TrackerSparqlVariableBinding* _tmp15_; 1406 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1407 _tmp3_ = sql; 1408 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1409 _tmp4_ = tracker_sparql_expression_translate_expression (self, _tmp3_, &_inner_error_); 1410 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1411 _tmp5_ = _tmp4_; 1412 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1413 if (_inner_error_ != NULL) { 1414 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1415 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1416 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1417 g_propagate_error (error, _inner_error_); 1418 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1419 _g_object_unref0 (variable); 1420 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1421 return 0; 1422 #line 1423 "tracker-sparql-expression.c" 1423 } else { 1424 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1425 _g_object_unref0 (variable); 1426 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1427 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1428 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1429 g_clear_error (&_inner_error_); 1430 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1431 return 0; 1432 #line 1433 "tracker-sparql-expression.c" 1433 } 1434 } 1435 #line 134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1436 type = _tmp5_; 1437 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1438 _tmp6_ = tracker_sparql_expression_get_context (self); 1439 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1440 _tmp7_ = _tmp6_; 1441 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1442 _tmp8_ = tracker_sparql_expression_get_last_string (self, 0); 1443 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1444 _tmp9_ = _tmp8_; 1445 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1446 _tmp10_ = string_substring (_tmp9_, (glong) 1, (glong) (-1)); 1447 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1448 _tmp11_ = _tmp10_; 1449 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1450 _tmp12_ = tracker_sparql_context_get_variable (_tmp7_, _tmp11_); 1451 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1452 _tmp13_ = _g_object_ref0 (_tmp12_); 1453 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1454 _g_object_unref0 (variable); 1455 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1456 variable = _tmp13_; 1457 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1458 _g_free0 (_tmp11_); 1459 #line 136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1460 _g_free0 (_tmp9_); 1461 #line 138 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1462 _tmp14_ = variable; 1463 #line 138 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1464 _tmp15_ = _tmp14_->binding; 1465 #line 138 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1466 if (_tmp15_ == NULL) { 1467 #line 1468 "tracker-sparql-expression.c" 1468 TrackerSparqlVariable* _tmp16_; 1469 const gchar* _tmp17_; 1470 const gchar* _tmp18_; 1471 gchar* _tmp19_ = NULL; 1472 gchar* _tmp20_; 1473 GError* _tmp21_ = NULL; 1474 GError* _tmp22_; 1475 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1476 _tmp16_ = variable; 1477 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1478 _tmp17_ = tracker_sparql_variable_get_name (_tmp16_); 1479 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1480 _tmp18_ = _tmp17_; 1481 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1482 _tmp19_ = g_strdup_printf ("use of undefined variable `%s'", _tmp18_); 1483 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1484 _tmp20_ = _tmp19_; 1485 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1486 _tmp21_ = tracker_sparql_expression_get_error (self, _tmp20_); 1487 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1488 _tmp22_ = _tmp21_; 1489 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1490 _g_free0 (_tmp20_); 1491 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1492 _inner_error_ = _tmp22_; 1493 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1494 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1495 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1496 g_propagate_error (error, _inner_error_); 1497 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1498 _g_object_unref0 (variable); 1499 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1500 return 0; 1501 #line 1502 "tracker-sparql-expression.c" 1502 } else { 1503 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1504 _g_object_unref0 (variable); 1505 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1506 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1507 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1508 g_clear_error (&_inner_error_); 1509 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1510 return 0; 1511 #line 1512 "tracker-sparql-expression.c" 1512 } 1513 } 1514 } else { 1515 gboolean _tmp23_ = FALSE; 1516 gboolean _tmp24_; 1517 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1518 _tmp23_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 1519 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1520 _tmp24_ = _tmp23_; 1521 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1522 if (_inner_error_ != NULL) { 1523 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1524 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1525 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1526 g_propagate_error (error, _inner_error_); 1527 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1528 _g_object_unref0 (variable); 1529 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1530 return 0; 1531 #line 1532 "tracker-sparql-expression.c" 1532 } else { 1533 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1534 _g_object_unref0 (variable); 1535 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1536 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1537 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1538 g_clear_error (&_inner_error_); 1539 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1540 return 0; 1541 #line 1542 "tracker-sparql-expression.c" 1542 } 1543 } 1544 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1545 if (_tmp24_) { 1546 #line 1547 "tracker-sparql-expression.c" 1547 TrackerSparqlTokenType _tmp25_ = 0; 1548 #line 142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1549 _tmp25_ = tracker_sparql_expression_current (self); 1550 #line 142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1551 if (_tmp25_ == TRACKER_SPARQL_TOKEN_TYPE_SELECT) { 1552 #line 1553 "tracker-sparql-expression.c" 1553 GString* _tmp26_; 1554 TrackerSparqlPattern* _tmp27_; 1555 TrackerSparqlPattern* _tmp28_; 1556 GString* _tmp29_; 1557 TrackerSparqlSelectContext* _tmp30_ = NULL; 1558 TrackerSparqlSelectContext* select_context; 1559 GString* _tmp31_; 1560 TrackerSparqlSelectContext* _tmp32_; 1561 TrackerPropertyType _tmp33_; 1562 #line 145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1563 _tmp26_ = sql; 1564 #line 145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1565 g_string_append (_tmp26_, "("); 1566 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1567 _tmp27_ = tracker_sparql_expression_get_pattern (self); 1568 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1569 _tmp28_ = _tmp27_; 1570 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1571 _tmp29_ = sql; 1572 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1573 _tmp30_ = tracker_sparql_pattern_translate_select (_tmp28_, _tmp29_, TRUE, TRUE, &_inner_error_); 1574 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1575 select_context = _tmp30_; 1576 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1577 if (_inner_error_ != NULL) { 1578 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1579 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1580 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1581 g_propagate_error (error, _inner_error_); 1582 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1583 _g_object_unref0 (variable); 1584 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1585 return 0; 1586 #line 1587 "tracker-sparql-expression.c" 1587 } else { 1588 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1589 _g_object_unref0 (variable); 1590 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1591 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1592 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1593 g_clear_error (&_inner_error_); 1594 #line 146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1595 return 0; 1596 #line 1597 "tracker-sparql-expression.c" 1597 } 1598 } 1599 #line 147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1600 _tmp31_ = sql; 1601 #line 147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1602 g_string_append (_tmp31_, ")"); 1603 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1604 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 1605 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1606 if (_inner_error_ != NULL) { 1607 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1608 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1609 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1610 g_propagate_error (error, _inner_error_); 1611 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1612 _tracker_sparql_context_unref0 (select_context); 1613 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1614 _g_object_unref0 (variable); 1615 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1616 return 0; 1617 #line 1618 "tracker-sparql-expression.c" 1618 } else { 1619 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1620 _tracker_sparql_context_unref0 (select_context); 1621 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1622 _g_object_unref0 (variable); 1623 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1624 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1625 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1626 g_clear_error (&_inner_error_); 1627 #line 149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1628 return 0; 1629 #line 1630 "tracker-sparql-expression.c" 1630 } 1631 } 1632 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1633 _tmp32_ = select_context; 1634 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1635 _tmp33_ = _tmp32_->type; 1636 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1637 type = _tmp33_; 1638 #line 142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1639 _tracker_sparql_context_unref0 (select_context); 1640 #line 1641 "tracker-sparql-expression.c" 1641 } else { 1642 GString* _tmp34_; 1643 TrackerPropertyType _tmp35_ = 0; 1644 TrackerPropertyType _tmp36_; 1645 gboolean _tmp37_ = FALSE; 1646 gboolean _tmp38_; 1647 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1648 _tmp34_ = sql; 1649 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1650 _tmp35_ = tracker_sparql_expression_translate_expression (self, _tmp34_, &_inner_error_); 1651 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1652 _tmp36_ = _tmp35_; 1653 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1654 if (_inner_error_ != NULL) { 1655 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1656 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1657 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1658 g_propagate_error (error, _inner_error_); 1659 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1660 _g_object_unref0 (variable); 1661 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1662 return 0; 1663 #line 1664 "tracker-sparql-expression.c" 1664 } else { 1665 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1666 _g_object_unref0 (variable); 1667 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1668 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1669 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1670 g_clear_error (&_inner_error_); 1671 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1672 return 0; 1673 #line 1674 "tracker-sparql-expression.c" 1674 } 1675 } 1676 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1677 type = _tmp36_; 1678 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1679 _tmp37_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 1680 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1681 _tmp38_ = _tmp37_; 1682 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1683 if (_inner_error_ != NULL) { 1684 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1685 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1686 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1687 g_propagate_error (error, _inner_error_); 1688 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1689 _g_object_unref0 (variable); 1690 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1691 return 0; 1692 #line 1693 "tracker-sparql-expression.c" 1693 } else { 1694 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1695 _g_object_unref0 (variable); 1696 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1697 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1698 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1699 g_clear_error (&_inner_error_); 1700 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1701 return 0; 1702 #line 1703 "tracker-sparql-expression.c" 1703 } 1704 } 1705 #line 153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1706 if (_tmp38_) { 1707 #line 1708 "tracker-sparql-expression.c" 1708 } else { 1709 #line 159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1710 expect_close_parens = TRUE; 1711 #line 1712 "tracker-sparql-expression.c" 1712 } 1713 } 1714 } else { 1715 GString* _tmp39_; 1716 TrackerPropertyType _tmp40_ = 0; 1717 TrackerPropertyType _tmp41_; 1718 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1719 _tmp39_ = sql; 1720 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1721 _tmp40_ = tracker_sparql_expression_translate_expression (self, _tmp39_, &_inner_error_); 1722 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1723 _tmp41_ = _tmp40_; 1724 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1725 if (_inner_error_ != NULL) { 1726 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1727 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1728 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1729 g_propagate_error (error, _inner_error_); 1730 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1731 _g_object_unref0 (variable); 1732 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1733 return 0; 1734 #line 1735 "tracker-sparql-expression.c" 1735 } else { 1736 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1737 _g_object_unref0 (variable); 1738 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1739 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1740 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1741 g_clear_error (&_inner_error_); 1742 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1743 return 0; 1744 #line 1745 "tracker-sparql-expression.c" 1745 } 1746 } 1747 #line 165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1748 type = _tmp41_; 1749 #line 1750 "tracker-sparql-expression.c" 1750 } 1751 } 1752 #line 168 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1753 _tmp42_ = subquery; 1754 #line 168 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1755 if (!_tmp42_) { 1756 #line 1757 "tracker-sparql-expression.c" 1757 GString* _tmp43_; 1758 TrackerPropertyType _tmp44_; 1759 glong _tmp45_; 1760 #line 169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1761 _tmp43_ = sql; 1762 #line 169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1763 _tmp44_ = type; 1764 #line 169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1765 _tmp45_ = begin; 1766 #line 169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1767 tracker_sparql_expression_convert_expression_to_string (_tmp43_, _tmp44_, _tmp45_); 1768 #line 1769 "tracker-sparql-expression.c" 1769 } 1770 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1771 _tmp46_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_AS, &_inner_error_); 1772 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1773 _tmp47_ = _tmp46_; 1774 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1775 if (_inner_error_ != NULL) { 1776 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1777 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1778 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1779 g_propagate_error (error, _inner_error_); 1780 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1781 _g_object_unref0 (variable); 1782 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1783 return 0; 1784 #line 1785 "tracker-sparql-expression.c" 1785 } else { 1786 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1787 _g_object_unref0 (variable); 1788 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1789 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1790 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1791 g_clear_error (&_inner_error_); 1792 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1793 return 0; 1794 #line 1795 "tracker-sparql-expression.c" 1795 } 1796 } 1797 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1798 if (_tmp47_) { 1799 #line 1800 "tracker-sparql-expression.c" 1800 gboolean _tmp48_ = FALSE; 1801 gboolean _tmp49_; 1802 GString* _tmp64_; 1803 TrackerSparqlVariable* _tmp65_; 1804 const gchar* _tmp66_; 1805 const gchar* _tmp67_; 1806 gboolean _tmp68_; 1807 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1808 _tmp48_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX, &_inner_error_); 1809 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1810 _tmp49_ = _tmp48_; 1811 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1812 if (_inner_error_ != NULL) { 1813 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1814 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1815 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1816 g_propagate_error (error, _inner_error_); 1817 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1818 _g_object_unref0 (variable); 1819 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1820 return 0; 1821 #line 1822 "tracker-sparql-expression.c" 1822 } else { 1823 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1824 _g_object_unref0 (variable); 1825 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1826 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1827 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1828 g_clear_error (&_inner_error_); 1829 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1830 return 0; 1831 #line 1832 "tracker-sparql-expression.c" 1832 } 1833 } 1834 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1835 if (_tmp49_) { 1836 #line 1837 "tracker-sparql-expression.c" 1837 TrackerSparqlContext* _tmp50_; 1838 TrackerSparqlContext* _tmp51_; 1839 gchar* _tmp52_ = NULL; 1840 gchar* _tmp53_; 1841 TrackerSparqlVariable* _tmp54_ = NULL; 1842 TrackerSparqlVariable* _tmp55_; 1843 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1844 _tmp50_ = tracker_sparql_expression_get_context (self); 1845 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1846 _tmp51_ = _tmp50_; 1847 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1848 _tmp52_ = tracker_sparql_expression_get_last_string (self, 0); 1849 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1850 _tmp53_ = _tmp52_; 1851 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1852 _tmp54_ = tracker_sparql_context_get_variable (_tmp51_, _tmp53_); 1853 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1854 _tmp55_ = _g_object_ref0 (_tmp54_); 1855 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1856 _g_object_unref0 (variable); 1857 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1858 variable = _tmp55_; 1859 #line 176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1860 _g_free0 (_tmp53_); 1861 #line 1862 "tracker-sparql-expression.c" 1862 } else { 1863 TrackerSparqlContext* _tmp56_; 1864 TrackerSparqlContext* _tmp57_; 1865 gchar* _tmp58_ = NULL; 1866 gchar* _tmp59_; 1867 gchar* _tmp60_ = NULL; 1868 gchar* _tmp61_; 1869 TrackerSparqlVariable* _tmp62_ = NULL; 1870 TrackerSparqlVariable* _tmp63_; 1871 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1872 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 1873 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1874 if (_inner_error_ != NULL) { 1875 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1876 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1877 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1878 g_propagate_error (error, _inner_error_); 1879 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1880 _g_object_unref0 (variable); 1881 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1882 return 0; 1883 #line 1884 "tracker-sparql-expression.c" 1884 } else { 1885 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1886 _g_object_unref0 (variable); 1887 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1888 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1889 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1890 g_clear_error (&_inner_error_); 1891 #line 180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1892 return 0; 1893 #line 1894 "tracker-sparql-expression.c" 1894 } 1895 } 1896 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1897 _tmp56_ = tracker_sparql_expression_get_context (self); 1898 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1899 _tmp57_ = _tmp56_; 1900 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1901 _tmp58_ = tracker_sparql_expression_get_last_string (self, 0); 1902 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1903 _tmp59_ = _tmp58_; 1904 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1905 _tmp60_ = string_substring (_tmp59_, (glong) 1, (glong) (-1)); 1906 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1907 _tmp61_ = _tmp60_; 1908 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1909 _tmp62_ = tracker_sparql_context_get_variable (_tmp57_, _tmp61_); 1910 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1911 _tmp63_ = _g_object_ref0 (_tmp62_); 1912 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1913 _g_object_unref0 (variable); 1914 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1915 variable = _tmp63_; 1916 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1917 _g_free0 (_tmp61_); 1918 #line 181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1919 _g_free0 (_tmp59_); 1920 #line 1921 "tracker-sparql-expression.c" 1921 } 1922 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1923 _tmp64_ = sql; 1924 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1925 _tmp65_ = variable; 1926 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1927 _tmp66_ = tracker_sparql_variable_get_sql_expression (_tmp65_); 1928 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1929 _tmp67_ = _tmp66_; 1930 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1931 g_string_append_printf (_tmp64_, " AS %s", _tmp67_); 1932 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1933 as_handled = TRUE; 1934 #line 186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1935 _tmp68_ = subquery; 1936 #line 186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1937 if (_tmp68_) { 1938 #line 1939 "tracker-sparql-expression.c" 1939 TrackerSparqlVariableBinding* _tmp69_; 1940 TrackerSparqlVariableBinding* binding; 1941 TrackerSparqlVariableBinding* _tmp70_; 1942 TrackerPropertyType _tmp71_; 1943 TrackerSparqlVariableBinding* _tmp72_; 1944 TrackerSparqlVariable* _tmp73_; 1945 TrackerSparqlVariableBinding* _tmp74_; 1946 TrackerSparqlVariable* _tmp75_; 1947 const gchar* _tmp76_; 1948 const gchar* _tmp77_; 1949 TrackerSparqlPattern* _tmp78_; 1950 TrackerSparqlPattern* _tmp79_; 1951 GString* _tmp80_; 1952 GString* _tmp81_; 1953 TrackerSparqlVariableBinding* _tmp82_; 1954 #line 187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1955 _tmp69_ = tracker_sparql_variable_binding_new (); 1956 #line 187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1957 binding = _tmp69_; 1958 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1959 _tmp70_ = binding; 1960 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1961 _tmp71_ = type; 1962 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1963 ((TrackerSparqlDataBinding*) _tmp70_)->data_type = _tmp71_; 1964 #line 189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1965 _tmp72_ = binding; 1966 #line 189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1967 _tmp73_ = variable; 1968 #line 189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1969 _tmp72_->variable = _tmp73_; 1970 #line 190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1971 _tmp74_ = binding; 1972 #line 190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1973 _tmp75_ = variable; 1974 #line 190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1975 _tmp76_ = tracker_sparql_variable_get_sql_expression (_tmp75_); 1976 #line 190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1977 _tmp77_ = _tmp76_; 1978 #line 190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1979 tracker_sparql_data_binding_set_sql_expression ((TrackerSparqlDataBinding*) _tmp74_, _tmp77_); 1980 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1981 _tmp78_ = tracker_sparql_expression_get_pattern (self); 1982 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1983 _tmp79_ = _tmp78_; 1984 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1985 _tmp80_ = g_string_new (""); 1986 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1987 _tmp81_ = _tmp80_; 1988 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1989 _tmp82_ = binding; 1990 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1991 tracker_sparql_pattern_add_variable_binding (_tmp79_, _tmp81_, _tmp82_, TRACKER_SPARQL_VARIABLE_STATE_BOUND); 1992 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1993 _g_string_free0 (_tmp81_); 1994 #line 186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 1995 _g_object_unref0 (binding); 1996 #line 1997 "tracker-sparql-expression.c" 1997 } 1998 } 1999 #line 195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2000 _tmp83_ = tracker_sparql_expression_get_pattern (self); 2001 #line 195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2002 _tmp84_ = _tmp83_; 2003 #line 195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2004 _tmp85_ = _tmp84_->fts_subject; 2005 #line 195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2006 if (_tmp85_ != NULL) { 2007 #line 2008 "tracker-sparql-expression.c" 2008 TrackerSparqlVariable* _tmp86_; 2009 const gchar* _tmp94_; 2010 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2011 _tmp86_ = variable; 2012 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2013 if (_tmp86_ == NULL) { 2014 #line 2015 "tracker-sparql-expression.c" 2015 TrackerSparqlContext* _tmp87_; 2016 TrackerSparqlContext* _tmp88_; 2017 gint _tmp89_; 2018 gchar* _tmp90_ = NULL; 2019 gchar* _tmp91_; 2020 TrackerSparqlVariable* _tmp92_ = NULL; 2021 TrackerSparqlVariable* _tmp93_; 2022 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2023 _tmp87_ = tracker_sparql_expression_get_context (self); 2024 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2025 _tmp88_ = _tmp87_; 2026 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2027 _tmp89_ = variable_index; 2028 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2029 _tmp90_ = g_strdup_printf ("var%d", _tmp89_ + 1); 2030 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2031 _tmp91_ = _tmp90_; 2032 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2033 _tmp92_ = tracker_sparql_context_get_variable (_tmp88_, _tmp91_); 2034 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2035 _tmp93_ = _g_object_ref0 (_tmp92_); 2036 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2037 _g_object_unref0 (variable); 2038 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2039 variable = _tmp93_; 2040 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2041 _g_free0 (_tmp91_); 2042 #line 2043 "tracker-sparql-expression.c" 2043 } 2044 #line 202 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2045 _tmp94_ = self->priv->fts_sql; 2046 #line 202 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2047 if (_tmp94_ == NULL) { 2048 #line 2049 "tracker-sparql-expression.c" 2049 TrackerSparqlPattern* _tmp95_; 2050 TrackerSparqlPattern* _tmp96_; 2051 TrackerSparqlPattern* _tmp97_; 2052 TrackerSparqlPattern* _tmp98_; 2053 gchar** _tmp99_; 2054 gint _tmp99__length1;
variable '_tmp99__length1' set but not used
(emitted by gcc)
2055 TrackerSparqlVariable* _tmp100_; 2056 const gchar* _tmp101_; 2057 const gchar* _tmp102_; 2058 gchar* _tmp103_; 2059 gboolean _tmp104_; 2060 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2061 _tmp95_ = tracker_sparql_expression_get_pattern (self); 2062 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2063 _tmp96_ = _tmp95_; 2064 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2065 _tmp97_ = tracker_sparql_expression_get_pattern (self); 2066 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2067 _tmp98_ = _tmp97_; 2068 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2069 _tmp99_ = _tmp98_->fts_variables;
Value stored to '_tmp99_' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2070 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2071 _tmp99__length1 = _tmp98_->fts_variables_length1;
Value stored to '_tmp99__length1' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2072 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2073 _tmp100_ = variable; 2074 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2075 _tmp101_ = tracker_sparql_variable_get_sql_expression (_tmp100_); 2076 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2077 _tmp102_ = _tmp101_; 2078 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2079 _tmp103_ = g_strdup (_tmp102_); 2080 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2081 _vala_array_add1 (&_tmp96_->fts_variables, &_tmp96_->fts_variables_length1, &_tmp96_->_fts_variables_size_, _tmp103_); 2082 #line 205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2083 _tmp104_ = as_handled; 2084 #line 205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2085 if (_tmp104_ == FALSE) { 2086 #line 2087 "tracker-sparql-expression.c" 2087 GString* _tmp105_; 2088 TrackerSparqlVariable* _tmp106_; 2089 const gchar* _tmp107_; 2090 const gchar* _tmp108_; 2091 #line 206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2092 _tmp105_ = sql; 2093 #line 206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2094 _tmp106_ = variable; 2095 #line 206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2096 _tmp107_ = tracker_sparql_variable_get_sql_expression (_tmp106_); 2097 #line 206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2098 _tmp108_ = _tmp107_; 2099 #line 206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2100 g_string_append_printf (_tmp105_, " AS %s", _tmp108_); 2101 #line 2102 "tracker-sparql-expression.c" 2102 } 2103 } else { 2104 TrackerSparqlPattern* _tmp109_; 2105 TrackerSparqlPattern* _tmp110_; 2106 TrackerSparqlPattern* _tmp111_; 2107 TrackerSparqlPattern* _tmp112_; 2108 gchar** _tmp113_; 2109 gint _tmp113__length1; 2110 const gchar* _tmp114_; 2111 gchar* _tmp115_; 2112 TrackerSparqlPattern* _tmp116_; 2113 TrackerSparqlPattern* _tmp117_; 2114 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2115 _tmp109_ = tracker_sparql_expression_get_pattern (self); 2116 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2117 _tmp110_ = _tmp109_; 2118 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2119 _tmp111_ = tracker_sparql_expression_get_pattern (self); 2120 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2121 _tmp112_ = _tmp111_; 2122 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2123 _tmp113_ = _tmp112_->fts_variables;
Value stored to '_tmp113_' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2124 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2125 _tmp113__length1 = _tmp112_->fts_variables_length1;
Value stored to '_tmp113__length1' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2126 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2127 _tmp114_ = self->priv->fts_sql; 2128 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2129 _tmp115_ = g_strdup (_tmp114_); 2130 #line 209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2131 _vala_array_add2 (&_tmp110_->fts_variables, &_tmp110_->fts_variables_length1, &_tmp110_->_fts_variables_size_, _tmp115_); 2132 #line 210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2133 _tmp116_ = tracker_sparql_expression_get_pattern (self); 2134 #line 210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2135 _tmp117_ = _tmp116_; 2136 #line 210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2137 _tmp117_->queries_fts_data = TRUE; 2138 #line 2139 "tracker-sparql-expression.c" 2139 } 2140 } 2141 #line 214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2142 _tmp118_ = expect_close_parens; 2143 #line 214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2144 if (_tmp118_) { 2145 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2146 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 2147 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2148 if (_inner_error_ != NULL) { 2149 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2150 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2151 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2152 g_propagate_error (error, _inner_error_); 2153 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2154 _g_object_unref0 (variable); 2155 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2156 return 0; 2157 #line 2158 "tracker-sparql-expression.c" 2158 } else { 2159 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2160 _g_object_unref0 (variable); 2161 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2162 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2163 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2164 g_clear_error (&_inner_error_); 2165 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2166 return 0; 2167 #line 2168 "tracker-sparql-expression.c" 2168 } 2169 } 2170 } 2171 #line 218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2172 _tmp119_ = variable; 2173 #line 218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2174 if (_tmp119_ != NULL) { 2175 #line 2176 "tracker-sparql-expression.c" 2176 TrackerSparqlContext* _tmp120_; 2177 TrackerSparqlContext* _tmp121_; 2178 GHashTable* _tmp122_; 2179 TrackerSparqlVariable* _tmp123_; 2180 gconstpointer _tmp124_ = NULL; 2181 gint state; 2182 gint _tmp125_; 2183 TrackerSparqlContext* _tmp126_; 2184 TrackerSparqlContext* _tmp127_; 2185 GHashTable* _tmp128_; 2186 TrackerSparqlVariable* _tmp129_; 2187 TrackerSparqlVariable* _tmp130_; 2188 gint _tmp131_; 2189 TrackerSparqlContext* _tmp132_; 2190 TrackerSparqlContext* _tmp133_; 2191 TrackerSparqlContext* _tmp134_; 2192 TrackerSparqlContext* _tmp135_; 2193 gchar** _tmp136_; 2194 gint _tmp136__length1; 2195 TrackerSparqlVariable* _tmp137_; 2196 const gchar* _tmp138_; 2197 const gchar* _tmp139_; 2198 gchar* _tmp140_; 2199 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2200 _tmp120_ = tracker_sparql_expression_get_context (self); 2201 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2202 _tmp121_ = _tmp120_; 2203 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2204 _tmp122_ = _tmp121_->var_set; 2205 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2206 _tmp123_ = variable; 2207 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2208 _tmp124_ = g_hash_table_lookup (_tmp122_, _tmp123_); 2209 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2210 state = (gint) ((gintptr) _tmp124_); 2211 #line 220 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2212 _tmp125_ = state; 2213 #line 220 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2214 if (_tmp125_ == 0) { 2215 #line 221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2216 state = (gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND; 2217 #line 2218 "tracker-sparql-expression.c" 2218 } 2219 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2220 _tmp126_ = tracker_sparql_expression_get_context (self); 2221 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2222 _tmp127_ = _tmp126_; 2223 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2224 _tmp128_ = _tmp127_->select_var_set; 2225 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2226 _tmp129_ = variable; 2227 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2228 _tmp130_ = _g_object_ref0 (_tmp129_); 2229 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2230 _tmp131_ = state; 2231 #line 223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2232 g_hash_table_insert (_tmp128_, _tmp130_, (gpointer) ((gintptr) _tmp131_)); 2233 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2234 _tmp132_ = tracker_sparql_expression_get_context (self); 2235 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2236 _tmp133_ = _tmp132_; 2237 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2238 _tmp134_ = tracker_sparql_expression_get_context (self); 2239 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2240 _tmp135_ = _tmp134_; 2241 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2242 _tmp136_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp135_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names;
Value stored to '_tmp136_' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2243 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2244 _tmp136__length1 = G_TYPE_CHECK_INSTANCE_CAST (_tmp135_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names_length1;
Value stored to '_tmp136__length1' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2245 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2246 _tmp137_ = variable; 2247 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2248 _tmp138_ = tracker_sparql_variable_get_name (_tmp137_); 2249 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2250 _tmp139_ = _tmp138_; 2251 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2252 _tmp140_ = g_strdup (_tmp139_); 2253 #line 225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2254 _vala_array_add3 (&G_TYPE_CHECK_INSTANCE_CAST (_tmp133_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names, &G_TYPE_CHECK_INSTANCE_CAST (_tmp133_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names_length1, &G_TYPE_CHECK_INSTANCE_CAST (_tmp133_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->_variable_names_size_, _tmp140_); 2255 #line 2256 "tracker-sparql-expression.c" 2256 } else { 2257 TrackerSparqlContext* _tmp141_; 2258 TrackerSparqlContext* _tmp142_; 2259 TrackerSparqlContext* _tmp143_; 2260 TrackerSparqlContext* _tmp144_; 2261 gchar** _tmp145_; 2262 gint _tmp145__length1; 2263 gint _tmp146_; 2264 gchar* _tmp147_ = NULL; 2265 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2266 _tmp141_ = tracker_sparql_expression_get_context (self); 2267 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2268 _tmp142_ = _tmp141_; 2269 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2270 _tmp143_ = tracker_sparql_expression_get_context (self); 2271 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2272 _tmp144_ = _tmp143_; 2273 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2274 _tmp145_ = G_TYPE_CHECK_INSTANCE_CAST (_tmp144_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names;
Value stored to '_tmp145_' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2275 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2276 _tmp145__length1 = G_TYPE_CHECK_INSTANCE_CAST (_tmp144_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names_length1;
Value stored to '_tmp145__length1' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

2277 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2278 _tmp146_ = variable_index; 2279 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2280 _tmp147_ = g_strdup_printf ("var%d", _tmp146_ + 1); 2281 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2282 _vala_array_add4 (&G_TYPE_CHECK_INSTANCE_CAST (_tmp142_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names, &G_TYPE_CHECK_INSTANCE_CAST (_tmp142_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->variable_names_length1, &G_TYPE_CHECK_INSTANCE_CAST (_tmp142_, TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext)->_variable_names_size_, _tmp147_); 2283 #line 2284 "tracker-sparql-expression.c" 2284 } 2285 #line 230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2286 _g_free0 (self->priv->fts_sql); 2287 #line 230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2288 self->priv->fts_sql = NULL; 2289 #line 232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2290 result = type; 2291 #line 232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2292 _g_object_unref0 (variable); 2293 #line 232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2294 return result; 2295 #line 2296 "tracker-sparql-expression.c" 2296 } 2297 2298 2299 static void tracker_sparql_expression_translate_expression_as_order_condition (TrackerSparqlExpression* self, GString* sql, GError** error) { 2300 GString* _tmp0_; 2301 gssize _tmp1_; 2302 glong begin; 2303 GString* _tmp2_; 2304 TrackerPropertyType _tmp3_ = 0; 2305 TrackerPropertyType _tmp4_; 2306 GError * _inner_error_ = NULL; 2307 #line 235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2308 g_return_if_fail (self != NULL); 2309 #line 235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2310 g_return_if_fail (sql != NULL); 2311 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2312 _tmp0_ = sql; 2313 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2314 _tmp1_ = _tmp0_->len; 2315 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2316 begin = (glong) _tmp1_; 2317 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2318 _tmp2_ = sql; 2319 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2320 _tmp3_ = tracker_sparql_expression_translate_expression (self, _tmp2_, &_inner_error_); 2321 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2322 _tmp4_ = _tmp3_; 2323 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2324 if (_inner_error_ != NULL) { 2325 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2326 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2327 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2328 g_propagate_error (error, _inner_error_); 2329 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2330 return; 2331 #line 2332 "tracker-sparql-expression.c" 2332 } else { 2333 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2334 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2335 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2336 g_clear_error (&_inner_error_); 2337 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2338 return; 2339 #line 2340 "tracker-sparql-expression.c" 2340 } 2341 } 2342 #line 237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2343 if (_tmp4_ == TRACKER_PROPERTY_TYPE_RESOURCE) { 2344 #line 2345 "tracker-sparql-expression.c" 2345 GString* _tmp5_; 2346 GString* _tmp6_; 2347 #line 239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2348 _tmp5_ = sql; 2349 #line 239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2350 g_string_insert (_tmp5_, (gssize) begin, "(SELECT Uri FROM Resource WHERE ID = "); 2351 #line 240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2352 _tmp6_ = sql; 2353 #line 240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2354 g_string_append (_tmp6_, ")"); 2355 #line 2356 "tracker-sparql-expression.c" 2356 } 2357 } 2358 2359 2360 void tracker_sparql_expression_translate_order_condition (TrackerSparqlExpression* self, GString* sql, GError** error) { 2361 gboolean _tmp0_ = FALSE; 2362 gboolean _tmp1_; 2363 GError * _inner_error_ = NULL; 2364 #line 244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2365 g_return_if_fail (self != NULL); 2366 #line 244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2367 g_return_if_fail (sql != NULL); 2368 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2369 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_ASC, &_inner_error_); 2370 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2371 _tmp1_ = _tmp0_; 2372 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2373 if (_inner_error_ != NULL) { 2374 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2375 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2376 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2377 g_propagate_error (error, _inner_error_); 2378 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2379 return; 2380 #line 2381 "tracker-sparql-expression.c" 2381 } else { 2382 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2383 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2384 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2385 g_clear_error (&_inner_error_); 2386 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2387 return; 2388 #line 2389 "tracker-sparql-expression.c" 2389 } 2390 } 2391 #line 245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2392 if (_tmp1_) { 2393 #line 2394 "tracker-sparql-expression.c" 2394 GString* _tmp2_; 2395 GString* _tmp3_; 2396 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2397 _tmp2_ = sql; 2398 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2399 tracker_sparql_expression_translate_expression_as_order_condition (self, _tmp2_, &_inner_error_); 2400 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2401 if (_inner_error_ != NULL) { 2402 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2403 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2404 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2405 g_propagate_error (error, _inner_error_); 2406 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2407 return; 2408 #line 2409 "tracker-sparql-expression.c" 2409 } else { 2410 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2411 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2412 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2413 g_clear_error (&_inner_error_); 2414 #line 246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2415 return; 2416 #line 2417 "tracker-sparql-expression.c" 2417 } 2418 } 2419 #line 247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2420 _tmp3_ = sql; 2421 #line 247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2422 g_string_append (_tmp3_, " ASC"); 2423 #line 2424 "tracker-sparql-expression.c" 2424 } else { 2425 gboolean _tmp4_ = FALSE; 2426 gboolean _tmp5_; 2427 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2428 _tmp4_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DESC, &_inner_error_); 2429 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2430 _tmp5_ = _tmp4_; 2431 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2432 if (_inner_error_ != NULL) { 2433 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2434 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2435 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2436 g_propagate_error (error, _inner_error_); 2437 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2438 return; 2439 #line 2440 "tracker-sparql-expression.c" 2440 } else { 2441 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2442 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2443 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2444 g_clear_error (&_inner_error_); 2445 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2446 return; 2447 #line 2448 "tracker-sparql-expression.c" 2448 } 2449 } 2450 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2451 if (_tmp5_) { 2452 #line 2453 "tracker-sparql-expression.c" 2453 GString* _tmp6_; 2454 GString* _tmp7_; 2455 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2456 _tmp6_ = sql; 2457 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2458 tracker_sparql_expression_translate_expression_as_order_condition (self, _tmp6_, &_inner_error_); 2459 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2460 if (_inner_error_ != NULL) { 2461 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2462 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2463 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2464 g_propagate_error (error, _inner_error_); 2465 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2466 return; 2467 #line 2468 "tracker-sparql-expression.c" 2468 } else { 2469 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2470 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2471 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2472 g_clear_error (&_inner_error_); 2473 #line 249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2474 return; 2475 #line 2476 "tracker-sparql-expression.c" 2476 } 2477 } 2478 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2479 _tmp7_ = sql; 2480 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2481 g_string_append (_tmp7_, " DESC"); 2482 #line 2483 "tracker-sparql-expression.c" 2483 } else { 2484 GString* _tmp8_; 2485 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2486 _tmp8_ = sql; 2487 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2488 tracker_sparql_expression_translate_expression_as_order_condition (self, _tmp8_, &_inner_error_); 2489 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2490 if (_inner_error_ != NULL) { 2491 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2492 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2493 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2494 g_propagate_error (error, _inner_error_); 2495 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2496 return; 2497 #line 2498 "tracker-sparql-expression.c" 2498 } else { 2499 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2500 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2501 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2502 g_clear_error (&_inner_error_); 2503 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2504 return; 2505 #line 2506 "tracker-sparql-expression.c" 2506 } 2507 } 2508 } 2509 } 2510 } 2511 2512 2513 static void tracker_sparql_expression_translate_bound_call (TrackerSparqlExpression* self, GString* sql, GError** error) { 2514 GString* _tmp0_; 2515 GString* _tmp1_; 2516 GString* _tmp2_; 2517 GError * _inner_error_ = NULL; 2518 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2519 g_return_if_fail (self != NULL); 2520 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2521 g_return_if_fail (sql != NULL); 2522 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2523 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_BOUND, &_inner_error_); 2524 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2525 if (_inner_error_ != NULL) { 2526 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2527 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2528 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2529 g_propagate_error (error, _inner_error_); 2530 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2531 return; 2532 #line 2533 "tracker-sparql-expression.c" 2533 } else { 2534 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2535 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2536 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2537 g_clear_error (&_inner_error_); 2538 #line 257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2539 return; 2540 #line 2541 "tracker-sparql-expression.c" 2541 } 2542 } 2543 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2544 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 2545 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2546 if (_inner_error_ != NULL) { 2547 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2548 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2549 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2550 g_propagate_error (error, _inner_error_); 2551 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2552 return; 2553 #line 2554 "tracker-sparql-expression.c" 2554 } else { 2555 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2556 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2557 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2558 g_clear_error (&_inner_error_); 2559 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2560 return; 2561 #line 2562 "tracker-sparql-expression.c" 2562 } 2563 } 2564 #line 259 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2565 _tmp0_ = sql; 2566 #line 259 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2567 g_string_append (_tmp0_, "("); 2568 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2569 _tmp1_ = sql; 2570 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2571 tracker_sparql_expression_translate_expression (self, _tmp1_, &_inner_error_); 2572 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2573 if (_inner_error_ != NULL) { 2574 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2575 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2576 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2577 g_propagate_error (error, _inner_error_); 2578 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2579 return; 2580 #line 2581 "tracker-sparql-expression.c" 2581 } else { 2582 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2583 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2584 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2585 g_clear_error (&_inner_error_); 2586 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2587 return; 2588 #line 2589 "tracker-sparql-expression.c" 2589 } 2590 } 2591 #line 261 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2592 _tmp2_ = sql; 2593 #line 261 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2594 g_string_append (_tmp2_, " IS NOT NULL)"); 2595 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2596 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 2597 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2598 if (_inner_error_ != NULL) { 2599 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2600 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2601 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2602 g_propagate_error (error, _inner_error_); 2603 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2604 return; 2605 #line 2606 "tracker-sparql-expression.c" 2606 } else { 2607 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2608 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2609 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2610 g_clear_error (&_inner_error_); 2611 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2612 return; 2613 #line 2614 "tracker-sparql-expression.c" 2614 } 2615 } 2616 } 2617 2618 2619 static TrackerPropertyType tracker_sparql_expression_translate_if_call (TrackerSparqlExpression* self, GString* sql, GError** error) { 2620 TrackerPropertyType result = 0; 2621 GString* _tmp0_; 2622 GString* _tmp1_; 2623 GString* _tmp2_; 2624 GString* _tmp3_; 2625 TrackerPropertyType _tmp4_ = 0; 2626 TrackerPropertyType type; 2627 GString* _tmp5_; 2628 GString* _tmp6_; 2629 GString* _tmp7_; 2630 GError * _inner_error_ = NULL; 2631 #line 265 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2632 g_return_val_if_fail (self != NULL, 0); 2633 #line 265 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2634 g_return_val_if_fail (sql != NULL, 0); 2635 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2636 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_IF, &_inner_error_); 2637 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2638 if (_inner_error_ != NULL) { 2639 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2640 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2641 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2642 g_propagate_error (error, _inner_error_); 2643 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2644 return 0; 2645 #line 2646 "tracker-sparql-expression.c" 2646 } else { 2647 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2648 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2649 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2650 g_clear_error (&_inner_error_); 2651 #line 266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2652 return 0; 2653 #line 2654 "tracker-sparql-expression.c" 2654 } 2655 } 2656 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2657 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 2658 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2659 if (_inner_error_ != NULL) { 2660 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2661 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2662 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2663 g_propagate_error (error, _inner_error_); 2664 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2665 return 0; 2666 #line 2667 "tracker-sparql-expression.c" 2667 } else { 2668 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2669 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2670 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2671 g_clear_error (&_inner_error_); 2672 #line 267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2673 return 0; 2674 #line 2675 "tracker-sparql-expression.c" 2675 } 2676 } 2677 #line 270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2678 _tmp0_ = sql; 2679 #line 270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2680 g_string_append (_tmp0_, "(CASE "); 2681 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2682 _tmp1_ = sql; 2683 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2684 tracker_sparql_expression_translate_expression (self, _tmp1_, &_inner_error_); 2685 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2686 if (_inner_error_ != NULL) { 2687 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2688 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2689 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2690 g_propagate_error (error, _inner_error_); 2691 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2692 return 0; 2693 #line 2694 "tracker-sparql-expression.c" 2694 } else { 2695 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2696 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2697 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2698 g_clear_error (&_inner_error_); 2699 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2700 return 0; 2701 #line 2702 "tracker-sparql-expression.c" 2702 } 2703 } 2704 #line 274 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2705 _tmp2_ = sql; 2706 #line 274 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2707 g_string_append (_tmp2_, " WHEN 1 THEN "); 2708 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2709 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 2710 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2711 if (_inner_error_ != NULL) { 2712 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2713 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2714 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2715 g_propagate_error (error, _inner_error_); 2716 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2717 return 0; 2718 #line 2719 "tracker-sparql-expression.c" 2719 } else { 2720 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2721 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2722 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2723 g_clear_error (&_inner_error_); 2724 #line 275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2725 return 0; 2726 #line 2727 "tracker-sparql-expression.c" 2727 } 2728 } 2729 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2730 _tmp3_ = sql; 2731 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2732 _tmp4_ = tracker_sparql_expression_translate_expression (self, _tmp3_, &_inner_error_); 2733 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2734 type = _tmp4_; 2735 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2736 if (_inner_error_ != NULL) { 2737 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2738 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2739 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2740 g_propagate_error (error, _inner_error_); 2741 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2742 return 0; 2743 #line 2744 "tracker-sparql-expression.c" 2744 } else { 2745 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2746 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2747 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2748 g_clear_error (&_inner_error_); 2749 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2750 return 0; 2751 #line 2752 "tracker-sparql-expression.c" 2752 } 2753 } 2754 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2755 _tmp5_ = sql; 2756 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2757 g_string_append (_tmp5_, " WHEN 0 THEN "); 2758 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2759 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 2760 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2761 if (_inner_error_ != NULL) { 2762 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2763 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2764 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2765 g_propagate_error (error, _inner_error_); 2766 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2767 return 0; 2768 #line 2769 "tracker-sparql-expression.c" 2769 } else { 2770 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2771 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2772 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2773 g_clear_error (&_inner_error_); 2774 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2775 return 0; 2776 #line 2777 "tracker-sparql-expression.c" 2777 } 2778 } 2779 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2780 _tmp6_ = sql; 2781 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2782 tracker_sparql_expression_translate_expression (self, _tmp6_, &_inner_error_); 2783 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2784 if (_inner_error_ != NULL) { 2785 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2786 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2787 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2788 g_propagate_error (error, _inner_error_); 2789 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2790 return 0; 2791 #line 2792 "tracker-sparql-expression.c" 2792 } else { 2793 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2794 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2795 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2796 g_clear_error (&_inner_error_); 2797 #line 281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2798 return 0; 2799 #line 2800 "tracker-sparql-expression.c" 2800 } 2801 } 2802 #line 283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2803 _tmp7_ = sql; 2804 #line 283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2805 g_string_append (_tmp7_, " ELSE NULL END)"); 2806 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2807 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 2808 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2809 if (_inner_error_ != NULL) { 2810 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2811 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2812 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2813 g_propagate_error (error, _inner_error_); 2814 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2815 return 0; 2816 #line 2817 "tracker-sparql-expression.c" 2817 } else { 2818 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2819 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2820 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2821 g_clear_error (&_inner_error_); 2822 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2823 return 0; 2824 #line 2825 "tracker-sparql-expression.c" 2825 } 2826 } 2827 #line 287 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2828 result = type; 2829 #line 287 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2830 return result; 2831 #line 2832 "tracker-sparql-expression.c" 2832 } 2833 2834 2835 static void tracker_sparql_expression_translate_regex (TrackerSparqlExpression* self, GString* sql, GError** error) { 2836 GString* _tmp0_; 2837 GString* _tmp1_; 2838 GString* _tmp2_; 2839 gchar* _tmp3_ = NULL; 2840 gchar* _tmp4_; 2841 GString* _tmp5_; 2842 gchar* _tmp6_; 2843 gchar* _tmp7_ = NULL; 2844 gchar* _tmp8_; 2845 GString* _tmp9_; 2846 gboolean _tmp10_ = FALSE; 2847 gboolean _tmp11_; 2848 GString* _tmp19_; 2849 GError * _inner_error_ = NULL; 2850 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2851 g_return_if_fail (self != NULL); 2852 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2853 g_return_if_fail (sql != NULL); 2854 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2855 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_REGEX, &_inner_error_); 2856 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2857 if (_inner_error_ != NULL) { 2858 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2859 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2860 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2861 g_propagate_error (error, _inner_error_); 2862 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2863 return; 2864 #line 2865 "tracker-sparql-expression.c" 2865 } else { 2866 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2867 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2868 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2869 g_clear_error (&_inner_error_); 2870 #line 291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2871 return; 2872 #line 2873 "tracker-sparql-expression.c" 2873 } 2874 } 2875 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2876 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 2877 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2878 if (_inner_error_ != NULL) { 2879 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2880 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2881 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2882 g_propagate_error (error, _inner_error_); 2883 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2884 return; 2885 #line 2886 "tracker-sparql-expression.c" 2886 } else { 2887 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2888 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2889 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2890 g_clear_error (&_inner_error_); 2891 #line 292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2892 return; 2893 #line 2894 "tracker-sparql-expression.c" 2894 } 2895 } 2896 #line 293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2897 _tmp0_ = sql; 2898 #line 293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2899 g_string_append (_tmp0_, "SparqlRegex("); 2900 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2901 _tmp1_ = sql; 2902 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2903 tracker_sparql_expression_translate_expression_as_string (self, _tmp1_, &_inner_error_); 2904 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2905 if (_inner_error_ != NULL) { 2906 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2907 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2908 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2909 g_propagate_error (error, _inner_error_); 2910 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2911 return; 2912 #line 2913 "tracker-sparql-expression.c" 2913 } else { 2914 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2915 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2916 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2917 g_clear_error (&_inner_error_); 2918 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2919 return; 2920 #line 2921 "tracker-sparql-expression.c" 2921 } 2922 } 2923 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2924 _tmp2_ = sql; 2925 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2926 g_string_append (_tmp2_, ", "); 2927 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2928 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 2929 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2930 if (_inner_error_ != NULL) { 2931 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2932 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2933 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2934 g_propagate_error (error, _inner_error_); 2935 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2936 return; 2937 #line 2938 "tracker-sparql-expression.c" 2938 } else { 2939 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2940 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2941 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2942 g_clear_error (&_inner_error_); 2943 #line 296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2944 return; 2945 #line 2946 "tracker-sparql-expression.c" 2946 } 2947 } 2948 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2949 _tmp3_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 2950 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2951 _tmp4_ = _tmp3_; 2952 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2953 if (_inner_error_ != NULL) { 2954 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2955 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2956 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2957 g_propagate_error (error, _inner_error_); 2958 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2959 return; 2960 #line 2961 "tracker-sparql-expression.c" 2961 } else { 2962 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2963 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2964 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2965 g_clear_error (&_inner_error_); 2966 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2967 return; 2968 #line 2969 "tracker-sparql-expression.c" 2969 } 2970 } 2971 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2972 _tmp5_ = sql; 2973 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2974 _tmp6_ = _tmp4_; 2975 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2976 _tmp7_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp6_); 2977 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2978 _tmp8_ = _tmp7_; 2979 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2980 g_string_append (_tmp5_, _tmp8_); 2981 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2982 _g_free0 (_tmp8_); 2983 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2984 _g_free0 (_tmp6_); 2985 #line 301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2986 _tmp9_ = sql; 2987 #line 301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2988 g_string_append (_tmp9_, ", "); 2989 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2990 _tmp10_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 2991 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2992 _tmp11_ = _tmp10_; 2993 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2994 if (_inner_error_ != NULL) { 2995 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2996 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2997 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 2998 g_propagate_error (error, _inner_error_); 2999 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3000 return; 3001 #line 3002 "tracker-sparql-expression.c" 3002 } else { 3003 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3004 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3005 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3006 g_clear_error (&_inner_error_); 3007 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3008 return; 3009 #line 3010 "tracker-sparql-expression.c" 3010 } 3011 } 3012 #line 302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3013 if (_tmp11_) { 3014 #line 3015 "tracker-sparql-expression.c" 3015 gchar* _tmp12_ = NULL; 3016 gchar* _tmp13_; 3017 GString* _tmp14_; 3018 gchar* _tmp15_; 3019 gchar* _tmp16_ = NULL; 3020 gchar* _tmp17_; 3021 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3022 _tmp12_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 3023 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3024 _tmp13_ = _tmp12_; 3025 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3026 if (_inner_error_ != NULL) { 3027 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3028 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3029 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3030 g_propagate_error (error, _inner_error_); 3031 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3032 return; 3033 #line 3034 "tracker-sparql-expression.c" 3034 } else { 3035 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3036 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3037 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3038 g_clear_error (&_inner_error_); 3039 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3040 return; 3041 #line 3042 "tracker-sparql-expression.c" 3042 } 3043 } 3044 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3045 _tmp14_ = sql; 3046 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3047 _tmp15_ = _tmp13_; 3048 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3049 _tmp16_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp15_); 3050 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3051 _tmp17_ = _tmp16_; 3052 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3053 g_string_append (_tmp14_, _tmp17_); 3054 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3055 _g_free0 (_tmp17_); 3056 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3057 _g_free0 (_tmp15_); 3058 #line 3059 "tracker-sparql-expression.c" 3059 } else { 3060 GString* _tmp18_; 3061 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3062 _tmp18_ = sql; 3063 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3064 g_string_append (_tmp18_, "''"); 3065 #line 3066 "tracker-sparql-expression.c" 3066 } 3067 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3068 _tmp19_ = sql; 3069 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3070 g_string_append (_tmp19_, ")"); 3071 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3072 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 3073 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3074 if (_inner_error_ != NULL) { 3075 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3076 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3077 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3078 g_propagate_error (error, _inner_error_); 3079 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3080 return; 3081 #line 3082 "tracker-sparql-expression.c" 3082 } else { 3083 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3084 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3085 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3086 g_clear_error (&_inner_error_); 3087 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3088 return; 3089 #line 3090 "tracker-sparql-expression.c" 3090 } 3091 } 3092 } 3093 3094 3095 static void tracker_sparql_expression_translate_exists (TrackerSparqlExpression* self, GString* sql, GError** error) { 3096 GString* _tmp0_; 3097 TrackerSparqlPattern* _tmp1_; 3098 TrackerSparqlPattern* _tmp2_; 3099 GString* _tmp3_; 3100 GString* _tmp4_; 3101 GError * _inner_error_ = NULL; 3102 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3103 g_return_if_fail (self != NULL); 3104 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3105 g_return_if_fail (sql != NULL); 3106 #line 314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3107 _tmp0_ = sql; 3108 #line 314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3109 g_string_append (_tmp0_, "("); 3110 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3111 _tmp1_ = tracker_sparql_expression_get_pattern (self); 3112 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3113 _tmp2_ = _tmp1_; 3114 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3115 _tmp3_ = sql; 3116 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3117 tracker_sparql_pattern_translate_exists (_tmp2_, _tmp3_, &_inner_error_); 3118 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3119 if (_inner_error_ != NULL) { 3120 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3121 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3122 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3123 g_propagate_error (error, _inner_error_); 3124 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3125 return; 3126 #line 3127 "tracker-sparql-expression.c" 3127 } else { 3128 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3129 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3130 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3131 g_clear_error (&_inner_error_); 3132 #line 315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3133 return; 3134 #line 3135 "tracker-sparql-expression.c" 3135 } 3136 } 3137 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3138 _tmp4_ = sql; 3139 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3140 g_string_append (_tmp4_, ")"); 3141 #line 3142 "tracker-sparql-expression.c" 3142 } 3143 3144 3145 void tracker_sparql_expression_append_expression_as_string (GString* sql, const gchar* expression, TrackerPropertyType type) { 3146 GString* _tmp0_; 3147 gssize _tmp1_; 3148 glong begin; 3149 GString* _tmp2_; 3150 const gchar* _tmp3_; 3151 GString* _tmp4_; 3152 TrackerPropertyType _tmp5_; 3153 #line 319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3154 g_return_if_fail (sql != NULL); 3155 #line 319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3156 g_return_if_fail (expression != NULL); 3157 #line 320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3158 _tmp0_ = sql; 3159 #line 320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3160 _tmp1_ = _tmp0_->len; 3161 #line 320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3162 begin = (glong) _tmp1_; 3163 #line 321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3164 _tmp2_ = sql; 3165 #line 321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3166 _tmp3_ = expression; 3167 #line 321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3168 g_string_append (_tmp2_, _tmp3_); 3169 #line 322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3170 _tmp4_ = sql; 3171 #line 322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3172 _tmp5_ = type; 3173 #line 322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3174 tracker_sparql_expression_convert_expression_to_string (_tmp4_, _tmp5_, begin); 3175 #line 3176 "tracker-sparql-expression.c" 3176 } 3177 3178 3179 static void tracker_sparql_expression_convert_expression_to_string (GString* sql, TrackerPropertyType type, glong begin) { 3180 TrackerPropertyType _tmp0_; 3181 #line 325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3182 g_return_if_fail (sql != NULL); 3183 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3184 _tmp0_ = type; 3185 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3186 switch (_tmp0_) { 3187 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3188 case TRACKER_PROPERTY_TYPE_STRING: 3189 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3190 case TRACKER_PROPERTY_TYPE_INTEGER: 3191 #line 3192 "tracker-sparql-expression.c" 3192 { 3193 #line 332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3194 break; 3195 #line 3196 "tracker-sparql-expression.c" 3196 } 3197 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3198 case TRACKER_PROPERTY_TYPE_RESOURCE: 3199 #line 3200 "tracker-sparql-expression.c" 3200 { 3201 GString* _tmp1_; 3202 glong _tmp2_; 3203 GString* _tmp3_; 3204 #line 335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3205 _tmp1_ = sql; 3206 #line 335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3207 _tmp2_ = begin; 3208 #line 335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3209 g_string_insert (_tmp1_, (gssize) _tmp2_, "(SELECT Uri FROM Resource WHERE ID = "); 3210 #line 336 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3211 _tmp3_ = sql; 3212 #line 336 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3213 g_string_append (_tmp3_, ")"); 3214 #line 337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3215 break; 3216 #line 3217 "tracker-sparql-expression.c" 3217 } 3218 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3219 case TRACKER_PROPERTY_TYPE_BOOLEAN: 3220 #line 3221 "tracker-sparql-expression.c" 3221 { 3222 GString* _tmp4_; 3223 glong _tmp5_; 3224 GString* _tmp6_; 3225 #line 340 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3226 _tmp4_ = sql; 3227 #line 340 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3228 _tmp5_ = begin; 3229 #line 340 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3230 g_string_insert (_tmp4_, (gssize) _tmp5_, "CASE "); 3231 #line 341 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3232 _tmp6_ = sql; 3233 #line 341 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3234 g_string_append (_tmp6_, " WHEN 1 THEN 'true' WHEN 0 THEN 'false' ELSE NULL END"); 3235 #line 342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3236 break; 3237 #line 3238 "tracker-sparql-expression.c" 3238 } 3239 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3240 case TRACKER_PROPERTY_TYPE_DATE: 3241 #line 3242 "tracker-sparql-expression.c" 3242 { 3243 GString* _tmp7_; 3244 glong _tmp8_; 3245 GString* _tmp9_; 3246 #line 345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3247 _tmp7_ = sql; 3248 #line 345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3249 _tmp8_ = begin; 3250 #line 345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3251 g_string_insert (_tmp7_, (gssize) _tmp8_, "strftime (\"%Y-%m-%d\", "); 3252 #line 346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3253 _tmp9_ = sql; 3254 #line 346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3255 g_string_append (_tmp9_, ", \"unixepoch\")"); 3256 #line 347 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3257 break; 3258 #line 3259 "tracker-sparql-expression.c" 3259 } 3260 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3261 case TRACKER_PROPERTY_TYPE_DATETIME: 3262 #line 3263 "tracker-sparql-expression.c" 3263 { 3264 GString* _tmp10_; 3265 glong _tmp11_; 3266 GString* _tmp12_; 3267 #line 350 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3268 _tmp10_ = sql; 3269 #line 350 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3270 _tmp11_ = begin; 3271 #line 350 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3272 g_string_insert (_tmp10_, (gssize) _tmp11_, "SparqlFormatTime ("); 3273 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3274 _tmp12_ = sql; 3275 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3276 g_string_append (_tmp12_, ")"); 3277 #line 352 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3278 break; 3279 #line 3280 "tracker-sparql-expression.c" 3280 } 3281 default: 3282 { 3283 GString* _tmp13_; 3284 glong _tmp14_; 3285 GString* _tmp15_; 3286 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3287 _tmp13_ = sql; 3288 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3289 _tmp14_ = begin; 3290 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3291 g_string_insert (_tmp13_, (gssize) _tmp14_, "CAST ("); 3292 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3293 _tmp15_ = sql; 3294 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3295 g_string_append (_tmp15_, " AS TEXT)"); 3296 #line 357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3297 break; 3298 #line 3299 "tracker-sparql-expression.c" 3299 } 3300 } 3301 } 3302 3303 3304 static void tracker_sparql_expression_translate_expression_as_string (TrackerSparqlExpression* self, GString* sql, GError** error) { 3305 TrackerSparqlTokenType _tmp0_ = 0; 3306 GError * _inner_error_ = NULL; 3307 #line 361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3308 g_return_if_fail (self != NULL); 3309 #line 361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3310 g_return_if_fail (sql != NULL); 3311 #line 362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3312 _tmp0_ = tracker_sparql_expression_current (self); 3313 #line 362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3314 switch (_tmp0_) { 3315 #line 362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3316 case TRACKER_SPARQL_TOKEN_TYPE_IRI_REF: 3317 #line 362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3318 case TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX: 3319 #line 362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3320 case TRACKER_SPARQL_TOKEN_TYPE_COLON: 3321 #line 3322 "tracker-sparql-expression.c" 3322 { 3323 TrackerSparqlLiteralBinding* _tmp1_; 3324 TrackerSparqlLiteralBinding* binding; 3325 gboolean is_var = FALSE;
variable 'is_var' set but not used
(emitted by gcc)
3326 TrackerSparqlPattern* _tmp2_; 3327 TrackerSparqlPattern* _tmp3_; 3328 gboolean _tmp4_ = FALSE; 3329 gchar* _tmp5_ = NULL; 3330 gchar* _tmp6_; 3331 TrackerSparqlLiteralBinding* _tmp7_; 3332 gboolean _tmp8_ = FALSE; 3333 gboolean _tmp9_; 3334 #line 367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3335 _tmp1_ = tracker_sparql_literal_binding_new (); 3336 #line 367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3337 binding = _tmp1_; 3338 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3339 _tmp2_ = tracker_sparql_expression_get_pattern (self); 3340 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3341 _tmp3_ = _tmp2_; 3342 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3343 _tmp5_ = tracker_sparql_pattern_parse_var_or_term (_tmp3_, NULL, &_tmp4_, &_inner_error_); 3344 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3345 is_var = _tmp4_;
Value stored to 'is_var' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

3346 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3347 _tmp6_ = _tmp5_; 3348 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3349 if (_inner_error_ != NULL) { 3350 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3351 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3352 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3353 g_propagate_error (error, _inner_error_); 3354 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3355 _g_object_unref0 (binding); 3356 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3357 return; 3358 #line 3359 "tracker-sparql-expression.c" 3359 } else { 3360 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3361 _g_object_unref0 (binding); 3362 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3363 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3364 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3365 g_clear_error (&_inner_error_); 3366 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3367 return; 3368 #line 3369 "tracker-sparql-expression.c" 3369 } 3370 } 3371 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3372 _tmp7_ = binding; 3373 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3374 _g_free0 (_tmp7_->literal); 3375 #line 369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3376 _tmp7_->literal = _tmp6_; 3377 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3378 _tmp8_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 3379 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3380 _tmp9_ = _tmp8_; 3381 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3382 if (_inner_error_ != NULL) { 3383 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3384 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3385 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3386 g_propagate_error (error, _inner_error_); 3387 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3388 _g_object_unref0 (binding); 3389 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3390 return; 3391 #line 3392 "tracker-sparql-expression.c" 3392 } else { 3393 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3394 _g_object_unref0 (binding); 3395 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3396 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3397 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3398 g_clear_error (&_inner_error_); 3399 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3400 return; 3401 #line 3402 "tracker-sparql-expression.c" 3402 } 3403 } 3404 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3405 if (_tmp9_) { 3406 #line 3407 "tracker-sparql-expression.c" 3407 GString* _tmp10_; 3408 gssize _tmp11_; 3409 glong begin; 3410 GString* _tmp12_; 3411 TrackerSparqlLiteralBinding* _tmp13_; 3412 const gchar* _tmp14_; 3413 TrackerPropertyType _tmp15_ = 0; 3414 TrackerPropertyType type; 3415 GString* _tmp16_; 3416 TrackerPropertyType _tmp17_; 3417 glong _tmp18_; 3418 #line 372 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3419 _tmp10_ = sql; 3420 #line 372 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3421 _tmp11_ = _tmp10_->len; 3422 #line 372 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3423 begin = (glong) _tmp11_; 3424 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3425 _tmp12_ = sql; 3426 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3427 _tmp13_ = binding; 3428 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3429 _tmp14_ = _tmp13_->literal; 3430 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3431 _tmp15_ = tracker_sparql_expression_translate_function (self, _tmp12_, _tmp14_, &_inner_error_); 3432 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3433 type = _tmp15_; 3434 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3435 if (_inner_error_ != NULL) { 3436 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3437 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3438 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3439 g_propagate_error (error, _inner_error_); 3440 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3441 _g_object_unref0 (binding); 3442 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3443 return; 3444 #line 3445 "tracker-sparql-expression.c" 3445 } else { 3446 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3447 _g_object_unref0 (binding); 3448 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3449 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3450 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3451 g_clear_error (&_inner_error_); 3452 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3453 return; 3454 #line 3455 "tracker-sparql-expression.c" 3455 } 3456 } 3457 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3458 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 3459 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3460 if (_inner_error_ != NULL) { 3461 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3462 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3463 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3464 g_propagate_error (error, _inner_error_); 3465 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3466 _g_object_unref0 (binding); 3467 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3468 return; 3469 #line 3470 "tracker-sparql-expression.c" 3470 } else { 3471 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3472 _g_object_unref0 (binding); 3473 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3474 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3475 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3476 g_clear_error (&_inner_error_); 3477 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3478 return; 3479 #line 3480 "tracker-sparql-expression.c" 3480 } 3481 } 3482 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3483 _tmp16_ = sql; 3484 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3485 _tmp17_ = type; 3486 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3487 _tmp18_ = begin; 3488 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3489 tracker_sparql_expression_convert_expression_to_string (_tmp16_, _tmp17_, _tmp18_); 3490 #line 3491 "tracker-sparql-expression.c" 3491 } else { 3492 GString* _tmp19_; 3493 TrackerSparqlQuery* _tmp20_; 3494 TrackerSparqlLiteralBinding* _tmp21_; 3495 TrackerSparqlLiteralBinding* _tmp22_; 3496 #line 377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3497 _tmp19_ = sql; 3498 #line 377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3499 g_string_append (_tmp19_, "?"); 3500 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3501 _tmp20_ = self->priv->query; 3502 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3503 _tmp21_ = binding; 3504 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3505 _tmp22_ = _g_object_ref0 (_tmp21_); 3506 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3507 _tmp20_->bindings = g_list_append (_tmp20_->bindings, _tmp22_); 3508 #line 3509 "tracker-sparql-expression.c" 3509 } 3510 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3511 _g_object_unref0 (binding); 3512 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3513 break; 3514 #line 3515 "tracker-sparql-expression.c" 3515 } 3516 default: 3517 { 3518 GString* _tmp23_; 3519 gssize _tmp24_; 3520 glong begin; 3521 GString* _tmp25_; 3522 TrackerPropertyType _tmp26_ = 0; 3523 TrackerPropertyType type; 3524 GString* _tmp27_; 3525 TrackerPropertyType _tmp28_; 3526 glong _tmp29_; 3527 #line 382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3528 _tmp23_ = sql; 3529 #line 382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3530 _tmp24_ = _tmp23_->len; 3531 #line 382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3532 begin = (glong) _tmp24_; 3533 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3534 _tmp25_ = sql; 3535 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3536 _tmp26_ = tracker_sparql_expression_translate_expression (self, _tmp25_, &_inner_error_); 3537 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3538 type = _tmp26_; 3539 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3540 if (_inner_error_ != NULL) { 3541 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3542 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3543 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3544 g_propagate_error (error, _inner_error_); 3545 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3546 return; 3547 #line 3548 "tracker-sparql-expression.c" 3548 } else { 3549 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3550 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3551 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3552 g_clear_error (&_inner_error_); 3553 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3554 return; 3555 #line 3556 "tracker-sparql-expression.c" 3556 } 3557 } 3558 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3559 _tmp27_ = sql; 3560 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3561 _tmp28_ = type; 3562 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3563 _tmp29_ = begin; 3564 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3565 tracker_sparql_expression_convert_expression_to_string (_tmp27_, _tmp28_, _tmp29_); 3566 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3567 break; 3568 #line 3569 "tracker-sparql-expression.c" 3569 } 3570 } 3571 } 3572 3573 3574 static void tracker_sparql_expression_translate_str (TrackerSparqlExpression* self, GString* sql, GError** error) { 3575 GString* _tmp0_; 3576 GError * _inner_error_ = NULL; 3577 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3578 g_return_if_fail (self != NULL); 3579 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3580 g_return_if_fail (sql != NULL); 3581 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3582 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_STR, &_inner_error_); 3583 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3584 if (_inner_error_ != NULL) { 3585 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3586 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3587 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3588 g_propagate_error (error, _inner_error_); 3589 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3590 return; 3591 #line 3592 "tracker-sparql-expression.c" 3592 } else { 3593 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3594 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3595 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3596 g_clear_error (&_inner_error_); 3597 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3598 return; 3599 #line 3600 "tracker-sparql-expression.c" 3600 } 3601 } 3602 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3603 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 3604 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3605 if (_inner_error_ != NULL) { 3606 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3607 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3608 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3609 g_propagate_error (error, _inner_error_); 3610 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3611 return; 3612 #line 3613 "tracker-sparql-expression.c" 3613 } else { 3614 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3615 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3616 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3617 g_clear_error (&_inner_error_); 3618 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3619 return; 3620 #line 3621 "tracker-sparql-expression.c" 3621 } 3622 } 3623 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3624 _tmp0_ = sql; 3625 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3626 tracker_sparql_expression_translate_expression_as_string (self, _tmp0_, &_inner_error_); 3627 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3628 if (_inner_error_ != NULL) { 3629 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3630 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3631 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3632 g_propagate_error (error, _inner_error_); 3633 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3634 return; 3635 #line 3636 "tracker-sparql-expression.c" 3636 } else { 3637 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3638 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3639 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3640 g_clear_error (&_inner_error_); 3641 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3642 return; 3643 #line 3644 "tracker-sparql-expression.c" 3644 } 3645 } 3646 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3647 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 3648 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3649 if (_inner_error_ != NULL) { 3650 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3651 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3652 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3653 g_propagate_error (error, _inner_error_); 3654 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3655 return; 3656 #line 3657 "tracker-sparql-expression.c" 3657 } else { 3658 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3659 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3660 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3661 g_clear_error (&_inner_error_); 3662 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3663 return; 3664 #line 3665 "tracker-sparql-expression.c" 3665 } 3666 } 3667 } 3668 3669 3670 static void tracker_sparql_expression_translate_isuri (TrackerSparqlExpression* self, GString* sql, GError** error) { 3671 gboolean _tmp0_ = FALSE; 3672 gboolean _tmp1_; 3673 GString* _tmp2_; 3674 TrackerSparqlLiteralBinding* _tmp3_; 3675 TrackerSparqlLiteralBinding* new_binding; 3676 TrackerSparqlLiteralBinding* _tmp4_; 3677 TrackerSparqlTokenType _tmp5_ = 0; 3678 TrackerSparqlQuery* _tmp17_; 3679 TrackerSparqlLiteralBinding* _tmp18_; 3680 TrackerSparqlLiteralBinding* _tmp19_; 3681 GError * _inner_error_ = NULL; 3682 #line 398 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3683 g_return_if_fail (self != NULL); 3684 #line 398 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3685 g_return_if_fail (sql != NULL); 3686 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3687 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_ISURI, &_inner_error_); 3688 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3689 _tmp1_ = _tmp0_; 3690 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3691 if (_inner_error_ != NULL) { 3692 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3693 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3694 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3695 g_propagate_error (error, _inner_error_); 3696 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3697 return; 3698 #line 3699 "tracker-sparql-expression.c" 3699 } else { 3700 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3701 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3702 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3703 g_clear_error (&_inner_error_); 3704 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3705 return; 3706 #line 3707 "tracker-sparql-expression.c" 3707 } 3708 } 3709 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3710 if (!_tmp1_) { 3711 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3712 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_ISIRI, &_inner_error_); 3713 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3714 if (_inner_error_ != NULL) { 3715 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3716 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3717 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3718 g_propagate_error (error, _inner_error_); 3719 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3720 return; 3721 #line 3722 "tracker-sparql-expression.c" 3722 } else { 3723 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3724 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3725 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3726 g_clear_error (&_inner_error_); 3727 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3728 return; 3729 #line 3730 "tracker-sparql-expression.c" 3730 } 3731 } 3732 } 3733 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3734 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 3735 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3736 if (_inner_error_ != NULL) { 3737 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3738 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3739 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3740 g_propagate_error (error, _inner_error_); 3741 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3742 return; 3743 #line 3744 "tracker-sparql-expression.c" 3744 } else { 3745 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3746 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3747 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3748 g_clear_error (&_inner_error_); 3749 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3750 return; 3751 #line 3752 "tracker-sparql-expression.c" 3752 } 3753 } 3754 #line 405 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3755 _tmp2_ = sql; 3756 #line 405 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3757 g_string_append (_tmp2_, "?"); 3758 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3759 _tmp3_ = tracker_sparql_literal_binding_new (); 3760 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3761 new_binding = _tmp3_; 3762 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3763 _tmp4_ = new_binding; 3764 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3765 ((TrackerSparqlDataBinding*) _tmp4_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 3766 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3767 _tmp5_ = tracker_sparql_expression_current (self); 3768 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3769 if (_tmp5_ == TRACKER_SPARQL_TOKEN_TYPE_IRI_REF) { 3770 #line 3771 "tracker-sparql-expression.c" 3771 TrackerSparqlLiteralBinding* _tmp6_; 3772 gchar* _tmp7_; 3773 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3774 _tmp6_ = new_binding; 3775 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3776 _tmp7_ = g_strdup ("1"); 3777 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3778 _g_free0 (_tmp6_->literal); 3779 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3780 _tmp6_->literal = _tmp7_; 3781 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3782 tracker_sparql_expression_next (self, &_inner_error_); 3783 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3784 if (_inner_error_ != NULL) { 3785 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3786 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3787 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3788 g_propagate_error (error, _inner_error_); 3789 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3790 _g_object_unref0 (new_binding); 3791 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3792 return; 3793 #line 3794 "tracker-sparql-expression.c" 3794 } else { 3795 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3796 _g_object_unref0 (new_binding); 3797 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3798 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3799 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3800 g_clear_error (&_inner_error_); 3801 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3802 return; 3803 #line 3804 "tracker-sparql-expression.c" 3804 } 3805 } 3806 } else { 3807 GString* _tmp8_; 3808 GString* _tmp9_; 3809 TrackerPropertyType _tmp10_ = 0; 3810 TrackerPropertyType _tmp11_; 3811 TrackerPropertyType _tmp12_; 3812 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3813 _tmp8_ = g_string_new (""); 3814 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3815 _tmp9_ = _tmp8_; 3816 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3817 _tmp10_ = tracker_sparql_expression_translate_expression (self, _tmp9_, &_inner_error_); 3818 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3819 _tmp11_ = _tmp10_; 3820 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3821 _g_string_free0 (_tmp9_); 3822 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3823 _tmp12_ = _tmp11_; 3824 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3825 if (_inner_error_ != NULL) { 3826 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3827 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3828 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3829 g_propagate_error (error, _inner_error_); 3830 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3831 _g_object_unref0 (new_binding); 3832 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3833 return; 3834 #line 3835 "tracker-sparql-expression.c" 3835 } else { 3836 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3837 _g_object_unref0 (new_binding); 3838 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3839 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3840 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3841 g_clear_error (&_inner_error_); 3842 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3843 return; 3844 #line 3845 "tracker-sparql-expression.c" 3845 } 3846 } 3847 #line 412 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3848 if (_tmp12_ == TRACKER_PROPERTY_TYPE_RESOURCE) { 3849 #line 3850 "tracker-sparql-expression.c" 3850 TrackerSparqlLiteralBinding* _tmp13_; 3851 gchar* _tmp14_; 3852 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3853 _tmp13_ = new_binding; 3854 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3855 _tmp14_ = g_strdup ("1"); 3856 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3857 _g_free0 (_tmp13_->literal); 3858 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3859 _tmp13_->literal = _tmp14_; 3860 #line 3861 "tracker-sparql-expression.c" 3861 } else { 3862 TrackerSparqlLiteralBinding* _tmp15_; 3863 gchar* _tmp16_; 3864 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3865 _tmp15_ = new_binding; 3866 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3867 _tmp16_ = g_strdup ("0"); 3868 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3869 _g_free0 (_tmp15_->literal); 3870 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3871 _tmp15_->literal = _tmp16_; 3872 #line 3873 "tracker-sparql-expression.c" 3873 } 3874 } 3875 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3876 _tmp17_ = self->priv->query; 3877 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3878 _tmp18_ = new_binding; 3879 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3880 _tmp19_ = _g_object_ref0 (_tmp18_); 3881 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3882 _tmp17_->bindings = g_list_append (_tmp17_->bindings, _tmp19_); 3883 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3884 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 3885 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3886 if (_inner_error_ != NULL) { 3887 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3888 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3889 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3890 g_propagate_error (error, _inner_error_); 3891 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3892 _g_object_unref0 (new_binding); 3893 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3894 return; 3895 #line 3896 "tracker-sparql-expression.c" 3896 } else { 3897 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3898 _g_object_unref0 (new_binding); 3899 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3900 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3901 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3902 g_clear_error (&_inner_error_); 3903 #line 420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3904 return; 3905 #line 3906 "tracker-sparql-expression.c" 3906 } 3907 } 3908 #line 398 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3909 _g_object_unref0 (new_binding); 3910 #line 3911 "tracker-sparql-expression.c" 3911 } 3912 3913 3914 static void tracker_sparql_expression_translate_datatype (TrackerSparqlExpression* self, GString* sql, GError** error) { 3915 gboolean _tmp0_ = FALSE; 3916 gboolean _tmp1_; 3917 GError * _inner_error_ = NULL; 3918 #line 423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3919 g_return_if_fail (self != NULL); 3920 #line 423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3921 g_return_if_fail (sql != NULL); 3922 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3923 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_DATATYPE, &_inner_error_); 3924 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3925 if (_inner_error_ != NULL) { 3926 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3927 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3928 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3929 g_propagate_error (error, _inner_error_); 3930 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3931 return; 3932 #line 3933 "tracker-sparql-expression.c" 3933 } else { 3934 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3935 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3936 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3937 g_clear_error (&_inner_error_); 3938 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3939 return; 3940 #line 3941 "tracker-sparql-expression.c" 3941 } 3942 } 3943 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3944 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 3945 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3946 if (_inner_error_ != NULL) { 3947 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3948 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3949 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3950 g_propagate_error (error, _inner_error_); 3951 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3952 return; 3953 #line 3954 "tracker-sparql-expression.c" 3954 } else { 3955 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3956 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3957 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3958 g_clear_error (&_inner_error_); 3959 #line 425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3960 return; 3961 #line 3962 "tracker-sparql-expression.c" 3962 } 3963 } 3964 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3965 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 3966 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3967 _tmp1_ = _tmp0_; 3968 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3969 if (_inner_error_ != NULL) { 3970 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3971 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3972 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3973 g_propagate_error (error, _inner_error_); 3974 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3975 return; 3976 #line 3977 "tracker-sparql-expression.c" 3977 } else { 3978 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3979 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3980 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3981 g_clear_error (&_inner_error_); 3982 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3983 return; 3984 #line 3985 "tracker-sparql-expression.c" 3985 } 3986 } 3987 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 3988 if (_tmp1_) { 3989 #line 3990 "tracker-sparql-expression.c" 3990 gchar* _tmp2_ = NULL; 3991 gchar* _tmp3_; 3992 gchar* _tmp4_ = NULL; 3993 gchar* _tmp5_; 3994 gchar* variable_name; 3995 TrackerSparqlContext* _tmp6_; 3996 TrackerSparqlContext* _tmp7_; 3997 const gchar* _tmp8_; 3998 TrackerSparqlVariable* _tmp9_ = NULL; 3999 TrackerSparqlVariable* _tmp10_; 4000 TrackerSparqlVariable* variable; 4001 TrackerSparqlVariable* _tmp11_; 4002 TrackerSparqlVariableBinding* _tmp12_; 4003 gboolean _tmp20_ = FALSE; 4004 TrackerSparqlVariable* _tmp21_; 4005 TrackerSparqlVariableBinding* _tmp22_; 4006 TrackerPropertyType _tmp23_; 4007 gboolean _tmp27_; 4008 GString* _tmp29_; 4009 TrackerSparqlLiteralBinding* _tmp30_; 4010 TrackerSparqlLiteralBinding* new_binding; 4011 TrackerSparqlLiteralBinding* _tmp31_; 4012 TrackerSparqlVariable* _tmp32_; 4013 TrackerSparqlVariableBinding* _tmp33_; 4014 TrackerClass* _tmp34_; 4015 const gchar* _tmp35_; 4016 const gchar* _tmp36_; 4017 gchar* _tmp37_; 4018 TrackerSparqlQuery* _tmp38_; 4019 TrackerSparqlLiteralBinding* _tmp39_; 4020 TrackerSparqlLiteralBinding* _tmp40_; 4021 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4022 _tmp2_ = tracker_sparql_expression_get_last_string (self, 0); 4023 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4024 _tmp3_ = _tmp2_; 4025 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4026 _tmp4_ = string_substring (_tmp3_, (glong) 1, (glong) (-1)); 4027 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4028 _tmp5_ = _tmp4_; 4029 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4030 _g_free0 (_tmp3_); 4031 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4032 variable_name = _tmp5_; 4033 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4034 _tmp6_ = tracker_sparql_expression_get_context (self); 4035 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4036 _tmp7_ = _tmp6_; 4037 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4038 _tmp8_ = variable_name; 4039 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4040 _tmp9_ = tracker_sparql_context_get_variable (_tmp7_, _tmp8_); 4041 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4042 _tmp10_ = _g_object_ref0 (_tmp9_); 4043 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4044 variable = _tmp10_; 4045 #line 431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4046 _tmp11_ = variable; 4047 #line 431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4048 _tmp12_ = _tmp11_->binding; 4049 #line 431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4050 if (_tmp12_ == NULL) { 4051 #line 4052 "tracker-sparql-expression.c" 4052 TrackerSparqlVariable* _tmp13_; 4053 const gchar* _tmp14_; 4054 const gchar* _tmp15_; 4055 gchar* _tmp16_ = NULL; 4056 gchar* _tmp17_; 4057 GError* _tmp18_ = NULL; 4058 GError* _tmp19_; 4059 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4060 _tmp13_ = variable; 4061 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4062 _tmp14_ = tracker_sparql_variable_get_name (_tmp13_); 4063 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4064 _tmp15_ = _tmp14_; 4065 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4066 _tmp16_ = g_strdup_printf ("`%s' is not a valid variable", _tmp15_); 4067 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4068 _tmp17_ = _tmp16_; 4069 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4070 _tmp18_ = tracker_sparql_expression_get_error (self, _tmp17_); 4071 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4072 _tmp19_ = _tmp18_; 4073 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4074 _g_free0 (_tmp17_); 4075 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4076 _inner_error_ = _tmp19_; 4077 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4078 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4079 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4080 g_propagate_error (error, _inner_error_); 4081 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4082 _g_object_unref0 (variable); 4083 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4084 _g_free0 (variable_name); 4085 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4086 return; 4087 #line 4088 "tracker-sparql-expression.c" 4088 } else { 4089 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4090 _g_object_unref0 (variable); 4091 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4092 _g_free0 (variable_name); 4093 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4094 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4095 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4096 g_clear_error (&_inner_error_); 4097 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4098 return; 4099 #line 4100 "tracker-sparql-expression.c" 4100 } 4101 } 4102 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4103 _tmp21_ = variable; 4104 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4105 _tmp22_ = _tmp21_->binding; 4106 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4107 _tmp23_ = ((TrackerSparqlDataBinding*) _tmp22_)->data_type; 4108 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4109 if (_tmp23_ == TRACKER_PROPERTY_TYPE_RESOURCE) { 4110 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4111 _tmp20_ = TRUE; 4112 #line 4113 "tracker-sparql-expression.c" 4113 } else { 4114 TrackerSparqlVariable* _tmp24_; 4115 TrackerSparqlVariableBinding* _tmp25_; 4116 TrackerClass* _tmp26_; 4117 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4118 _tmp24_ = variable; 4119 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4120 _tmp25_ = _tmp24_->binding; 4121 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4122 _tmp26_ = _tmp25_->type; 4123 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4124 _tmp20_ = _tmp26_ == NULL; 4125 #line 4126 "tracker-sparql-expression.c" 4126 } 4127 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4128 _tmp27_ = _tmp20_; 4129 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4130 if (_tmp27_) { 4131 #line 4132 "tracker-sparql-expression.c" 4132 GError* _tmp28_ = NULL; 4133 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4134 _tmp28_ = tracker_sparql_expression_get_error (self, "Invalid FILTER"); 4135 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4136 _inner_error_ = _tmp28_; 4137 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4138 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4139 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4140 g_propagate_error (error, _inner_error_); 4141 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4142 _g_object_unref0 (variable); 4143 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4144 _g_free0 (variable_name); 4145 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4146 return; 4147 #line 4148 "tracker-sparql-expression.c" 4148 } else { 4149 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4150 _g_object_unref0 (variable); 4151 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4152 _g_free0 (variable_name); 4153 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4154 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4155 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4156 g_clear_error (&_inner_error_); 4157 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4158 return; 4159 #line 4160 "tracker-sparql-expression.c" 4160 } 4161 } 4162 #line 439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4163 _tmp29_ = sql; 4164 #line 439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4165 g_string_append (_tmp29_, "(SELECT ID FROM Resource WHERE Uri = ?)"); 4166 #line 441 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4167 _tmp30_ = tracker_sparql_literal_binding_new (); 4168 #line 441 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4169 new_binding = _tmp30_; 4170 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4171 _tmp31_ = new_binding; 4172 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4173 _tmp32_ = variable; 4174 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4175 _tmp33_ = _tmp32_->binding; 4176 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4177 _tmp34_ = _tmp33_->type; 4178 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4179 _tmp35_ = tracker_class_get_uri (_tmp34_); 4180 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4181 _tmp36_ = _tmp35_; 4182 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4183 _tmp37_ = g_strdup (_tmp36_); 4184 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4185 _g_free0 (_tmp31_->literal); 4186 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4187 _tmp31_->literal = _tmp37_; 4188 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4189 _tmp38_ = self->priv->query; 4190 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4191 _tmp39_ = new_binding; 4192 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4193 _tmp40_ = _g_object_ref0 (_tmp39_); 4194 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4195 _tmp38_->bindings = g_list_append (_tmp38_->bindings, _tmp40_); 4196 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4197 _g_object_unref0 (new_binding); 4198 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4199 _g_object_unref0 (variable); 4200 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4201 _g_free0 (variable_name); 4202 #line 4203 "tracker-sparql-expression.c" 4203 } else { 4204 GError* _tmp41_ = NULL; 4205 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4206 _tmp41_ = tracker_sparql_expression_get_error (self, "Invalid FILTER"); 4207 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4208 _inner_error_ = _tmp41_; 4209 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4210 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4211 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4212 g_propagate_error (error, _inner_error_); 4213 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4214 return; 4215 #line 4216 "tracker-sparql-expression.c" 4216 } else { 4217 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4218 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4219 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4220 g_clear_error (&_inner_error_); 4221 #line 446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4222 return; 4223 #line 4224 "tracker-sparql-expression.c" 4224 } 4225 } 4226 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4227 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 4228 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4229 if (_inner_error_ != NULL) { 4230 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4231 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4232 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4233 g_propagate_error (error, _inner_error_); 4234 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4235 return; 4236 #line 4237 "tracker-sparql-expression.c" 4237 } else { 4238 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4239 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4240 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4241 g_clear_error (&_inner_error_); 4242 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4243 return; 4244 #line 4245 "tracker-sparql-expression.c" 4245 } 4246 } 4247 } 4248 4249 4250 static gchar* g_unichar_to_string (gunichar self) { 4251 gchar* result = NULL; 4252 gchar* _tmp0_ = NULL; 4253 gchar* str; 4254 const gchar* _tmp1_; 4255 #line 845 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4256 _tmp0_ = g_new0 (gchar, 7); 4257 #line 845 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4258 str = (gchar*) _tmp0_; 4259 #line 846 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4260 _tmp1_ = str; 4261 #line 846 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4262 g_unichar_to_utf8 (self, _tmp1_); 4263 #line 847 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4264 result = str; 4265 #line 847 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4266 return result; 4267 #line 4268 "tracker-sparql-expression.c" 4268 } 4269 4270 4271 static TrackerPropertyType tracker_sparql_expression_translate_function (TrackerSparqlExpression* self, GString* sql, const gchar* uri, GError** error) { 4272 TrackerPropertyType result = 0; 4273 const gchar* _tmp0_; 4274 GError * _inner_error_ = NULL; 4275 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4276 g_return_val_if_fail (self != NULL, 0); 4277 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4278 g_return_val_if_fail (sql != NULL, 0); 4279 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4280 g_return_val_if_fail (uri != NULL, 0); 4281 #line 453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4282 _tmp0_ = uri; 4283 #line 453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4284 if (g_strcmp0 (_tmp0_, TRACKER_SPARQL_EXPRESSION_XSD_NS "string") == 0) { 4285 #line 4286 "tracker-sparql-expression.c" 4286 GString* _tmp1_; 4287 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4288 _tmp1_ = sql; 4289 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4290 tracker_sparql_expression_translate_expression_as_string (self, _tmp1_, &_inner_error_); 4291 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4292 if (_inner_error_ != NULL) { 4293 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4294 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4295 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4296 g_propagate_error (error, _inner_error_); 4297 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4298 return 0; 4299 #line 4300 "tracker-sparql-expression.c" 4300 } else { 4301 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4302 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4303 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4304 g_clear_error (&_inner_error_); 4305 #line 455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4306 return 0; 4307 #line 4308 "tracker-sparql-expression.c" 4308 } 4309 } 4310 #line 457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4311 result = TRACKER_PROPERTY_TYPE_STRING; 4312 #line 457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4313 return result; 4314 #line 4315 "tracker-sparql-expression.c" 4315 } else { 4316 const gchar* _tmp2_; 4317 #line 458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4318 _tmp2_ = uri; 4319 #line 458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4320 if (g_strcmp0 (_tmp2_, TRACKER_SPARQL_EXPRESSION_XSD_NS "integer") == 0) { 4321 #line 4322 "tracker-sparql-expression.c" 4322 GString* _tmp3_; 4323 GString* _tmp4_; 4324 GString* _tmp5_; 4325 #line 460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4326 _tmp3_ = sql; 4327 #line 460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4328 g_string_append (_tmp3_, "CAST ("); 4329 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4330 _tmp4_ = sql; 4331 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4332 tracker_sparql_expression_translate_expression_as_string (self, _tmp4_, &_inner_error_); 4333 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4334 if (_inner_error_ != NULL) { 4335 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4336 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4337 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4338 g_propagate_error (error, _inner_error_); 4339 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4340 return 0; 4341 #line 4342 "tracker-sparql-expression.c" 4342 } else { 4343 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4344 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4345 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4346 g_clear_error (&_inner_error_); 4347 #line 461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4348 return 0; 4349 #line 4350 "tracker-sparql-expression.c" 4350 } 4351 } 4352 #line 462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4353 _tmp5_ = sql; 4354 #line 462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4355 g_string_append (_tmp5_, " AS INTEGER)"); 4356 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4357 result = TRACKER_PROPERTY_TYPE_INTEGER; 4358 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4359 return result; 4360 #line 4361 "tracker-sparql-expression.c" 4361 } else { 4362 const gchar* _tmp6_; 4363 #line 465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4364 _tmp6_ = uri; 4365 #line 465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4366 if (g_strcmp0 (_tmp6_, TRACKER_SPARQL_EXPRESSION_XSD_NS "double") == 0) { 4367 #line 4368 "tracker-sparql-expression.c" 4368 GString* _tmp7_; 4369 GString* _tmp8_; 4370 GString* _tmp9_; 4371 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4372 _tmp7_ = sql; 4373 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4374 g_string_append (_tmp7_, "CAST ("); 4375 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4376 _tmp8_ = sql; 4377 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4378 tracker_sparql_expression_translate_expression_as_string (self, _tmp8_, &_inner_error_); 4379 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4380 if (_inner_error_ != NULL) { 4381 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4382 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4383 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4384 g_propagate_error (error, _inner_error_); 4385 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4386 return 0; 4387 #line 4388 "tracker-sparql-expression.c" 4388 } else { 4389 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4390 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4391 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4392 g_clear_error (&_inner_error_); 4393 #line 468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4394 return 0; 4395 #line 4396 "tracker-sparql-expression.c" 4396 } 4397 } 4398 #line 469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4399 _tmp9_ = sql; 4400 #line 469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4401 g_string_append (_tmp9_, " AS REAL)"); 4402 #line 471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4403 result = TRACKER_PROPERTY_TYPE_DOUBLE; 4404 #line 471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4405 return result; 4406 #line 4407 "tracker-sparql-expression.c" 4407 } else { 4408 const gchar* _tmp10_; 4409 #line 472 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4410 _tmp10_ = uri; 4411 #line 472 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4412 if (g_strcmp0 (_tmp10_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "case-fold") == 0) { 4413 #line 4414 "tracker-sparql-expression.c" 4414 GString* _tmp11_; 4415 GString* _tmp12_; 4416 GString* _tmp13_; 4417 #line 474 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4418 _tmp11_ = sql; 4419 #line 474 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4420 g_string_append (_tmp11_, "SparqlCaseFold ("); 4421 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4422 _tmp12_ = sql; 4423 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4424 tracker_sparql_expression_translate_expression_as_string (self, _tmp12_, &_inner_error_); 4425 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4426 if (_inner_error_ != NULL) { 4427 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4428 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4429 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4430 g_propagate_error (error, _inner_error_); 4431 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4432 return 0; 4433 #line 4434 "tracker-sparql-expression.c" 4434 } else { 4435 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4436 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4437 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4438 g_clear_error (&_inner_error_); 4439 #line 475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4440 return 0; 4441 #line 4442 "tracker-sparql-expression.c" 4442 } 4443 } 4444 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4445 _tmp13_ = sql; 4446 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4447 g_string_append (_tmp13_, ")"); 4448 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4449 result = TRACKER_PROPERTY_TYPE_STRING; 4450 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4451 return result; 4452 #line 4453 "tracker-sparql-expression.c" 4453 } else { 4454 const gchar* _tmp14_; 4455 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4456 _tmp14_ = uri; 4457 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4458 if (g_strcmp0 (_tmp14_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "ascii-lower-case") == 0) { 4459 #line 4460 "tracker-sparql-expression.c" 4460 GString* _tmp15_; 4461 GString* _tmp16_; 4462 GString* _tmp17_; 4463 #line 480 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4464 _tmp15_ = sql; 4465 #line 480 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4466 g_string_append (_tmp15_, "lower ("); 4467 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4468 _tmp16_ = sql; 4469 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4470 tracker_sparql_expression_translate_expression_as_string (self, _tmp16_, &_inner_error_); 4471 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4472 if (_inner_error_ != NULL) { 4473 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4474 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4475 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4476 g_propagate_error (error, _inner_error_); 4477 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4478 return 0; 4479 #line 4480 "tracker-sparql-expression.c" 4480 } else { 4481 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4482 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4483 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4484 g_clear_error (&_inner_error_); 4485 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4486 return 0; 4487 #line 4488 "tracker-sparql-expression.c" 4488 } 4489 } 4490 #line 482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4491 _tmp17_ = sql; 4492 #line 482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4493 g_string_append (_tmp17_, ")"); 4494 #line 483 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4495 result = TRACKER_PROPERTY_TYPE_STRING; 4496 #line 483 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4497 return result; 4498 #line 4499 "tracker-sparql-expression.c" 4499 } else { 4500 const gchar* _tmp18_; 4501 #line 484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4502 _tmp18_ = uri; 4503 #line 484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4504 if (g_strcmp0 (_tmp18_, TRACKER_SPARQL_EXPRESSION_FN_NS "lower-case") == 0) { 4505 #line 4506 "tracker-sparql-expression.c" 4506 GString* _tmp19_; 4507 GString* _tmp20_; 4508 GString* _tmp21_; 4509 #line 486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4510 _tmp19_ = sql; 4511 #line 486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4512 g_string_append (_tmp19_, "SparqlLowerCase ("); 4513 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4514 _tmp20_ = sql; 4515 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4516 tracker_sparql_expression_translate_expression_as_string (self, _tmp20_, &_inner_error_); 4517 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4518 if (_inner_error_ != NULL) { 4519 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4520 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4521 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4522 g_propagate_error (error, _inner_error_); 4523 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4524 return 0; 4525 #line 4526 "tracker-sparql-expression.c" 4526 } else { 4527 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4528 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4529 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4530 g_clear_error (&_inner_error_); 4531 #line 487 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4532 return 0; 4533 #line 4534 "tracker-sparql-expression.c" 4534 } 4535 } 4536 #line 488 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4537 _tmp21_ = sql; 4538 #line 488 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4539 g_string_append (_tmp21_, ")"); 4540 #line 489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4541 result = TRACKER_PROPERTY_TYPE_STRING; 4542 #line 489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4543 return result; 4544 #line 4545 "tracker-sparql-expression.c" 4545 } else { 4546 const gchar* _tmp22_; 4547 #line 490 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4548 _tmp22_ = uri; 4549 #line 490 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4550 if (g_strcmp0 (_tmp22_, TRACKER_SPARQL_EXPRESSION_FN_NS "contains") == 0) { 4551 #line 4552 "tracker-sparql-expression.c" 4552 GString* _tmp23_; 4553 GString* _tmp24_; 4554 GString* _tmp25_; 4555 GString* _tmp26_; 4556 TrackerSparqlLiteralBinding* _tmp27_; 4557 TrackerSparqlLiteralBinding* binding; 4558 gchar* _tmp28_ = NULL; 4559 gchar* _tmp29_; 4560 TrackerSparqlLiteralBinding* _tmp30_; 4561 gchar* _tmp31_; 4562 gchar* _tmp32_ = NULL; 4563 TrackerSparqlQuery* _tmp33_; 4564 TrackerSparqlLiteralBinding* _tmp34_; 4565 TrackerSparqlLiteralBinding* _tmp35_; 4566 GString* _tmp36_; 4567 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4568 _tmp23_ = sql; 4569 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4570 g_string_append (_tmp23_, "("); 4571 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4572 _tmp24_ = sql; 4573 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4574 tracker_sparql_expression_translate_expression_as_string (self, _tmp24_, &_inner_error_); 4575 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4576 if (_inner_error_ != NULL) { 4577 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4578 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4579 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4580 g_propagate_error (error, _inner_error_); 4581 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4582 return 0; 4583 #line 4584 "tracker-sparql-expression.c" 4584 } else { 4585 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4586 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4587 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4588 g_clear_error (&_inner_error_); 4589 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4590 return 0; 4591 #line 4592 "tracker-sparql-expression.c" 4592 } 4593 } 4594 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4595 _tmp25_ = sql; 4596 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4597 g_string_append (_tmp25_, " GLOB "); 4598 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4599 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 4600 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4601 if (_inner_error_ != NULL) { 4602 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4603 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4604 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4605 g_propagate_error (error, _inner_error_); 4606 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4607 return 0; 4608 #line 4609 "tracker-sparql-expression.c" 4609 } else { 4610 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4611 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4612 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4613 g_clear_error (&_inner_error_); 4614 #line 495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4615 return 0; 4616 #line 4617 "tracker-sparql-expression.c" 4617 } 4618 } 4619 #line 497 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4620 _tmp26_ = sql; 4621 #line 497 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4622 g_string_append (_tmp26_, "?"); 4623 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4624 _tmp27_ = tracker_sparql_literal_binding_new (); 4625 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4626 binding = _tmp27_; 4627 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4628 _tmp28_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 4629 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4630 _tmp29_ = _tmp28_; 4631 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4632 if (_inner_error_ != NULL) { 4633 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4634 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4635 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4636 g_propagate_error (error, _inner_error_); 4637 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4638 _g_object_unref0 (binding); 4639 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4640 return 0; 4641 #line 4642 "tracker-sparql-expression.c" 4642 } else { 4643 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4644 _g_object_unref0 (binding); 4645 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4646 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4647 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4648 g_clear_error (&_inner_error_); 4649 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4650 return 0; 4651 #line 4652 "tracker-sparql-expression.c" 4652 } 4653 } 4654 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4655 _tmp30_ = binding; 4656 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4657 _tmp31_ = _tmp29_; 4658 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4659 _tmp32_ = g_strdup_printf ("*%s*", _tmp31_); 4660 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4661 _g_free0 (_tmp30_->literal); 4662 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4663 _tmp30_->literal = _tmp32_; 4664 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4665 _g_free0 (_tmp31_); 4666 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4667 _tmp33_ = self->priv->query; 4668 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4669 _tmp34_ = binding; 4670 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4671 _tmp35_ = _g_object_ref0 (_tmp34_); 4672 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4673 _tmp33_->bindings = g_list_append (_tmp33_->bindings, _tmp35_); 4674 #line 502 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4675 _tmp36_ = sql; 4676 #line 502 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4677 g_string_append (_tmp36_, ")"); 4678 #line 504 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4679 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 4680 #line 504 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4681 _g_object_unref0 (binding); 4682 #line 504 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4683 return result; 4684 #line 4685 "tracker-sparql-expression.c" 4685 } else { 4686 const gchar* _tmp37_; 4687 #line 505 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4688 _tmp37_ = uri; 4689 #line 505 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4690 if (g_strcmp0 (_tmp37_, TRACKER_SPARQL_EXPRESSION_FN_NS "starts-with") == 0) { 4691 #line 4692 "tracker-sparql-expression.c" 4692 GString* _tmp38_; 4693 GString* _tmp39_; 4694 gchar* _tmp40_ = NULL; 4695 gchar* prefix; 4696 GString* _tmp41_; 4697 TrackerSparqlLiteralBinding* _tmp42_; 4698 TrackerSparqlLiteralBinding* binding; 4699 TrackerSparqlLiteralBinding* _tmp43_; 4700 const gchar* _tmp44_; 4701 gchar* _tmp45_; 4702 TrackerSparqlQuery* _tmp46_; 4703 TrackerSparqlLiteralBinding* _tmp47_; 4704 TrackerSparqlLiteralBinding* _tmp48_; 4705 GString* _tmp49_; 4706 GString* _tmp50_; 4707 TrackerSparqlLiteralBinding* _tmp51_; 4708 TrackerSparqlLiteralBinding* _tmp52_; 4709 const gchar* _tmp53_; 4710 gchar* _tmp54_ = NULL; 4711 gchar* _tmp55_; 4712 gchar* _tmp56_; 4713 TrackerSparqlQuery* _tmp57_; 4714 TrackerSparqlLiteralBinding* _tmp58_; 4715 TrackerSparqlLiteralBinding* _tmp59_; 4716 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4717 _tmp38_ = sql; 4718 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4719 tracker_sparql_expression_translate_expression_as_string (self, _tmp38_, &_inner_error_); 4720 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4721 if (_inner_error_ != NULL) { 4722 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4723 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4724 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4725 g_propagate_error (error, _inner_error_); 4726 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4727 return 0; 4728 #line 4729 "tracker-sparql-expression.c" 4729 } else { 4730 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4731 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4732 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4733 g_clear_error (&_inner_error_); 4734 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4735 return 0; 4736 #line 4737 "tracker-sparql-expression.c" 4737 } 4738 } 4739 #line 510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4740 _tmp39_ = sql; 4741 #line 510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4742 g_string_append (_tmp39_, " BETWEEN "); 4743 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4744 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 4745 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4746 if (_inner_error_ != NULL) { 4747 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4748 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4749 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4750 g_propagate_error (error, _inner_error_); 4751 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4752 return 0; 4753 #line 4754 "tracker-sparql-expression.c" 4754 } else { 4755 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4756 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4757 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4758 g_clear_error (&_inner_error_); 4759 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4760 return 0; 4761 #line 4762 "tracker-sparql-expression.c" 4762 } 4763 } 4764 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4765 _tmp40_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 4766 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4767 prefix = _tmp40_; 4768 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4769 if (_inner_error_ != NULL) { 4770 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4771 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4772 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4773 g_propagate_error (error, _inner_error_); 4774 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4775 return 0; 4776 #line 4777 "tracker-sparql-expression.c" 4777 } else { 4778 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4779 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4780 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4781 g_clear_error (&_inner_error_); 4782 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4783 return 0; 4784 #line 4785 "tracker-sparql-expression.c" 4785 } 4786 } 4787 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4788 _tmp41_ = sql; 4789 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4790 g_string_append (_tmp41_, "?"); 4791 #line 516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4792 _tmp42_ = tracker_sparql_literal_binding_new (); 4793 #line 516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4794 binding = _tmp42_; 4795 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4796 _tmp43_ = binding; 4797 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4798 _tmp44_ = prefix; 4799 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4800 _tmp45_ = g_strdup (_tmp44_); 4801 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4802 _g_free0 (_tmp43_->literal); 4803 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4804 _tmp43_->literal = _tmp45_; 4805 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4806 _tmp46_ = self->priv->query; 4807 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4808 _tmp47_ = binding; 4809 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4810 _tmp48_ = _g_object_ref0 (_tmp47_); 4811 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4812 _tmp46_->bindings = g_list_append (_tmp46_->bindings, _tmp48_); 4813 #line 520 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4814 _tmp49_ = sql; 4815 #line 520 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4816 g_string_append (_tmp49_, " AND "); 4817 #line 522 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4818 _tmp50_ = sql; 4819 #line 522 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4820 g_string_append (_tmp50_, "?"); 4821 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4822 _tmp51_ = tracker_sparql_literal_binding_new (); 4823 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4824 _g_object_unref0 (binding); 4825 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4826 binding = _tmp51_; 4827 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4828 _tmp52_ = binding; 4829 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4830 _tmp53_ = prefix; 4831 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4832 _tmp54_ = g_unichar_to_string (TRACKER_COLLATION_LAST_CHAR); 4833 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4834 _tmp55_ = _tmp54_; 4835 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4836 _tmp56_ = g_strconcat (_tmp53_, _tmp55_, NULL); 4837 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4838 _g_free0 (_tmp52_->literal); 4839 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4840 _tmp52_->literal = _tmp56_; 4841 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4842 _g_free0 (_tmp55_); 4843 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4844 _tmp57_ = self->priv->query; 4845 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4846 _tmp58_ = binding; 4847 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4848 _tmp59_ = _g_object_ref0 (_tmp58_); 4849 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4850 _tmp57_->bindings = g_list_append (_tmp57_->bindings, _tmp59_); 4851 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4852 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 4853 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4854 _g_object_unref0 (binding); 4855 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4856 _g_free0 (prefix); 4857 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4858 return result; 4859 #line 4860 "tracker-sparql-expression.c" 4860 } else { 4861 const gchar* _tmp60_; 4862 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4863 _tmp60_ = uri; 4864 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4865 if (g_strcmp0 (_tmp60_, TRACKER_SPARQL_EXPRESSION_FN_NS "ends-with") == 0) { 4866 #line 4867 "tracker-sparql-expression.c" 4867 GString* _tmp61_; 4868 GString* _tmp62_; 4869 GString* _tmp63_; 4870 GString* _tmp64_; 4871 TrackerSparqlLiteralBinding* _tmp65_; 4872 TrackerSparqlLiteralBinding* binding; 4873 gchar* _tmp66_ = NULL; 4874 gchar* _tmp67_; 4875 TrackerSparqlLiteralBinding* _tmp68_; 4876 gchar* _tmp69_; 4877 gchar* _tmp70_ = NULL; 4878 TrackerSparqlQuery* _tmp71_; 4879 TrackerSparqlLiteralBinding* _tmp72_; 4880 TrackerSparqlLiteralBinding* _tmp73_; 4881 GString* _tmp74_; 4882 #line 530 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4883 _tmp61_ = sql; 4884 #line 530 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4885 g_string_append (_tmp61_, "("); 4886 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4887 _tmp62_ = sql; 4888 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4889 tracker_sparql_expression_translate_expression_as_string (self, _tmp62_, &_inner_error_); 4890 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4891 if (_inner_error_ != NULL) { 4892 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4893 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4894 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4895 g_propagate_error (error, _inner_error_); 4896 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4897 return 0; 4898 #line 4899 "tracker-sparql-expression.c" 4899 } else { 4900 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4901 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4902 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4903 g_clear_error (&_inner_error_); 4904 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4905 return 0; 4906 #line 4907 "tracker-sparql-expression.c" 4907 } 4908 } 4909 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4910 _tmp63_ = sql; 4911 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4912 g_string_append (_tmp63_, " GLOB "); 4913 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4914 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 4915 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4916 if (_inner_error_ != NULL) { 4917 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4918 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4919 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4920 g_propagate_error (error, _inner_error_); 4921 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4922 return 0; 4923 #line 4924 "tracker-sparql-expression.c" 4924 } else { 4925 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4926 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4927 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4928 g_clear_error (&_inner_error_); 4929 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4930 return 0; 4931 #line 4932 "tracker-sparql-expression.c" 4932 } 4933 } 4934 #line 535 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4935 _tmp64_ = sql; 4936 #line 535 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4937 g_string_append (_tmp64_, "?"); 4938 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4939 _tmp65_ = tracker_sparql_literal_binding_new (); 4940 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4941 binding = _tmp65_; 4942 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4943 _tmp66_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 4944 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4945 _tmp67_ = _tmp66_; 4946 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4947 if (_inner_error_ != NULL) { 4948 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4949 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4950 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4951 g_propagate_error (error, _inner_error_); 4952 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4953 _g_object_unref0 (binding); 4954 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4955 return 0; 4956 #line 4957 "tracker-sparql-expression.c" 4957 } else { 4958 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4959 _g_object_unref0 (binding); 4960 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4961 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4962 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4963 g_clear_error (&_inner_error_); 4964 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4965 return 0; 4966 #line 4967 "tracker-sparql-expression.c" 4967 } 4968 } 4969 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4970 _tmp68_ = binding; 4971 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4972 _tmp69_ = _tmp67_; 4973 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4974 _tmp70_ = g_strdup_printf ("*%s", _tmp69_); 4975 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4976 _g_free0 (_tmp68_->literal); 4977 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4978 _tmp68_->literal = _tmp70_; 4979 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4980 _g_free0 (_tmp69_); 4981 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4982 _tmp71_ = self->priv->query; 4983 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4984 _tmp72_ = binding; 4985 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4986 _tmp73_ = _g_object_ref0 (_tmp72_); 4987 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4988 _tmp71_->bindings = g_list_append (_tmp71_->bindings, _tmp73_); 4989 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4990 _tmp74_ = sql; 4991 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4992 g_string_append (_tmp74_, ")"); 4993 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4994 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 4995 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4996 _g_object_unref0 (binding); 4997 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 4998 return result; 4999 #line 5000 "tracker-sparql-expression.c" 5000 } else { 5001 const gchar* _tmp75_; 5002 #line 543 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5003 _tmp75_ = uri; 5004 #line 543 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5005 if (g_strcmp0 (_tmp75_, TRACKER_SPARQL_EXPRESSION_FN_NS "substring") == 0) { 5006 #line 5007 "tracker-sparql-expression.c" 5007 GString* _tmp76_; 5008 GString* _tmp77_; 5009 GString* _tmp78_; 5010 GString* _tmp79_; 5011 gboolean _tmp80_ = FALSE; 5012 gboolean _tmp81_; 5013 GString* _tmp84_; 5014 #line 544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5015 _tmp76_ = sql; 5016 #line 544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5017 g_string_append (_tmp76_, "substr("); 5018 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5019 _tmp77_ = sql; 5020 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5021 tracker_sparql_expression_translate_expression_as_string (self, _tmp77_, &_inner_error_); 5022 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5023 if (_inner_error_ != NULL) { 5024 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5025 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5026 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5027 g_propagate_error (error, _inner_error_); 5028 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5029 return 0; 5030 #line 5031 "tracker-sparql-expression.c" 5031 } else { 5032 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5033 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5034 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5035 g_clear_error (&_inner_error_); 5036 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5037 return 0; 5038 #line 5039 "tracker-sparql-expression.c" 5039 } 5040 } 5041 #line 547 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5042 _tmp78_ = sql; 5043 #line 547 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5044 g_string_append (_tmp78_, ", "); 5045 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5046 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5047 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5048 if (_inner_error_ != NULL) { 5049 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5050 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5051 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5052 g_propagate_error (error, _inner_error_); 5053 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5054 return 0; 5055 #line 5056 "tracker-sparql-expression.c" 5056 } else { 5057 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5058 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5059 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5060 g_clear_error (&_inner_error_); 5061 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5062 return 0; 5063 #line 5064 "tracker-sparql-expression.c" 5064 } 5065 } 5066 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5067 _tmp79_ = sql; 5068 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5069 tracker_sparql_expression_translate_expression_as_string (self, _tmp79_, &_inner_error_); 5070 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5071 if (_inner_error_ != NULL) { 5072 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5073 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5074 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5075 g_propagate_error (error, _inner_error_); 5076 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5077 return 0; 5078 #line 5079 "tracker-sparql-expression.c" 5079 } else { 5080 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5081 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5082 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5083 g_clear_error (&_inner_error_); 5084 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5085 return 0; 5086 #line 5087 "tracker-sparql-expression.c" 5087 } 5088 } 5089 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5090 _tmp80_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5091 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5092 _tmp81_ = _tmp80_; 5093 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5094 if (_inner_error_ != NULL) { 5095 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5096 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5097 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5098 g_propagate_error (error, _inner_error_); 5099 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5100 return 0; 5101 #line 5102 "tracker-sparql-expression.c" 5102 } else { 5103 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5104 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5105 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5106 g_clear_error (&_inner_error_); 5107 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5108 return 0; 5109 #line 5110 "tracker-sparql-expression.c" 5110 } 5111 } 5112 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5113 if (_tmp81_) { 5114 #line 5115 "tracker-sparql-expression.c" 5115 GString* _tmp82_; 5116 GString* _tmp83_; 5117 #line 552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5118 _tmp82_ = sql; 5119 #line 552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5120 g_string_append (_tmp82_, ", "); 5121 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5122 _tmp83_ = sql; 5123 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5124 tracker_sparql_expression_translate_expression_as_string (self, _tmp83_, &_inner_error_); 5125 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5126 if (_inner_error_ != NULL) { 5127 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5128 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5129 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5130 g_propagate_error (error, _inner_error_); 5131 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5132 return 0; 5133 #line 5134 "tracker-sparql-expression.c" 5134 } else { 5135 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5136 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5137 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5138 g_clear_error (&_inner_error_); 5139 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5140 return 0; 5141 #line 5142 "tracker-sparql-expression.c" 5142 } 5143 } 5144 } 5145 #line 556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5146 _tmp84_ = sql; 5147 #line 556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5148 g_string_append (_tmp84_, ")"); 5149 #line 558 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5150 result = TRACKER_PROPERTY_TYPE_STRING; 5151 #line 558 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5152 return result; 5153 #line 5154 "tracker-sparql-expression.c" 5154 } else { 5155 const gchar* _tmp85_; 5156 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5157 _tmp85_ = uri; 5158 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5159 if (g_strcmp0 (_tmp85_, TRACKER_SPARQL_EXPRESSION_FN_NS "concat") == 0) { 5160 #line 5161 "tracker-sparql-expression.c" 5161 GString* _tmp86_; 5162 GString* _tmp87_; 5163 GString* _tmp88_; 5164 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5165 _tmp86_ = sql; 5166 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5167 tracker_sparql_expression_translate_expression_as_string (self, _tmp86_, &_inner_error_); 5168 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5169 if (_inner_error_ != NULL) { 5170 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5171 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5172 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5173 g_propagate_error (error, _inner_error_); 5174 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5175 return 0; 5176 #line 5177 "tracker-sparql-expression.c" 5177 } else { 5178 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5179 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5180 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5181 g_clear_error (&_inner_error_); 5182 #line 560 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5183 return 0; 5184 #line 5185 "tracker-sparql-expression.c" 5185 } 5186 } 5187 #line 561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5188 _tmp87_ = sql; 5189 #line 561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5190 g_string_append (_tmp87_, "||"); 5191 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5192 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5193 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5194 if (_inner_error_ != NULL) { 5195 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5196 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5197 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5198 g_propagate_error (error, _inner_error_); 5199 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5200 return 0; 5201 #line 5202 "tracker-sparql-expression.c" 5202 } else { 5203 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5204 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5205 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5206 g_clear_error (&_inner_error_); 5207 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5208 return 0; 5209 #line 5210 "tracker-sparql-expression.c" 5210 } 5211 } 5212 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5213 _tmp88_ = sql; 5214 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5215 tracker_sparql_expression_translate_expression_as_string (self, _tmp88_, &_inner_error_); 5216 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5217 if (_inner_error_ != NULL) { 5218 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5219 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5220 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5221 g_propagate_error (error, _inner_error_); 5222 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5223 return 0; 5224 #line 5225 "tracker-sparql-expression.c" 5225 } else { 5226 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5227 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5228 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5229 g_clear_error (&_inner_error_); 5230 #line 563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5231 return 0; 5232 #line 5233 "tracker-sparql-expression.c" 5233 } 5234 } 5235 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5236 while (TRUE) { 5237 #line 5238 "tracker-sparql-expression.c" 5238 gboolean _tmp89_ = FALSE; 5239 gboolean _tmp90_; 5240 GString* _tmp91_; 5241 GString* _tmp92_; 5242 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5243 _tmp89_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5244 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5245 _tmp90_ = _tmp89_; 5246 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5247 if (_inner_error_ != NULL) { 5248 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5249 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5250 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5251 g_propagate_error (error, _inner_error_); 5252 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5253 return 0; 5254 #line 5255 "tracker-sparql-expression.c" 5255 } else { 5256 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5257 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5258 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5259 g_clear_error (&_inner_error_); 5260 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5261 return 0; 5262 #line 5263 "tracker-sparql-expression.c" 5263 } 5264 } 5265 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5266 if (!_tmp90_) { 5267 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5268 break; 5269 #line 5270 "tracker-sparql-expression.c" 5270 } 5271 #line 565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5272 _tmp91_ = sql; 5273 #line 565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5274 g_string_append (_tmp91_, "||"); 5275 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5276 _tmp92_ = sql; 5277 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5278 tracker_sparql_expression_translate_expression_as_string (self, _tmp92_, &_inner_error_); 5279 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5280 if (_inner_error_ != NULL) { 5281 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5282 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5283 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5284 g_propagate_error (error, _inner_error_); 5285 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5286 return 0; 5287 #line 5288 "tracker-sparql-expression.c" 5288 } else { 5289 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5290 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5291 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5292 g_clear_error (&_inner_error_); 5293 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5294 return 0; 5295 #line 5296 "tracker-sparql-expression.c" 5296 } 5297 } 5298 } 5299 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5300 result = TRACKER_PROPERTY_TYPE_STRING; 5301 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5302 return result; 5303 #line 5304 "tracker-sparql-expression.c" 5304 } else { 5305 const gchar* _tmp93_; 5306 #line 570 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5307 _tmp93_ = uri; 5308 #line 570 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5309 if (g_strcmp0 (_tmp93_, TRACKER_SPARQL_EXPRESSION_FN_NS "string-join") == 0) { 5310 #line 5311 "tracker-sparql-expression.c" 5311 GString* _tmp94_; 5312 GString* _tmp95_; 5313 GString* _tmp96_; 5314 GString* _tmp97_; 5315 GString* _tmp102_; 5316 GString* _tmp103_; 5317 GString* _tmp104_; 5318 #line 571 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5319 _tmp94_ = sql; 5320 #line 571 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5321 g_string_append (_tmp94_, "SparqlStringJoin("); 5322 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5323 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 5324 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5325 if (_inner_error_ != NULL) { 5326 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5327 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5328 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5329 g_propagate_error (error, _inner_error_); 5330 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5331 return 0; 5332 #line 5333 "tracker-sparql-expression.c" 5333 } else { 5334 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5335 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5336 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5337 g_clear_error (&_inner_error_); 5338 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5339 return 0; 5340 #line 5341 "tracker-sparql-expression.c" 5341 } 5342 } 5343 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5344 _tmp95_ = sql; 5345 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5346 tracker_sparql_expression_translate_expression_as_string (self, _tmp95_, &_inner_error_); 5347 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5348 if (_inner_error_ != NULL) { 5349 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5350 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5351 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5352 g_propagate_error (error, _inner_error_); 5353 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5354 return 0; 5355 #line 5356 "tracker-sparql-expression.c" 5356 } else { 5357 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5358 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5359 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5360 g_clear_error (&_inner_error_); 5361 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5362 return 0; 5363 #line 5364 "tracker-sparql-expression.c" 5364 } 5365 } 5366 #line 575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5367 _tmp96_ = sql; 5368 #line 575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5369 g_string_append (_tmp96_, ", "); 5370 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5371 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5372 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5373 if (_inner_error_ != NULL) { 5374 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5375 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5376 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5377 g_propagate_error (error, _inner_error_); 5378 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5379 return 0; 5380 #line 5381 "tracker-sparql-expression.c" 5381 } else { 5382 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5383 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5384 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5385 g_clear_error (&_inner_error_); 5386 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5387 return 0; 5388 #line 5389 "tracker-sparql-expression.c" 5389 } 5390 } 5391 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5392 _tmp97_ = sql; 5393 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5394 tracker_sparql_expression_translate_expression_as_string (self, _tmp97_, &_inner_error_); 5395 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5396 if (_inner_error_ != NULL) { 5397 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5398 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5399 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5400 g_propagate_error (error, _inner_error_); 5401 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5402 return 0; 5403 #line 5404 "tracker-sparql-expression.c" 5404 } else { 5405 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5406 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5407 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5408 g_clear_error (&_inner_error_); 5409 #line 577 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5410 return 0; 5411 #line 5412 "tracker-sparql-expression.c" 5412 } 5413 } 5414 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5415 while (TRUE) { 5416 #line 5417 "tracker-sparql-expression.c" 5417 gboolean _tmp98_ = FALSE; 5418 gboolean _tmp99_; 5419 GString* _tmp100_; 5420 GString* _tmp101_; 5421 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5422 _tmp98_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5423 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5424 _tmp99_ = _tmp98_; 5425 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5426 if (_inner_error_ != NULL) { 5427 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5428 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5429 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5430 g_propagate_error (error, _inner_error_); 5431 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5432 return 0; 5433 #line 5434 "tracker-sparql-expression.c" 5434 } else { 5435 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5436 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5437 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5438 g_clear_error (&_inner_error_); 5439 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5440 return 0; 5441 #line 5442 "tracker-sparql-expression.c" 5442 } 5443 } 5444 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5445 if (!_tmp99_) { 5446 #line 578 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5447 break; 5448 #line 5449 "tracker-sparql-expression.c" 5449 } 5450 #line 579 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5451 _tmp100_ = sql; 5452 #line 579 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5453 g_string_append (_tmp100_, ", "); 5454 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5455 _tmp101_ = sql; 5456 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5457 tracker_sparql_expression_translate_expression_as_string (self, _tmp101_, &_inner_error_); 5458 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5459 if (_inner_error_ != NULL) { 5460 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5461 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5462 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5463 g_propagate_error (error, _inner_error_); 5464 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5465 return 0; 5466 #line 5467 "tracker-sparql-expression.c" 5467 } else { 5468 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5469 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5470 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5471 g_clear_error (&_inner_error_); 5472 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5473 return 0; 5474 #line 5475 "tracker-sparql-expression.c" 5475 } 5476 } 5477 } 5478 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5479 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 5480 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5481 if (_inner_error_ != NULL) { 5482 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5483 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5484 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5485 g_propagate_error (error, _inner_error_); 5486 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5487 return 0; 5488 #line 5489 "tracker-sparql-expression.c" 5489 } else { 5490 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5491 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5492 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5493 g_clear_error (&_inner_error_); 5494 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5495 return 0; 5496 #line 5497 "tracker-sparql-expression.c" 5497 } 5498 } 5499 #line 584 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5500 _tmp102_ = sql; 5501 #line 584 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5502 g_string_append (_tmp102_, ","); 5503 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5504 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5505 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5506 if (_inner_error_ != NULL) { 5507 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5508 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5509 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5510 g_propagate_error (error, _inner_error_); 5511 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5512 return 0; 5513 #line 5514 "tracker-sparql-expression.c" 5514 } else { 5515 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5516 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5517 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5518 g_clear_error (&_inner_error_); 5519 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5520 return 0; 5521 #line 5522 "tracker-sparql-expression.c" 5522 } 5523 } 5524 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5525 _tmp103_ = sql; 5526 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5527 tracker_sparql_expression_translate_expression (self, _tmp103_, &_inner_error_); 5528 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5529 if (_inner_error_ != NULL) { 5530 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5531 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5532 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5533 g_propagate_error (error, _inner_error_); 5534 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5535 return 0; 5536 #line 5537 "tracker-sparql-expression.c" 5537 } else { 5538 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5539 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5540 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5541 g_clear_error (&_inner_error_); 5542 #line 586 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5543 return 0; 5544 #line 5545 "tracker-sparql-expression.c" 5545 } 5546 } 5547 #line 587 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5548 _tmp104_ = sql; 5549 #line 587 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5550 g_string_append (_tmp104_, ")"); 5551 #line 589 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5552 result = TRACKER_PROPERTY_TYPE_STRING; 5553 #line 589 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5554 return result; 5555 #line 5556 "tracker-sparql-expression.c" 5556 } else { 5557 const gchar* _tmp105_; 5558 #line 590 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5559 _tmp105_ = uri; 5560 #line 590 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5561 if (g_strcmp0 (_tmp105_, TRACKER_SPARQL_EXPRESSION_FN_NS "year-from-dateTime") == 0) { 5562 #line 5563 "tracker-sparql-expression.c" 5563 gchar* _tmp106_ = NULL; 5564 gchar* _tmp107_; 5565 gchar* _tmp108_ = NULL; 5566 gchar* _tmp109_; 5567 gchar* variable_name; 5568 TrackerSparqlContext* _tmp110_; 5569 TrackerSparqlContext* _tmp111_; 5570 const gchar* _tmp112_; 5571 TrackerSparqlVariable* _tmp113_ = NULL; 5572 TrackerSparqlVariable* _tmp114_; 5573 TrackerSparqlVariable* variable; 5574 GString* _tmp115_; 5575 GString* _tmp116_; 5576 TrackerSparqlVariable* _tmp117_; 5577 gchar* _tmp118_ = NULL; 5578 gchar* _tmp119_; 5579 GString* _tmp120_; 5580 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5581 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 5582 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5583 if (_inner_error_ != NULL) { 5584 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5585 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5586 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5587 g_propagate_error (error, _inner_error_); 5588 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5589 return 0; 5590 #line 5591 "tracker-sparql-expression.c" 5591 } else { 5592 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5593 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5594 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5595 g_clear_error (&_inner_error_); 5596 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5597 return 0; 5598 #line 5599 "tracker-sparql-expression.c" 5599 } 5600 } 5601 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5602 _tmp106_ = tracker_sparql_expression_get_last_string (self, 0); 5603 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5604 _tmp107_ = _tmp106_; 5605 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5606 _tmp108_ = string_substring (_tmp107_, (glong) 1, (glong) (-1)); 5607 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5608 _tmp109_ = _tmp108_; 5609 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5610 _g_free0 (_tmp107_); 5611 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5612 variable_name = _tmp109_; 5613 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5614 _tmp110_ = tracker_sparql_expression_get_context (self); 5615 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5616 _tmp111_ = _tmp110_; 5617 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5618 _tmp112_ = variable_name; 5619 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5620 _tmp113_ = tracker_sparql_context_get_variable (_tmp111_, _tmp112_); 5621 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5622 _tmp114_ = _g_object_ref0 (_tmp113_); 5623 #line 593 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5624 variable = _tmp114_; 5625 #line 595 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5626 _tmp115_ = sql; 5627 #line 595 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5628 g_string_append (_tmp115_, "strftime (\"%Y\", "); 5629 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5630 _tmp116_ = sql; 5631 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5632 _tmp117_ = variable; 5633 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5634 _tmp118_ = tracker_sparql_variable_get_extra_sql_expression (_tmp117_, "localDate"); 5635 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5636 _tmp119_ = _tmp118_; 5637 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5638 g_string_append (_tmp116_, _tmp119_); 5639 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5640 _g_free0 (_tmp119_); 5641 #line 597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5642 _tmp120_ = sql; 5643 #line 597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5644 g_string_append (_tmp120_, " * 24 * 3600, \"unixepoch\")"); 5645 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5646 result = TRACKER_PROPERTY_TYPE_INTEGER; 5647 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5648 _g_object_unref0 (variable); 5649 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5650 _g_free0 (variable_name); 5651 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5652 return result; 5653 #line 5654 "tracker-sparql-expression.c" 5654 } else { 5655 const gchar* _tmp121_; 5656 #line 600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5657 _tmp121_ = uri; 5658 #line 600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5659 if (g_strcmp0 (_tmp121_, TRACKER_SPARQL_EXPRESSION_FN_NS "month-from-dateTime") == 0) { 5660 #line 5661 "tracker-sparql-expression.c" 5661 gchar* _tmp122_ = NULL; 5662 gchar* _tmp123_; 5663 gchar* _tmp124_ = NULL; 5664 gchar* _tmp125_; 5665 gchar* variable_name; 5666 TrackerSparqlContext* _tmp126_; 5667 TrackerSparqlContext* _tmp127_; 5668 const gchar* _tmp128_; 5669 TrackerSparqlVariable* _tmp129_ = NULL; 5670 TrackerSparqlVariable* _tmp130_; 5671 TrackerSparqlVariable* variable; 5672 GString* _tmp131_; 5673 GString* _tmp132_; 5674 TrackerSparqlVariable* _tmp133_; 5675 gchar* _tmp134_ = NULL; 5676 gchar* _tmp135_; 5677 GString* _tmp136_; 5678 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5679 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 5680 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5681 if (_inner_error_ != NULL) { 5682 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5683 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5684 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5685 g_propagate_error (error, _inner_error_); 5686 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5687 return 0; 5688 #line 5689 "tracker-sparql-expression.c" 5689 } else { 5690 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5691 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5692 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5693 g_clear_error (&_inner_error_); 5694 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5695 return 0; 5696 #line 5697 "tracker-sparql-expression.c" 5697 } 5698 } 5699 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5700 _tmp122_ = tracker_sparql_expression_get_last_string (self, 0); 5701 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5702 _tmp123_ = _tmp122_; 5703 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5704 _tmp124_ = string_substring (_tmp123_, (glong) 1, (glong) (-1)); 5705 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5706 _tmp125_ = _tmp124_; 5707 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5708 _g_free0 (_tmp123_); 5709 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5710 variable_name = _tmp125_; 5711 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5712 _tmp126_ = tracker_sparql_expression_get_context (self); 5713 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5714 _tmp127_ = _tmp126_; 5715 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5716 _tmp128_ = variable_name; 5717 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5718 _tmp129_ = tracker_sparql_context_get_variable (_tmp127_, _tmp128_); 5719 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5720 _tmp130_ = _g_object_ref0 (_tmp129_); 5721 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5722 variable = _tmp130_; 5723 #line 605 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5724 _tmp131_ = sql; 5725 #line 605 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5726 g_string_append (_tmp131_, "strftime (\"%m\", "); 5727 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5728 _tmp132_ = sql; 5729 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5730 _tmp133_ = variable; 5731 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5732 _tmp134_ = tracker_sparql_variable_get_extra_sql_expression (_tmp133_, "localDate"); 5733 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5734 _tmp135_ = _tmp134_; 5735 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5736 g_string_append (_tmp132_, _tmp135_); 5737 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5738 _g_free0 (_tmp135_); 5739 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5740 _tmp136_ = sql; 5741 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5742 g_string_append (_tmp136_, " * 24 * 3600, \"unixepoch\")"); 5743 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5744 result = TRACKER_PROPERTY_TYPE_INTEGER; 5745 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5746 _g_object_unref0 (variable); 5747 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5748 _g_free0 (variable_name); 5749 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5750 return result; 5751 #line 5752 "tracker-sparql-expression.c" 5752 } else { 5753 const gchar* _tmp137_; 5754 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5755 _tmp137_ = uri; 5756 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5757 if (g_strcmp0 (_tmp137_, TRACKER_SPARQL_EXPRESSION_FN_NS "day-from-dateTime") == 0) { 5758 #line 5759 "tracker-sparql-expression.c" 5759 gchar* _tmp138_ = NULL; 5760 gchar* _tmp139_; 5761 gchar* _tmp140_ = NULL; 5762 gchar* _tmp141_; 5763 gchar* variable_name; 5764 TrackerSparqlContext* _tmp142_; 5765 TrackerSparqlContext* _tmp143_; 5766 const gchar* _tmp144_; 5767 TrackerSparqlVariable* _tmp145_ = NULL; 5768 TrackerSparqlVariable* _tmp146_; 5769 TrackerSparqlVariable* variable; 5770 GString* _tmp147_; 5771 GString* _tmp148_; 5772 TrackerSparqlVariable* _tmp149_; 5773 gchar* _tmp150_ = NULL; 5774 gchar* _tmp151_; 5775 GString* _tmp152_; 5776 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5777 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 5778 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5779 if (_inner_error_ != NULL) { 5780 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5781 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5782 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5783 g_propagate_error (error, _inner_error_); 5784 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5785 return 0; 5786 #line 5787 "tracker-sparql-expression.c" 5787 } else { 5788 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5789 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5790 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5791 g_clear_error (&_inner_error_); 5792 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5793 return 0; 5794 #line 5795 "tracker-sparql-expression.c" 5795 } 5796 } 5797 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5798 _tmp138_ = tracker_sparql_expression_get_last_string (self, 0); 5799 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5800 _tmp139_ = _tmp138_; 5801 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5802 _tmp140_ = string_substring (_tmp139_, (glong) 1, (glong) (-1)); 5803 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5804 _tmp141_ = _tmp140_; 5805 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5806 _g_free0 (_tmp139_); 5807 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5808 variable_name = _tmp141_; 5809 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5810 _tmp142_ = tracker_sparql_expression_get_context (self); 5811 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5812 _tmp143_ = _tmp142_; 5813 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5814 _tmp144_ = variable_name; 5815 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5816 _tmp145_ = tracker_sparql_context_get_variable (_tmp143_, _tmp144_); 5817 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5818 _tmp146_ = _g_object_ref0 (_tmp145_); 5819 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5820 variable = _tmp146_; 5821 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5822 _tmp147_ = sql; 5823 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5824 g_string_append (_tmp147_, "strftime (\"%d\", "); 5825 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5826 _tmp148_ = sql; 5827 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5828 _tmp149_ = variable; 5829 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5830 _tmp150_ = tracker_sparql_variable_get_extra_sql_expression (_tmp149_, "localDate"); 5831 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5832 _tmp151_ = _tmp150_; 5833 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5834 g_string_append (_tmp148_, _tmp151_); 5835 #line 616 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5836 _g_free0 (_tmp151_); 5837 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5838 _tmp152_ = sql; 5839 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5840 g_string_append (_tmp152_, " * 24 * 3600, \"unixepoch\")"); 5841 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5842 result = TRACKER_PROPERTY_TYPE_INTEGER; 5843 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5844 _g_object_unref0 (variable); 5845 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5846 _g_free0 (variable_name); 5847 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5848 return result; 5849 #line 5850 "tracker-sparql-expression.c" 5850 } else { 5851 const gchar* _tmp153_; 5852 #line 620 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5853 _tmp153_ = uri; 5854 #line 620 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5855 if (g_strcmp0 (_tmp153_, TRACKER_SPARQL_EXPRESSION_FN_NS "hours-from-dateTime") == 0) { 5856 #line 5857 "tracker-sparql-expression.c" 5857 gchar* _tmp154_ = NULL; 5858 gchar* _tmp155_; 5859 gchar* _tmp156_ = NULL; 5860 gchar* _tmp157_; 5861 gchar* variable_name; 5862 TrackerSparqlContext* _tmp158_; 5863 TrackerSparqlContext* _tmp159_; 5864 const gchar* _tmp160_; 5865 TrackerSparqlVariable* _tmp161_ = NULL; 5866 TrackerSparqlVariable* _tmp162_; 5867 TrackerSparqlVariable* variable; 5868 GString* _tmp163_; 5869 GString* _tmp164_; 5870 TrackerSparqlVariable* _tmp165_; 5871 gchar* _tmp166_ = NULL; 5872 gchar* _tmp167_; 5873 GString* _tmp168_; 5874 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5875 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 5876 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5877 if (_inner_error_ != NULL) { 5878 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5879 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5880 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5881 g_propagate_error (error, _inner_error_); 5882 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5883 return 0; 5884 #line 5885 "tracker-sparql-expression.c" 5885 } else { 5886 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5887 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5888 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5889 g_clear_error (&_inner_error_); 5890 #line 621 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5891 return 0; 5892 #line 5893 "tracker-sparql-expression.c" 5893 } 5894 } 5895 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5896 _tmp154_ = tracker_sparql_expression_get_last_string (self, 0); 5897 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5898 _tmp155_ = _tmp154_; 5899 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5900 _tmp156_ = string_substring (_tmp155_, (glong) 1, (glong) (-1)); 5901 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5902 _tmp157_ = _tmp156_; 5903 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5904 _g_free0 (_tmp155_); 5905 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5906 variable_name = _tmp157_; 5907 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5908 _tmp158_ = tracker_sparql_expression_get_context (self); 5909 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5910 _tmp159_ = _tmp158_; 5911 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5912 _tmp160_ = variable_name; 5913 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5914 _tmp161_ = tracker_sparql_context_get_variable (_tmp159_, _tmp160_); 5915 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5916 _tmp162_ = _g_object_ref0 (_tmp161_); 5917 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5918 variable = _tmp162_; 5919 #line 625 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5920 _tmp163_ = sql; 5921 #line 625 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5922 g_string_append (_tmp163_, "("); 5923 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5924 _tmp164_ = sql; 5925 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5926 _tmp165_ = variable; 5927 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5928 _tmp166_ = tracker_sparql_variable_get_extra_sql_expression (_tmp165_, "localTime"); 5929 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5930 _tmp167_ = _tmp166_; 5931 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5932 g_string_append (_tmp164_, _tmp167_); 5933 #line 626 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5934 _g_free0 (_tmp167_); 5935 #line 627 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5936 _tmp168_ = sql; 5937 #line 627 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5938 g_string_append (_tmp168_, " / 3600)"); 5939 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5940 result = TRACKER_PROPERTY_TYPE_INTEGER; 5941 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5942 _g_object_unref0 (variable); 5943 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5944 _g_free0 (variable_name); 5945 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5946 return result; 5947 #line 5948 "tracker-sparql-expression.c" 5948 } else { 5949 const gchar* _tmp169_; 5950 #line 630 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5951 _tmp169_ = uri; 5952 #line 630 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5953 if (g_strcmp0 (_tmp169_, TRACKER_SPARQL_EXPRESSION_FN_NS "minutes-from-dateTime") == 0) { 5954 #line 5955 "tracker-sparql-expression.c" 5955 gchar* _tmp170_ = NULL; 5956 gchar* _tmp171_; 5957 gchar* _tmp172_ = NULL; 5958 gchar* _tmp173_; 5959 gchar* variable_name; 5960 TrackerSparqlContext* _tmp174_; 5961 TrackerSparqlContext* _tmp175_; 5962 const gchar* _tmp176_; 5963 TrackerSparqlVariable* _tmp177_ = NULL; 5964 TrackerSparqlVariable* _tmp178_; 5965 TrackerSparqlVariable* variable; 5966 GString* _tmp179_; 5967 GString* _tmp180_; 5968 TrackerSparqlVariable* _tmp181_; 5969 gchar* _tmp182_ = NULL; 5970 gchar* _tmp183_; 5971 GString* _tmp184_; 5972 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5973 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 5974 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5975 if (_inner_error_ != NULL) { 5976 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5977 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5978 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5979 g_propagate_error (error, _inner_error_); 5980 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5981 return 0; 5982 #line 5983 "tracker-sparql-expression.c" 5983 } else { 5984 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5985 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5986 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5987 g_clear_error (&_inner_error_); 5988 #line 631 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5989 return 0; 5990 #line 5991 "tracker-sparql-expression.c" 5991 } 5992 } 5993 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5994 _tmp170_ = tracker_sparql_expression_get_last_string (self, 0); 5995 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5996 _tmp171_ = _tmp170_; 5997 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 5998 _tmp172_ = string_substring (_tmp171_, (glong) 1, (glong) (-1)); 5999 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6000 _tmp173_ = _tmp172_; 6001 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6002 _g_free0 (_tmp171_); 6003 #line 632 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6004 variable_name = _tmp173_; 6005 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6006 _tmp174_ = tracker_sparql_expression_get_context (self); 6007 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6008 _tmp175_ = _tmp174_; 6009 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6010 _tmp176_ = variable_name; 6011 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6012 _tmp177_ = tracker_sparql_context_get_variable (_tmp175_, _tmp176_); 6013 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6014 _tmp178_ = _g_object_ref0 (_tmp177_); 6015 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6016 variable = _tmp178_; 6017 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6018 _tmp179_ = sql; 6019 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6020 g_string_append (_tmp179_, "("); 6021 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6022 _tmp180_ = sql; 6023 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6024 _tmp181_ = variable; 6025 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6026 _tmp182_ = tracker_sparql_variable_get_extra_sql_expression (_tmp181_, "localTime"); 6027 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6028 _tmp183_ = _tmp182_; 6029 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6030 g_string_append (_tmp180_, _tmp183_); 6031 #line 636 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6032 _g_free0 (_tmp183_); 6033 #line 637 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6034 _tmp184_ = sql; 6035 #line 637 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6036 g_string_append (_tmp184_, " / 60 % 60)"); 6037 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6038 result = TRACKER_PROPERTY_TYPE_INTEGER; 6039 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6040 _g_object_unref0 (variable); 6041 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6042 _g_free0 (variable_name); 6043 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6044 return result; 6045 #line 6046 "tracker-sparql-expression.c" 6046 } else { 6047 const gchar* _tmp185_; 6048 #line 640 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6049 _tmp185_ = uri; 6050 #line 640 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6051 if (g_strcmp0 (_tmp185_, TRACKER_SPARQL_EXPRESSION_FN_NS "seconds-from-dateTime") == 0) { 6052 #line 6053 "tracker-sparql-expression.c" 6053 gchar* _tmp186_ = NULL; 6054 gchar* _tmp187_; 6055 gchar* _tmp188_ = NULL; 6056 gchar* _tmp189_; 6057 gchar* variable_name; 6058 TrackerSparqlContext* _tmp190_; 6059 TrackerSparqlContext* _tmp191_; 6060 const gchar* _tmp192_; 6061 TrackerSparqlVariable* _tmp193_ = NULL; 6062 TrackerSparqlVariable* _tmp194_; 6063 TrackerSparqlVariable* variable; 6064 GString* _tmp195_; 6065 GString* _tmp196_; 6066 TrackerSparqlVariable* _tmp197_; 6067 gchar* _tmp198_ = NULL; 6068 gchar* _tmp199_; 6069 GString* _tmp200_; 6070 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6071 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 6072 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6073 if (_inner_error_ != NULL) { 6074 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6075 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6076 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6077 g_propagate_error (error, _inner_error_); 6078 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6079 return 0; 6080 #line 6081 "tracker-sparql-expression.c" 6081 } else { 6082 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6083 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6084 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6085 g_clear_error (&_inner_error_); 6086 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6087 return 0; 6088 #line 6089 "tracker-sparql-expression.c" 6089 } 6090 } 6091 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6092 _tmp186_ = tracker_sparql_expression_get_last_string (self, 0); 6093 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6094 _tmp187_ = _tmp186_; 6095 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6096 _tmp188_ = string_substring (_tmp187_, (glong) 1, (glong) (-1)); 6097 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6098 _tmp189_ = _tmp188_; 6099 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6100 _g_free0 (_tmp187_); 6101 #line 642 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6102 variable_name = _tmp189_; 6103 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6104 _tmp190_ = tracker_sparql_expression_get_context (self); 6105 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6106 _tmp191_ = _tmp190_; 6107 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6108 _tmp192_ = variable_name; 6109 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6110 _tmp193_ = tracker_sparql_context_get_variable (_tmp191_, _tmp192_); 6111 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6112 _tmp194_ = _g_object_ref0 (_tmp193_); 6113 #line 643 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6114 variable = _tmp194_; 6115 #line 645 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6116 _tmp195_ = sql; 6117 #line 645 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6118 g_string_append (_tmp195_, "("); 6119 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6120 _tmp196_ = sql; 6121 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6122 _tmp197_ = variable; 6123 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6124 _tmp198_ = tracker_sparql_variable_get_extra_sql_expression (_tmp197_, "localTime"); 6125 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6126 _tmp199_ = _tmp198_; 6127 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6128 g_string_append (_tmp196_, _tmp199_); 6129 #line 646 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6130 _g_free0 (_tmp199_); 6131 #line 647 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6132 _tmp200_ = sql; 6133 #line 647 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6134 g_string_append (_tmp200_, "% 60)"); 6135 #line 649 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6136 result = TRACKER_PROPERTY_TYPE_INTEGER; 6137 #line 649 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6138 _g_object_unref0 (variable); 6139 #line 649 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6140 _g_free0 (variable_name); 6141 #line 649 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6142 return result; 6143 #line 6144 "tracker-sparql-expression.c" 6144 } else { 6145 const gchar* _tmp201_; 6146 #line 650 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6147 _tmp201_ = uri; 6148 #line 650 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6149 if (g_strcmp0 (_tmp201_, TRACKER_SPARQL_EXPRESSION_FN_NS "timezone-from-dateTime") == 0) { 6150 #line 6151 "tracker-sparql-expression.c" 6151 gchar* _tmp202_ = NULL; 6152 gchar* _tmp203_; 6153 gchar* _tmp204_ = NULL; 6154 gchar* _tmp205_; 6155 gchar* variable_name; 6156 TrackerSparqlContext* _tmp206_; 6157 TrackerSparqlContext* _tmp207_; 6158 const gchar* _tmp208_; 6159 TrackerSparqlVariable* _tmp209_ = NULL; 6160 TrackerSparqlVariable* _tmp210_; 6161 TrackerSparqlVariable* variable; 6162 GString* _tmp211_; 6163 GString* _tmp212_; 6164 TrackerSparqlVariable* _tmp213_; 6165 gchar* _tmp214_ = NULL; 6166 gchar* _tmp215_; 6167 GString* _tmp216_; 6168 GString* _tmp217_; 6169 TrackerSparqlVariable* _tmp218_; 6170 gchar* _tmp219_ = NULL; 6171 gchar* _tmp220_; 6172 GString* _tmp221_; 6173 GString* _tmp222_; 6174 GString* _tmp223_; 6175 TrackerSparqlVariable* _tmp224_; 6176 const gchar* _tmp225_; 6177 const gchar* _tmp226_; 6178 GString* _tmp227_; 6179 GString* _tmp228_; 6180 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6181 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 6182 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6183 if (_inner_error_ != NULL) { 6184 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6185 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6186 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6187 g_propagate_error (error, _inner_error_); 6188 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6189 return 0; 6190 #line 6191 "tracker-sparql-expression.c" 6191 } else { 6192 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6193 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6194 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6195 g_clear_error (&_inner_error_); 6196 #line 651 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6197 return 0; 6198 #line 6199 "tracker-sparql-expression.c" 6199 } 6200 } 6201 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6202 _tmp202_ = tracker_sparql_expression_get_last_string (self, 0); 6203 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6204 _tmp203_ = _tmp202_; 6205 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6206 _tmp204_ = string_substring (_tmp203_, (glong) 1, (glong) (-1)); 6207 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6208 _tmp205_ = _tmp204_; 6209 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6210 _g_free0 (_tmp203_); 6211 #line 652 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6212 variable_name = _tmp205_; 6213 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6214 _tmp206_ = tracker_sparql_expression_get_context (self); 6215 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6216 _tmp207_ = _tmp206_; 6217 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6218 _tmp208_ = variable_name; 6219 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6220 _tmp209_ = tracker_sparql_context_get_variable (_tmp207_, _tmp208_); 6221 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6222 _tmp210_ = _g_object_ref0 (_tmp209_); 6223 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6224 variable = _tmp210_; 6225 #line 655 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6226 _tmp211_ = sql; 6227 #line 655 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6228 g_string_append (_tmp211_, "("); 6229 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6230 _tmp212_ = sql; 6231 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6232 _tmp213_ = variable; 6233 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6234 _tmp214_ = tracker_sparql_variable_get_extra_sql_expression (_tmp213_, "localDate"); 6235 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6236 _tmp215_ = _tmp214_; 6237 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6238 g_string_append (_tmp212_, _tmp215_); 6239 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6240 _g_free0 (_tmp215_); 6241 #line 657 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6242 _tmp216_ = sql; 6243 #line 657 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6244 g_string_append (_tmp216_, " * 24 * 3600 + "); 6245 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6246 _tmp217_ = sql; 6247 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6248 _tmp218_ = variable; 6249 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6250 _tmp219_ = tracker_sparql_variable_get_extra_sql_expression (_tmp218_, "localTime"); 6251 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6252 _tmp220_ = _tmp219_; 6253 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6254 g_string_append (_tmp217_, _tmp220_); 6255 #line 658 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6256 _g_free0 (_tmp220_); 6257 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6258 _tmp221_ = sql; 6259 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6260 g_string_append (_tmp221_, "- "); 6261 #line 660 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6262 _tmp222_ = sql; 6263 #line 660 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6264 g_string_append (_tmp222_, "CAST ("); 6265 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6266 _tmp223_ = sql; 6267 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6268 _tmp224_ = variable; 6269 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6270 _tmp225_ = tracker_sparql_variable_get_sql_expression (_tmp224_); 6271 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6272 _tmp226_ = _tmp225_; 6273 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6274 g_string_append (_tmp223_, _tmp226_); 6275 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6276 _tmp227_ = sql; 6277 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6278 g_string_append (_tmp227_, " AS INTEGER)"); 6279 #line 663 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6280 _tmp228_ = sql; 6281 #line 663 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6282 g_string_append (_tmp228_, ")"); 6283 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6284 result = TRACKER_PROPERTY_TYPE_INTEGER; 6285 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6286 _g_object_unref0 (variable); 6287 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6288 _g_free0 (variable_name); 6289 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6290 return result; 6291 #line 6292 "tracker-sparql-expression.c" 6292 } else { 6293 const gchar* _tmp229_; 6294 #line 666 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6295 _tmp229_ = uri; 6296 #line 666 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6297 if (g_strcmp0 (_tmp229_, TRACKER_SPARQL_EXPRESSION_FTS_NS "rank") == 0) { 6298 #line 6299 "tracker-sparql-expression.c" 6299 gboolean is_var = FALSE;
variable 'is_var' set but not used
(emitted by gcc)
6300 TrackerSparqlPattern* _tmp230_; 6301 TrackerSparqlPattern* _tmp231_; 6302 gboolean _tmp232_ = FALSE; 6303 gchar* _tmp233_ = NULL; 6304 gchar* v; 6305 GString* _tmp234_; 6306 const gchar* _tmp235_; 6307 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6308 _tmp230_ = tracker_sparql_expression_get_pattern (self); 6309 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6310 _tmp231_ = _tmp230_; 6311 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6312 _tmp233_ = tracker_sparql_pattern_parse_var_or_term (_tmp231_, NULL, &_tmp232_, &_inner_error_); 6313 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6314 is_var = _tmp232_;
Value stored to 'is_var' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

6315 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6316 v = _tmp233_; 6317 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6318 if (_inner_error_ != NULL) { 6319 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6320 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6321 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6322 g_propagate_error (error, _inner_error_); 6323 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6324 return 0; 6325 #line 6326 "tracker-sparql-expression.c" 6326 } else { 6327 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6328 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6329 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6330 g_clear_error (&_inner_error_); 6331 #line 668 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6332 return 0; 6333 #line 6334 "tracker-sparql-expression.c" 6334 } 6335 } 6336 #line 669 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6337 _tmp234_ = sql; 6338 #line 669 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6339 _tmp235_ = v; 6340 #line 669 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6341 g_string_append_printf (_tmp234_, "\"%s_u_rank\"", _tmp235_); 6342 #line 671 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6343 result = TRACKER_PROPERTY_TYPE_DOUBLE; 6344 #line 671 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6345 _g_free0 (v); 6346 #line 671 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6347 return result; 6348 #line 6349 "tracker-sparql-expression.c" 6349 } else { 6350 const gchar* _tmp236_; 6351 #line 672 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6352 _tmp236_ = uri; 6353 #line 672 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6354 if (g_strcmp0 (_tmp236_, TRACKER_SPARQL_EXPRESSION_FTS_NS "offsets") == 0) { 6355 #line 6356 "tracker-sparql-expression.c" 6356 gboolean is_var = FALSE; 6357 TrackerSparqlPattern* _tmp237_; 6358 TrackerSparqlPattern* _tmp238_; 6359 gboolean _tmp239_ = FALSE; 6360 gchar* _tmp240_ = NULL; 6361 gchar* v; 6362 TrackerSparqlContext* _tmp241_; 6363 TrackerSparqlContext* _tmp242_; 6364 const gchar* _tmp243_; 6365 TrackerSparqlVariable* _tmp244_ = NULL; 6366 TrackerSparqlVariable* _tmp245_; 6367 TrackerSparqlVariable* variable; 6368 GString* _tmp246_; 6369 TrackerSparqlVariable* _tmp247_; 6370 const gchar* _tmp248_; 6371 const gchar* _tmp249_; 6372 gchar* _tmp250_; 6373 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6374 _tmp237_ = tracker_sparql_expression_get_pattern (self); 6375 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6376 _tmp238_ = _tmp237_; 6377 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6378 _tmp240_ = tracker_sparql_pattern_parse_var_or_term (_tmp238_, NULL, &_tmp239_, &_inner_error_); 6379 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6380 is_var = _tmp239_;
Value stored to 'is_var' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

6381 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6382 v = _tmp240_; 6383 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6384 if (_inner_error_ != NULL) { 6385 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6386 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6387 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6388 g_propagate_error (error, _inner_error_); 6389 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6390 return 0; 6391 #line 6392 "tracker-sparql-expression.c" 6392 } else { 6393 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6394 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6395 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6396 g_clear_error (&_inner_error_); 6397 #line 674 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6398 return 0; 6399 #line 6400 "tracker-sparql-expression.c" 6400 } 6401 } 6402 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6403 _tmp241_ = tracker_sparql_expression_get_context (self); 6404 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6405 _tmp242_ = _tmp241_; 6406 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6407 _tmp243_ = v; 6408 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6409 _tmp244_ = tracker_sparql_context_get_variable (_tmp242_, _tmp243_); 6410 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6411 _tmp245_ = _g_object_ref0 (_tmp244_); 6412 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6413 variable = _tmp245_; 6414 #line 677 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6415 _tmp246_ = sql; 6416 #line 677 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6417 _tmp247_ = variable; 6418 #line 677 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6419 _tmp248_ = tracker_sparql_variable_get_sql_expression (_tmp247_); 6420 #line 677 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6421 _tmp249_ = _tmp248_; 6422 #line 677 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6423 g_string_append (_tmp246_, _tmp249_); 6424 #line 678 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6425 _tmp250_ = g_strdup ("tracker_offsets(offsets(\"fts\"),fts_property_names())"); 6426 #line 678 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6427 _g_free0 (self->priv->fts_sql); 6428 #line 678 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6429 self->priv->fts_sql = _tmp250_; 6430 #line 679 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6431 result = TRACKER_PROPERTY_TYPE_STRING; 6432 #line 679 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6433 _g_object_unref0 (variable); 6434 #line 679 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6435 _g_free0 (v); 6436 #line 679 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6437 return result; 6438 #line 6439 "tracker-sparql-expression.c" 6439 } else { 6440 const gchar* _tmp251_; 6441 #line 680 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6442 _tmp251_ = uri; 6443 #line 680 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6444 if (g_strcmp0 (_tmp251_, TRACKER_SPARQL_EXPRESSION_FTS_NS "snippet") == 0) { 6445 #line 6446 "tracker-sparql-expression.c" 6446 gboolean is_var = FALSE; 6447 TrackerSparqlPattern* _tmp252_; 6448 TrackerSparqlPattern* _tmp253_; 6449 gboolean _tmp254_ = FALSE; 6450 gchar* _tmp255_ = NULL; 6451 gchar* v; 6452 TrackerSparqlContext* _tmp256_; 6453 TrackerSparqlContext* _tmp257_; 6454 const gchar* _tmp258_; 6455 TrackerSparqlVariable* _tmp259_ = NULL; 6456 TrackerSparqlVariable* _tmp260_; 6457 TrackerSparqlVariable* variable; 6458 GString* _tmp261_; 6459 GString* fts; 6460 GString* _tmp262_; 6461 gboolean _tmp263_ = FALSE; 6462 gboolean _tmp264_; 6463 gboolean _tmp270_ = FALSE; 6464 gboolean _tmp271_; 6465 GString* _tmp275_; 6466 gboolean _tmp276_ = FALSE; 6467 gboolean _tmp277_; 6468 GString* _tmp281_; 6469 GString* _tmp282_; 6470 const gchar* _tmp283_; 6471 gchar* _tmp284_; 6472 GString* _tmp285_; 6473 TrackerSparqlVariable* _tmp286_; 6474 const gchar* _tmp287_; 6475 const gchar* _tmp288_; 6476 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6477 _tmp252_ = tracker_sparql_expression_get_pattern (self); 6478 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6479 _tmp253_ = _tmp252_; 6480 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6481 _tmp255_ = tracker_sparql_pattern_parse_var_or_term (_tmp253_, NULL, &_tmp254_, &_inner_error_); 6482 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6483 is_var = _tmp254_;
Value stored to 'is_var' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

6484 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6485 v = _tmp255_; 6486 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6487 if (_inner_error_ != NULL) { 6488 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6489 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6490 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6491 g_propagate_error (error, _inner_error_); 6492 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6493 return 0; 6494 #line 6495 "tracker-sparql-expression.c" 6495 } else { 6496 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6497 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6498 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6499 g_clear_error (&_inner_error_); 6500 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6501 return 0; 6502 #line 6503 "tracker-sparql-expression.c" 6503 } 6504 } 6505 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6506 _tmp256_ = tracker_sparql_expression_get_context (self); 6507 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6508 _tmp257_ = _tmp256_; 6509 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6510 _tmp258_ = v; 6511 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6512 _tmp259_ = tracker_sparql_context_get_variable (_tmp257_, _tmp258_); 6513 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6514 _tmp260_ = _g_object_ref0 (_tmp259_); 6515 #line 684 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6516 variable = _tmp260_; 6517 #line 685 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6518 _tmp261_ = g_string_new (""); 6519 #line 685 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6520 fts = _tmp261_; 6521 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6522 _tmp262_ = fts; 6523 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6524 g_string_append_printf (_tmp262_, "snippet(\"fts\""); 6525 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6526 _tmp263_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 6527 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6528 _tmp264_ = _tmp263_; 6529 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6530 if (_inner_error_ != NULL) { 6531 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6532 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6533 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6534 g_propagate_error (error, _inner_error_); 6535 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6536 _g_string_free0 (fts); 6537 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6538 _g_object_unref0 (variable); 6539 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6540 _g_free0 (v); 6541 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6542 return 0; 6543 #line 6544 "tracker-sparql-expression.c" 6544 } else { 6545 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6546 _g_string_free0 (fts); 6547 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6548 _g_object_unref0 (variable); 6549 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6550 _g_free0 (v); 6551 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6552 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6553 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6554 g_clear_error (&_inner_error_); 6555 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6556 return 0; 6557 #line 6558 "tracker-sparql-expression.c" 6558 } 6559 } 6560 #line 690 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6561 if (_tmp264_) { 6562 #line 6563 "tracker-sparql-expression.c" 6563 GString* _tmp265_; 6564 GString* _tmp266_; 6565 GString* _tmp267_; 6566 GString* _tmp268_; 6567 #line 691 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6568 _tmp265_ = fts; 6569 #line 691 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6570 g_string_append (_tmp265_, ", "); 6571 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6572 _tmp266_ = fts; 6573 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6574 tracker_sparql_expression_translate_expression_as_string (self, _tmp266_, &_inner_error_); 6575 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6576 if (_inner_error_ != NULL) { 6577 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6578 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6579 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6580 g_propagate_error (error, _inner_error_); 6581 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6582 _g_string_free0 (fts); 6583 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6584 _g_object_unref0 (variable); 6585 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6586 _g_free0 (v); 6587 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6588 return 0; 6589 #line 6590 "tracker-sparql-expression.c" 6590 } else { 6591 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6592 _g_string_free0 (fts); 6593 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6594 _g_object_unref0 (variable); 6595 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6596 _g_free0 (v); 6597 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6598 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6599 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6600 g_clear_error (&_inner_error_); 6601 #line 692 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6602 return 0; 6603 #line 6604 "tracker-sparql-expression.c" 6604 } 6605 } 6606 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6607 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 6608 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6609 if (_inner_error_ != NULL) { 6610 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6611 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6612 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6613 g_propagate_error (error, _inner_error_); 6614 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6615 _g_string_free0 (fts); 6616 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6617 _g_object_unref0 (variable); 6618 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6619 _g_free0 (v); 6620 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6621 return 0; 6622 #line 6623 "tracker-sparql-expression.c" 6623 } else { 6624 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6625 _g_string_free0 (fts); 6626 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6627 _g_object_unref0 (variable); 6628 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6629 _g_free0 (v); 6630 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6631 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6632 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6633 g_clear_error (&_inner_error_); 6634 #line 695 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6635 return 0; 6636 #line 6637 "tracker-sparql-expression.c" 6637 } 6638 } 6639 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6640 _tmp267_ = fts; 6641 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6642 g_string_append (_tmp267_, ", "); 6643 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6644 _tmp268_ = fts; 6645 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6646 tracker_sparql_expression_translate_expression_as_string (self, _tmp268_, &_inner_error_); 6647 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6648 if (_inner_error_ != NULL) { 6649 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6650 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6651 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6652 g_propagate_error (error, _inner_error_); 6653 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6654 _g_string_free0 (fts); 6655 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6656 _g_object_unref0 (variable); 6657 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6658 _g_free0 (v); 6659 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6660 return 0; 6661 #line 6662 "tracker-sparql-expression.c" 6662 } else { 6663 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6664 _g_string_free0 (fts); 6665 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6666 _g_object_unref0 (variable); 6667 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6668 _g_free0 (v); 6669 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6670 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6671 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6672 g_clear_error (&_inner_error_); 6673 #line 697 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6674 return 0; 6675 #line 6676 "tracker-sparql-expression.c" 6676 } 6677 } 6678 } else { 6679 GString* _tmp269_; 6680 #line 699 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6681 _tmp269_ = fts; 6682 #line 699 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6683 g_string_append (_tmp269_, ",'',''"); 6684 #line 6685 "tracker-sparql-expression.c" 6685 } 6686 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6687 _tmp270_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 6688 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6689 _tmp271_ = _tmp270_; 6690 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6691 if (_inner_error_ != NULL) { 6692 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6693 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6694 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6695 g_propagate_error (error, _inner_error_); 6696 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6697 _g_string_free0 (fts); 6698 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6699 _g_object_unref0 (variable); 6700 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6701 _g_free0 (v); 6702 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6703 return 0; 6704 #line 6705 "tracker-sparql-expression.c" 6705 } else { 6706 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6707 _g_string_free0 (fts); 6708 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6709 _g_object_unref0 (variable); 6710 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6711 _g_free0 (v); 6712 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6713 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6714 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6715 g_clear_error (&_inner_error_); 6716 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6717 return 0; 6718 #line 6719 "tracker-sparql-expression.c" 6719 } 6720 } 6721 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6722 if (_tmp271_) { 6723 #line 6724 "tracker-sparql-expression.c" 6724 GString* _tmp272_; 6725 GString* _tmp273_; 6726 #line 704 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6727 _tmp272_ = fts; 6728 #line 704 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6729 g_string_append (_tmp272_, ", "); 6730 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6731 _tmp273_ = fts; 6732 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6733 tracker_sparql_expression_translate_expression_as_string (self, _tmp273_, &_inner_error_); 6734 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6735 if (_inner_error_ != NULL) { 6736 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6737 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6738 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6739 g_propagate_error (error, _inner_error_); 6740 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6741 _g_string_free0 (fts); 6742 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6743 _g_object_unref0 (variable); 6744 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6745 _g_free0 (v); 6746 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6747 return 0; 6748 #line 6749 "tracker-sparql-expression.c" 6749 } else { 6750 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6751 _g_string_free0 (fts); 6752 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6753 _g_object_unref0 (variable); 6754 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6755 _g_free0 (v); 6756 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6757 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6758 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6759 g_clear_error (&_inner_error_); 6760 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6761 return 0; 6762 #line 6763 "tracker-sparql-expression.c" 6763 } 6764 } 6765 } else { 6766 GString* _tmp274_; 6767 #line 707 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6768 _tmp274_ = fts; 6769 #line 707 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6770 g_string_append (_tmp274_, ", '...'"); 6771 #line 6772 "tracker-sparql-expression.c" 6772 } 6773 #line 711 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6774 _tmp275_ = fts; 6775 #line 711 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6776 g_string_append (_tmp275_, ", -1"); 6777 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6778 _tmp276_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 6779 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6780 _tmp277_ = _tmp276_; 6781 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6782 if (_inner_error_ != NULL) { 6783 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6784 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6785 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6786 g_propagate_error (error, _inner_error_); 6787 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6788 _g_string_free0 (fts); 6789 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6790 _g_object_unref0 (variable); 6791 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6792 _g_free0 (v); 6793 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6794 return 0; 6795 #line 6796 "tracker-sparql-expression.c" 6796 } else { 6797 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6798 _g_string_free0 (fts); 6799 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6800 _g_object_unref0 (variable); 6801 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6802 _g_free0 (v); 6803 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6804 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6805 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6806 g_clear_error (&_inner_error_); 6807 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6808 return 0; 6809 #line 6810 "tracker-sparql-expression.c" 6810 } 6811 } 6812 #line 714 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6813 if (_tmp277_) { 6814 #line 6815 "tracker-sparql-expression.c" 6815 GString* _tmp278_; 6816 GString* _tmp279_; 6817 #line 715 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6818 _tmp278_ = fts; 6819 #line 715 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6820 g_string_append (_tmp278_, ", "); 6821 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6822 _tmp279_ = fts; 6823 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6824 tracker_sparql_expression_translate_expression_as_string (self, _tmp279_, &_inner_error_); 6825 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6826 if (_inner_error_ != NULL) { 6827 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6828 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6829 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6830 g_propagate_error (error, _inner_error_); 6831 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6832 _g_string_free0 (fts); 6833 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6834 _g_object_unref0 (variable); 6835 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6836 _g_free0 (v); 6837 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6838 return 0; 6839 #line 6840 "tracker-sparql-expression.c" 6840 } else { 6841 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6842 _g_string_free0 (fts); 6843 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6844 _g_object_unref0 (variable); 6845 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6846 _g_free0 (v); 6847 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6848 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6849 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6850 g_clear_error (&_inner_error_); 6851 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6852 return 0; 6853 #line 6854 "tracker-sparql-expression.c" 6854 } 6855 } 6856 } else { 6857 GString* _tmp280_; 6858 #line 718 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6859 _tmp280_ = fts; 6860 #line 718 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6861 g_string_append (_tmp280_, ", 5"); 6862 #line 6863 "tracker-sparql-expression.c" 6863 } 6864 #line 721 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6865 _tmp281_ = fts; 6866 #line 721 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6867 g_string_append (_tmp281_, ")"); 6868 #line 723 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6869 _tmp282_ = fts; 6870 #line 723 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6871 _tmp283_ = _tmp282_->str; 6872 #line 723 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6873 _tmp284_ = g_strdup (_tmp283_); 6874 #line 723 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6875 _g_free0 (self->priv->fts_sql); 6876 #line 723 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6877 self->priv->fts_sql = _tmp284_; 6878 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6879 _tmp285_ = sql; 6880 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6881 _tmp286_ = variable; 6882 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6883 _tmp287_ = tracker_sparql_variable_get_sql_expression (_tmp286_); 6884 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6885 _tmp288_ = _tmp287_; 6886 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6887 g_string_append (_tmp285_, _tmp288_); 6888 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6889 result = TRACKER_PROPERTY_TYPE_STRING; 6890 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6891 _g_string_free0 (fts); 6892 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6893 _g_object_unref0 (variable); 6894 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6895 _g_free0 (v); 6896 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6897 return result; 6898 #line 6899 "tracker-sparql-expression.c" 6899 } else { 6900 const gchar* _tmp289_; 6901 #line 726 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6902 _tmp289_ = uri; 6903 #line 726 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6904 if (g_strcmp0 (_tmp289_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "id") == 0) { 6905 #line 6906 "tracker-sparql-expression.c" 6906 GString* _tmp290_; 6907 TrackerPropertyType _tmp291_ = 0; 6908 TrackerPropertyType type; 6909 TrackerPropertyType _tmp292_; 6910 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6911 _tmp290_ = sql; 6912 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6913 _tmp291_ = tracker_sparql_expression_translate_expression (self, _tmp290_, &_inner_error_); 6914 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6915 type = _tmp291_; 6916 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6917 if (_inner_error_ != NULL) { 6918 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6919 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6920 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6921 g_propagate_error (error, _inner_error_); 6922 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6923 return 0; 6924 #line 6925 "tracker-sparql-expression.c" 6925 } else { 6926 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6927 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6928 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6929 g_clear_error (&_inner_error_); 6930 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6931 return 0; 6932 #line 6933 "tracker-sparql-expression.c" 6933 } 6934 } 6935 #line 728 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6936 _tmp292_ = type; 6937 #line 728 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6938 if (_tmp292_ != TRACKER_PROPERTY_TYPE_RESOURCE) { 6939 #line 6940 "tracker-sparql-expression.c" 6940 GError* _tmp293_ = NULL; 6941 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6942 _tmp293_ = tracker_sparql_expression_get_error (self, "expected resource"); 6943 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6944 _inner_error_ = _tmp293_; 6945 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6946 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6947 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6948 g_propagate_error (error, _inner_error_); 6949 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6950 return 0; 6951 #line 6952 "tracker-sparql-expression.c" 6952 } else { 6953 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6954 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6955 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6956 g_clear_error (&_inner_error_); 6957 #line 729 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6958 return 0; 6959 #line 6960 "tracker-sparql-expression.c" 6960 } 6961 } 6962 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6963 result = TRACKER_PROPERTY_TYPE_INTEGER; 6964 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6965 return result; 6966 #line 6967 "tracker-sparql-expression.c" 6967 } else { 6968 const gchar* _tmp294_; 6969 #line 733 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6970 _tmp294_ = uri; 6971 #line 733 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6972 if (g_strcmp0 (_tmp294_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "uri") == 0) { 6973 #line 6974 "tracker-sparql-expression.c" 6974 GString* _tmp295_; 6975 TrackerPropertyType _tmp296_ = 0; 6976 TrackerPropertyType type; 6977 TrackerPropertyType _tmp297_; 6978 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6979 _tmp295_ = sql; 6980 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6981 _tmp296_ = tracker_sparql_expression_translate_expression (self, _tmp295_, &_inner_error_); 6982 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6983 type = _tmp296_; 6984 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6985 if (_inner_error_ != NULL) { 6986 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6987 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6988 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6989 g_propagate_error (error, _inner_error_); 6990 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6991 return 0; 6992 #line 6993 "tracker-sparql-expression.c" 6993 } else { 6994 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6995 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6996 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6997 g_clear_error (&_inner_error_); 6998 #line 734 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 6999 return 0; 7000 #line 7001 "tracker-sparql-expression.c" 7001 } 7002 } 7003 #line 735 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7004 _tmp297_ = type; 7005 #line 735 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7006 if (_tmp297_ != TRACKER_PROPERTY_TYPE_INTEGER) { 7007 #line 7008 "tracker-sparql-expression.c" 7008 GError* _tmp298_ = NULL; 7009 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7010 _tmp298_ = tracker_sparql_expression_get_error (self, "expected integer ID"); 7011 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7012 _inner_error_ = _tmp298_; 7013 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7014 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7015 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7016 g_propagate_error (error, _inner_error_); 7017 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7018 return 0; 7019 #line 7020 "tracker-sparql-expression.c" 7020 } else { 7021 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7022 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7023 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7024 g_clear_error (&_inner_error_); 7025 #line 736 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7026 return 0; 7027 #line 7028 "tracker-sparql-expression.c" 7028 } 7029 } 7030 #line 739 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7031 result = TRACKER_PROPERTY_TYPE_RESOURCE; 7032 #line 739 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7033 return result; 7034 #line 7035 "tracker-sparql-expression.c" 7035 } else { 7036 const gchar* _tmp299_; 7037 #line 740 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7038 _tmp299_ = uri; 7039 #line 740 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7040 if (g_strcmp0 (_tmp299_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "cartesian-distance") == 0) { 7041 #line 7042 "tracker-sparql-expression.c" 7042 GString* _tmp300_; 7043 GString* _tmp301_; 7044 GString* _tmp302_; 7045 GString* _tmp303_; 7046 GString* _tmp304_; 7047 GString* _tmp305_; 7048 GString* _tmp306_; 7049 GString* _tmp307_; 7050 GString* _tmp308_; 7051 #line 741 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7052 _tmp300_ = sql; 7053 #line 741 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7054 g_string_append (_tmp300_, "SparqlCartesianDistance("); 7055 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7056 _tmp301_ = sql; 7057 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7058 tracker_sparql_expression_translate_expression (self, _tmp301_, &_inner_error_); 7059 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7060 if (_inner_error_ != NULL) { 7061 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7062 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7063 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7064 g_propagate_error (error, _inner_error_); 7065 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7066 return 0; 7067 #line 7068 "tracker-sparql-expression.c" 7068 } else { 7069 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7070 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7071 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7072 g_clear_error (&_inner_error_); 7073 #line 742 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7074 return 0; 7075 #line 7076 "tracker-sparql-expression.c" 7076 } 7077 } 7078 #line 743 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7079 _tmp302_ = sql; 7080 #line 743 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7081 g_string_append (_tmp302_, ", "); 7082 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7083 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7084 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7085 if (_inner_error_ != NULL) { 7086 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7087 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7088 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7089 g_propagate_error (error, _inner_error_); 7090 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7091 return 0; 7092 #line 7093 "tracker-sparql-expression.c" 7093 } else { 7094 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7095 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7096 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7097 g_clear_error (&_inner_error_); 7098 #line 744 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7099 return 0; 7100 #line 7101 "tracker-sparql-expression.c" 7101 } 7102 } 7103 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7104 _tmp303_ = sql; 7105 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7106 tracker_sparql_expression_translate_expression (self, _tmp303_, &_inner_error_); 7107 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7108 if (_inner_error_ != NULL) { 7109 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7110 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7111 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7112 g_propagate_error (error, _inner_error_); 7113 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7114 return 0; 7115 #line 7116 "tracker-sparql-expression.c" 7116 } else { 7117 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7118 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7119 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7120 g_clear_error (&_inner_error_); 7121 #line 745 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7122 return 0; 7123 #line 7124 "tracker-sparql-expression.c" 7124 } 7125 } 7126 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7127 _tmp304_ = sql; 7128 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7129 g_string_append (_tmp304_, ", "); 7130 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7131 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7132 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7133 if (_inner_error_ != NULL) { 7134 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7135 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7136 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7137 g_propagate_error (error, _inner_error_); 7138 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7139 return 0; 7140 #line 7141 "tracker-sparql-expression.c" 7141 } else { 7142 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7143 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7144 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7145 g_clear_error (&_inner_error_); 7146 #line 747 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7147 return 0; 7148 #line 7149 "tracker-sparql-expression.c" 7149 } 7150 } 7151 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7152 _tmp305_ = sql; 7153 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7154 tracker_sparql_expression_translate_expression (self, _tmp305_, &_inner_error_); 7155 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7156 if (_inner_error_ != NULL) { 7157 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7158 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7159 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7160 g_propagate_error (error, _inner_error_); 7161 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7162 return 0; 7163 #line 7164 "tracker-sparql-expression.c" 7164 } else { 7165 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7166 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7167 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7168 g_clear_error (&_inner_error_); 7169 #line 748 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7170 return 0; 7171 #line 7172 "tracker-sparql-expression.c" 7172 } 7173 } 7174 #line 749 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7175 _tmp306_ = sql; 7176 #line 749 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7177 g_string_append (_tmp306_, ", "); 7178 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7179 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7180 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7181 if (_inner_error_ != NULL) { 7182 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7183 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7184 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7185 g_propagate_error (error, _inner_error_); 7186 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7187 return 0; 7188 #line 7189 "tracker-sparql-expression.c" 7189 } else { 7190 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7191 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7192 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7193 g_clear_error (&_inner_error_); 7194 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7195 return 0; 7196 #line 7197 "tracker-sparql-expression.c" 7197 } 7198 } 7199 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7200 _tmp307_ = sql; 7201 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7202 tracker_sparql_expression_translate_expression (self, _tmp307_, &_inner_error_); 7203 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7204 if (_inner_error_ != NULL) { 7205 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7206 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7207 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7208 g_propagate_error (error, _inner_error_); 7209 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7210 return 0; 7211 #line 7212 "tracker-sparql-expression.c" 7212 } else { 7213 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7214 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7215 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7216 g_clear_error (&_inner_error_); 7217 #line 751 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7218 return 0; 7219 #line 7220 "tracker-sparql-expression.c" 7220 } 7221 } 7222 #line 752 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7223 _tmp308_ = sql; 7224 #line 752 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7225 g_string_append (_tmp308_, ")"); 7226 #line 754 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7227 result = TRACKER_PROPERTY_TYPE_DOUBLE; 7228 #line 754 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7229 return result; 7230 #line 7231 "tracker-sparql-expression.c" 7231 } else { 7232 const gchar* _tmp309_; 7233 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7234 _tmp309_ = uri; 7235 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7236 if (g_strcmp0 (_tmp309_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "haversine-distance") == 0) { 7237 #line 7238 "tracker-sparql-expression.c" 7238 GString* _tmp310_; 7239 GString* _tmp311_; 7240 GString* _tmp312_; 7241 GString* _tmp313_; 7242 GString* _tmp314_; 7243 GString* _tmp315_; 7244 GString* _tmp316_; 7245 GString* _tmp317_; 7246 GString* _tmp318_; 7247 #line 756 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7248 _tmp310_ = sql; 7249 #line 756 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7250 g_string_append (_tmp310_, "SparqlHaversineDistance("); 7251 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7252 _tmp311_ = sql; 7253 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7254 tracker_sparql_expression_translate_expression (self, _tmp311_, &_inner_error_); 7255 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7256 if (_inner_error_ != NULL) { 7257 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7258 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7259 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7260 g_propagate_error (error, _inner_error_); 7261 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7262 return 0; 7263 #line 7264 "tracker-sparql-expression.c" 7264 } else { 7265 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7266 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7267 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7268 g_clear_error (&_inner_error_); 7269 #line 757 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7270 return 0; 7271 #line 7272 "tracker-sparql-expression.c" 7272 } 7273 } 7274 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7275 _tmp312_ = sql; 7276 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7277 g_string_append (_tmp312_, ", "); 7278 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7279 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7280 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7281 if (_inner_error_ != NULL) { 7282 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7283 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7284 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7285 g_propagate_error (error, _inner_error_); 7286 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7287 return 0; 7288 #line 7289 "tracker-sparql-expression.c" 7289 } else { 7290 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7291 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7292 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7293 g_clear_error (&_inner_error_); 7294 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7295 return 0; 7296 #line 7297 "tracker-sparql-expression.c" 7297 } 7298 } 7299 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7300 _tmp313_ = sql; 7301 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7302 tracker_sparql_expression_translate_expression (self, _tmp313_, &_inner_error_); 7303 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7304 if (_inner_error_ != NULL) { 7305 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7306 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7307 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7308 g_propagate_error (error, _inner_error_); 7309 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7310 return 0; 7311 #line 7312 "tracker-sparql-expression.c" 7312 } else { 7313 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7314 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7315 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7316 g_clear_error (&_inner_error_); 7317 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7318 return 0; 7319 #line 7320 "tracker-sparql-expression.c" 7320 } 7321 } 7322 #line 761 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7323 _tmp314_ = sql; 7324 #line 761 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7325 g_string_append (_tmp314_, ", "); 7326 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7327 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7328 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7329 if (_inner_error_ != NULL) { 7330 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7331 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7332 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7333 g_propagate_error (error, _inner_error_); 7334 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7335 return 0; 7336 #line 7337 "tracker-sparql-expression.c" 7337 } else { 7338 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7339 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7340 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7341 g_clear_error (&_inner_error_); 7342 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7343 return 0; 7344 #line 7345 "tracker-sparql-expression.c" 7345 } 7346 } 7347 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7348 _tmp315_ = sql; 7349 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7350 tracker_sparql_expression_translate_expression (self, _tmp315_, &_inner_error_); 7351 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7352 if (_inner_error_ != NULL) { 7353 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7354 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7355 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7356 g_propagate_error (error, _inner_error_); 7357 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7358 return 0; 7359 #line 7360 "tracker-sparql-expression.c" 7360 } else { 7361 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7362 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7363 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7364 g_clear_error (&_inner_error_); 7365 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7366 return 0; 7367 #line 7368 "tracker-sparql-expression.c" 7368 } 7369 } 7370 #line 764 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7371 _tmp316_ = sql; 7372 #line 764 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7373 g_string_append (_tmp316_, ", "); 7374 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7375 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7376 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7377 if (_inner_error_ != NULL) { 7378 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7379 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7380 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7381 g_propagate_error (error, _inner_error_); 7382 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7383 return 0; 7384 #line 7385 "tracker-sparql-expression.c" 7385 } else { 7386 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7387 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7388 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7389 g_clear_error (&_inner_error_); 7390 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7391 return 0; 7392 #line 7393 "tracker-sparql-expression.c" 7393 } 7394 } 7395 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7396 _tmp317_ = sql; 7397 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7398 tracker_sparql_expression_translate_expression (self, _tmp317_, &_inner_error_); 7399 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7400 if (_inner_error_ != NULL) { 7401 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7402 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7403 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7404 g_propagate_error (error, _inner_error_); 7405 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7406 return 0; 7407 #line 7408 "tracker-sparql-expression.c" 7408 } else { 7409 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7410 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7411 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7412 g_clear_error (&_inner_error_); 7413 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7414 return 0; 7415 #line 7416 "tracker-sparql-expression.c" 7416 } 7417 } 7418 #line 767 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7419 _tmp318_ = sql; 7420 #line 767 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7421 g_string_append (_tmp318_, ")"); 7422 #line 769 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7423 result = TRACKER_PROPERTY_TYPE_DOUBLE; 7424 #line 769 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7425 return result; 7426 #line 7427 "tracker-sparql-expression.c" 7427 } else { 7428 const gchar* _tmp319_; 7429 #line 770 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7430 _tmp319_ = uri; 7431 #line 770 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7432 if (g_strcmp0 (_tmp319_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "coalesce") == 0) { 7433 #line 7434 "tracker-sparql-expression.c" 7434 GString* _tmp320_; 7435 GString* _tmp321_; 7436 GString* _tmp322_; 7437 GString* _tmp323_; 7438 GString* _tmp328_; 7439 #line 771 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7440 _tmp320_ = sql; 7441 #line 771 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7442 g_string_append (_tmp320_, "COALESCE("); 7443 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7444 _tmp321_ = sql; 7445 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7446 tracker_sparql_expression_translate_expression_as_string (self, _tmp321_, &_inner_error_); 7447 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7448 if (_inner_error_ != NULL) { 7449 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7450 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7451 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7452 g_propagate_error (error, _inner_error_); 7453 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7454 return 0; 7455 #line 7456 "tracker-sparql-expression.c" 7456 } else { 7457 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7458 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7459 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7460 g_clear_error (&_inner_error_); 7461 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7462 return 0; 7463 #line 7464 "tracker-sparql-expression.c" 7464 } 7465 } 7466 #line 773 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7467 _tmp322_ = sql; 7468 #line 773 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7469 g_string_append (_tmp322_, ", "); 7470 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7471 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7472 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7473 if (_inner_error_ != NULL) { 7474 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7475 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7476 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7477 g_propagate_error (error, _inner_error_); 7478 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7479 return 0; 7480 #line 7481 "tracker-sparql-expression.c" 7481 } else { 7482 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7483 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7484 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7485 g_clear_error (&_inner_error_); 7486 #line 774 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7487 return 0; 7488 #line 7489 "tracker-sparql-expression.c" 7489 } 7490 } 7491 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7492 _tmp323_ = sql; 7493 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7494 tracker_sparql_expression_translate_expression_as_string (self, _tmp323_, &_inner_error_); 7495 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7496 if (_inner_error_ != NULL) { 7497 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7498 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7499 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7500 g_propagate_error (error, _inner_error_); 7501 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7502 return 0; 7503 #line 7504 "tracker-sparql-expression.c" 7504 } else { 7505 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7506 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7507 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7508 g_clear_error (&_inner_error_); 7509 #line 775 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7510 return 0; 7511 #line 7512 "tracker-sparql-expression.c" 7512 } 7513 } 7514 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7515 while (TRUE) { 7516 #line 7517 "tracker-sparql-expression.c" 7517 gboolean _tmp324_ = FALSE; 7518 gboolean _tmp325_; 7519 GString* _tmp326_; 7520 GString* _tmp327_; 7521 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7522 _tmp324_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7523 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7524 _tmp325_ = _tmp324_; 7525 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7526 if (_inner_error_ != NULL) { 7527 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7528 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7529 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7530 g_propagate_error (error, _inner_error_); 7531 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7532 return 0; 7533 #line 7534 "tracker-sparql-expression.c" 7534 } else { 7535 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7536 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7537 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7538 g_clear_error (&_inner_error_); 7539 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7540 return 0; 7541 #line 7542 "tracker-sparql-expression.c" 7542 } 7543 } 7544 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7545 if (!_tmp325_) { 7546 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7547 break; 7548 #line 7549 "tracker-sparql-expression.c" 7549 } 7550 #line 777 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7551 _tmp326_ = sql; 7552 #line 777 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7553 g_string_append (_tmp326_, ", "); 7554 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7555 _tmp327_ = sql; 7556 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7557 tracker_sparql_expression_translate_expression_as_string (self, _tmp327_, &_inner_error_); 7558 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7559 if (_inner_error_ != NULL) { 7560 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7561 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7562 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7563 g_propagate_error (error, _inner_error_); 7564 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7565 return 0; 7566 #line 7567 "tracker-sparql-expression.c" 7567 } else { 7568 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7569 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7570 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7571 g_clear_error (&_inner_error_); 7572 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7573 return 0; 7574 #line 7575 "tracker-sparql-expression.c" 7575 } 7576 } 7577 } 7578 #line 780 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7579 _tmp328_ = sql; 7580 #line 780 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7581 g_string_append (_tmp328_, ")"); 7582 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7583 result = TRACKER_PROPERTY_TYPE_STRING; 7584 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7585 return result; 7586 #line 7587 "tracker-sparql-expression.c" 7587 } else { 7588 const gchar* _tmp329_; 7589 #line 783 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7590 _tmp329_ = uri; 7591 #line 783 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7592 if (g_strcmp0 (_tmp329_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "uri-is-parent") == 0) { 7593 #line 7594 "tracker-sparql-expression.c" 7594 GString* _tmp330_; 7595 GString* _tmp331_; 7596 GString* _tmp332_; 7597 GString* _tmp333_; 7598 GString* _tmp334_; 7599 #line 784 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7600 _tmp330_ = sql; 7601 #line 784 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7602 g_string_append (_tmp330_, "SparqlUriIsParent("); 7603 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7604 _tmp331_ = sql; 7605 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7606 tracker_sparql_expression_translate_expression_as_string (self, _tmp331_, &_inner_error_); 7607 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7608 if (_inner_error_ != NULL) { 7609 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7610 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7611 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7612 g_propagate_error (error, _inner_error_); 7613 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7614 return 0; 7615 #line 7616 "tracker-sparql-expression.c" 7616 } else { 7617 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7618 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7619 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7620 g_clear_error (&_inner_error_); 7621 #line 785 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7622 return 0; 7623 #line 7624 "tracker-sparql-expression.c" 7624 } 7625 } 7626 #line 786 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7627 _tmp332_ = sql; 7628 #line 786 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7629 g_string_append (_tmp332_, ", "); 7630 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7631 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7632 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7633 if (_inner_error_ != NULL) { 7634 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7635 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7636 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7637 g_propagate_error (error, _inner_error_); 7638 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7639 return 0; 7640 #line 7641 "tracker-sparql-expression.c" 7641 } else { 7642 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7643 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7644 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7645 g_clear_error (&_inner_error_); 7646 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7647 return 0; 7648 #line 7649 "tracker-sparql-expression.c" 7649 } 7650 } 7651 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7652 _tmp333_ = sql; 7653 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7654 tracker_sparql_expression_translate_expression_as_string (self, _tmp333_, &_inner_error_); 7655 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7656 if (_inner_error_ != NULL) { 7657 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7658 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7659 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7660 g_propagate_error (error, _inner_error_); 7661 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7662 return 0; 7663 #line 7664 "tracker-sparql-expression.c" 7664 } else { 7665 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7666 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7667 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7668 g_clear_error (&_inner_error_); 7669 #line 789 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7670 return 0; 7671 #line 7672 "tracker-sparql-expression.c" 7672 } 7673 } 7674 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7675 _tmp334_ = sql; 7676 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7677 g_string_append (_tmp334_, ")"); 7678 #line 792 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7679 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 7680 #line 792 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7681 return result; 7682 #line 7683 "tracker-sparql-expression.c" 7683 } else { 7684 const gchar* _tmp335_; 7685 #line 793 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7686 _tmp335_ = uri; 7687 #line 793 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7688 if (g_strcmp0 (_tmp335_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "uri-is-descendant") == 0) { 7689 #line 7690 "tracker-sparql-expression.c" 7690 GString* _tmp336_; 7691 GString* _tmp337_; 7692 GString* _tmp338_; 7693 GString* _tmp339_; 7694 GString* _tmp344_; 7695 #line 794 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7696 _tmp336_ = sql; 7697 #line 794 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7698 g_string_append (_tmp336_, "SparqlUriIsDescendant("); 7699 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7700 _tmp337_ = sql; 7701 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7702 tracker_sparql_expression_translate_expression_as_string (self, _tmp337_, &_inner_error_); 7703 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7704 if (_inner_error_ != NULL) { 7705 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7706 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7707 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7708 g_propagate_error (error, _inner_error_); 7709 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7710 return 0; 7711 #line 7712 "tracker-sparql-expression.c" 7712 } else { 7713 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7714 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7715 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7716 g_clear_error (&_inner_error_); 7717 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7718 return 0; 7719 #line 7720 "tracker-sparql-expression.c" 7720 } 7721 } 7722 #line 796 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7723 _tmp338_ = sql; 7724 #line 796 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7725 g_string_append (_tmp338_, ", "); 7726 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7727 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7728 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7729 if (_inner_error_ != NULL) { 7730 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7731 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7732 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7733 g_propagate_error (error, _inner_error_); 7734 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7735 return 0; 7736 #line 7737 "tracker-sparql-expression.c" 7737 } else { 7738 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7739 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7740 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7741 g_clear_error (&_inner_error_); 7742 #line 797 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7743 return 0; 7744 #line 7745 "tracker-sparql-expression.c" 7745 } 7746 } 7747 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7748 _tmp339_ = sql; 7749 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7750 tracker_sparql_expression_translate_expression_as_string (self, _tmp339_, &_inner_error_); 7751 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7752 if (_inner_error_ != NULL) { 7753 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7754 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7755 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7756 g_propagate_error (error, _inner_error_); 7757 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7758 return 0; 7759 #line 7760 "tracker-sparql-expression.c" 7760 } else { 7761 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7762 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7763 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7764 g_clear_error (&_inner_error_); 7765 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7766 return 0; 7767 #line 7768 "tracker-sparql-expression.c" 7768 } 7769 } 7770 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7771 while (TRUE) { 7772 #line 7773 "tracker-sparql-expression.c" 7773 gboolean _tmp340_ = FALSE; 7774 gboolean _tmp341_; 7775 GString* _tmp342_; 7776 GString* _tmp343_; 7777 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7778 _tmp340_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7779 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7780 _tmp341_ = _tmp340_; 7781 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7782 if (_inner_error_ != NULL) { 7783 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7784 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7785 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7786 g_propagate_error (error, _inner_error_); 7787 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7788 return 0; 7789 #line 7790 "tracker-sparql-expression.c" 7790 } else { 7791 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7792 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7793 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7794 g_clear_error (&_inner_error_); 7795 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7796 return 0; 7797 #line 7798 "tracker-sparql-expression.c" 7798 } 7799 } 7800 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7801 if (!_tmp341_) { 7802 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7803 break; 7804 #line 7805 "tracker-sparql-expression.c" 7805 } 7806 #line 801 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7807 _tmp342_ = sql; 7808 #line 801 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7809 g_string_append (_tmp342_, ", "); 7810 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7811 _tmp343_ = sql; 7812 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7813 tracker_sparql_expression_translate_expression_as_string (self, _tmp343_, &_inner_error_); 7814 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7815 if (_inner_error_ != NULL) { 7816 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7817 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7818 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7819 g_propagate_error (error, _inner_error_); 7820 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7821 return 0; 7822 #line 7823 "tracker-sparql-expression.c" 7823 } else { 7824 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7825 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7826 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7827 g_clear_error (&_inner_error_); 7828 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7829 return 0; 7830 #line 7831 "tracker-sparql-expression.c" 7831 } 7832 } 7833 } 7834 #line 804 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7835 _tmp344_ = sql; 7836 #line 804 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7837 g_string_append (_tmp344_, ")"); 7838 #line 806 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7839 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 7840 #line 806 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7841 return result; 7842 #line 7843 "tracker-sparql-expression.c" 7843 } else { 7844 const gchar* _tmp345_; 7845 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7846 _tmp345_ = uri; 7847 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7848 if (g_strcmp0 (_tmp345_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "string-from-filename") == 0) { 7849 #line 7850 "tracker-sparql-expression.c" 7850 GString* _tmp346_; 7851 GString* _tmp347_; 7852 GString* _tmp348_; 7853 #line 808 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7854 _tmp346_ = sql; 7855 #line 808 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7856 g_string_append (_tmp346_, "SparqlStringFromFilename("); 7857 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7858 _tmp347_ = sql; 7859 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7860 tracker_sparql_expression_translate_expression_as_string (self, _tmp347_, &_inner_error_); 7861 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7862 if (_inner_error_ != NULL) { 7863 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7864 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7865 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7866 g_propagate_error (error, _inner_error_); 7867 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7868 return 0; 7869 #line 7870 "tracker-sparql-expression.c" 7870 } else { 7871 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7872 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7873 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7874 g_clear_error (&_inner_error_); 7875 #line 809 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7876 return 0; 7877 #line 7878 "tracker-sparql-expression.c" 7878 } 7879 } 7880 #line 810 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7881 _tmp348_ = sql; 7882 #line 810 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7883 g_string_append (_tmp348_, ")"); 7884 #line 812 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7885 result = TRACKER_PROPERTY_TYPE_STRING; 7886 #line 812 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7887 return result; 7888 #line 7889 "tracker-sparql-expression.c" 7889 } else { 7890 const gchar* _tmp349_; 7891 TrackerProperty* _tmp350_ = NULL; 7892 TrackerProperty* _tmp351_; 7893 TrackerProperty* prop; 7894 TrackerProperty* _tmp352_; 7895 GString* _tmp354_; 7896 GString* expr; 7897 GString* _tmp355_; 7898 gchar* _tmp356_; 7899 gchar* value_separator; 7900 gchar* graph_separator; 7901 gboolean _tmp357_ = FALSE; 7902 gboolean _tmp358_; 7903 TrackerProperty* _tmp365_; 7904 gboolean _tmp366_; 7905 gboolean _tmp367_; 7906 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7907 _tmp349_ = uri; 7908 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7909 _tmp350_ = tracker_ontologies_get_property_by_uri (_tmp349_); 7910 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7911 _tmp351_ = _g_object_ref0 (_tmp350_); 7912 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7913 prop = _tmp351_; 7914 #line 816 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7915 _tmp352_ = prop; 7916 #line 816 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7917 if (_tmp352_ == NULL) { 7918 #line 7919 "tracker-sparql-expression.c" 7919 GError* _tmp353_ = NULL; 7920 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7921 _tmp353_ = tracker_sparql_expression_get_error (self, "Unknown function"); 7922 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7923 _inner_error_ = _tmp353_; 7924 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7925 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7926 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7927 g_propagate_error (error, _inner_error_); 7928 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7929 _g_object_unref0 (prop); 7930 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7931 return 0; 7932 #line 7933 "tracker-sparql-expression.c" 7933 } else { 7934 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7935 _g_object_unref0 (prop); 7936 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7937 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7938 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7939 g_clear_error (&_inner_error_); 7940 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7941 return 0; 7942 #line 7943 "tracker-sparql-expression.c" 7943 } 7944 } 7945 #line 820 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7946 _tmp354_ = g_string_new (""); 7947 #line 820 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7948 expr = _tmp354_; 7949 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7950 _tmp355_ = expr; 7951 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7952 tracker_sparql_expression_translate_expression (self, _tmp355_, &_inner_error_); 7953 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7954 if (_inner_error_ != NULL) { 7955 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7956 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7957 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7958 g_propagate_error (error, _inner_error_); 7959 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7960 _g_string_free0 (expr); 7961 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7962 _g_object_unref0 (prop); 7963 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7964 return 0; 7965 #line 7966 "tracker-sparql-expression.c" 7966 } else { 7967 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7968 _g_string_free0 (expr); 7969 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7970 _g_object_unref0 (prop); 7971 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7972 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7973 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7974 g_clear_error (&_inner_error_); 7975 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7976 return 0; 7977 #line 7978 "tracker-sparql-expression.c" 7978 } 7979 } 7980 #line 823 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7981 _tmp356_ = g_strdup (","); 7982 #line 823 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7983 value_separator = _tmp356_; 7984 #line 824 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7985 graph_separator = NULL; 7986 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7987 _tmp357_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 7988 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7989 _tmp358_ = _tmp357_; 7990 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7991 if (_inner_error_ != NULL) { 7992 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7993 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7994 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7995 g_propagate_error (error, _inner_error_); 7996 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7997 _g_free0 (graph_separator); 7998 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 7999 _g_free0 (value_separator); 8000 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8001 _g_string_free0 (expr); 8002 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8003 _g_object_unref0 (prop); 8004 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8005 return 0; 8006 #line 8007 "tracker-sparql-expression.c" 8007 } else { 8008 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8009 _g_free0 (graph_separator); 8010 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8011 _g_free0 (value_separator); 8012 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8013 _g_string_free0 (expr); 8014 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8015 _g_object_unref0 (prop); 8016 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8017 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8018 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8019 g_clear_error (&_inner_error_); 8020 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8021 return 0; 8022 #line 8023 "tracker-sparql-expression.c" 8023 } 8024 } 8025 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8026 if (_tmp358_) { 8027 #line 8028 "tracker-sparql-expression.c" 8028 gchar* _tmp359_ = NULL; 8029 gchar* _tmp360_; 8030 gboolean _tmp361_ = FALSE; 8031 gboolean _tmp362_; 8032 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8033 _tmp359_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 8034 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8035 _tmp360_ = _tmp359_; 8036 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8037 if (_inner_error_ != NULL) { 8038 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8039 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8040 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8041 g_propagate_error (error, _inner_error_); 8042 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8043 _g_free0 (graph_separator); 8044 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8045 _g_free0 (value_separator); 8046 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8047 _g_string_free0 (expr); 8048 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8049 _g_object_unref0 (prop); 8050 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8051 return 0; 8052 #line 8053 "tracker-sparql-expression.c" 8053 } else { 8054 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8055 _g_free0 (graph_separator); 8056 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8057 _g_free0 (value_separator); 8058 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8059 _g_string_free0 (expr); 8060 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8061 _g_object_unref0 (prop); 8062 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8063 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8064 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8065 g_clear_error (&_inner_error_); 8066 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8067 return 0; 8068 #line 8069 "tracker-sparql-expression.c" 8069 } 8070 } 8071 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8072 _g_free0 (value_separator); 8073 #line 827 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8074 value_separator = _tmp360_; 8075 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8076 _tmp361_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 8077 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8078 _tmp362_ = _tmp361_; 8079 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8080 if (_inner_error_ != NULL) { 8081 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8082 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8083 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8084 g_propagate_error (error, _inner_error_); 8085 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8086 _g_free0 (graph_separator); 8087 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8088 _g_free0 (value_separator); 8089 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8090 _g_string_free0 (expr); 8091 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8092 _g_object_unref0 (prop); 8093 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8094 return 0; 8095 #line 8096 "tracker-sparql-expression.c" 8096 } else { 8097 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8098 _g_free0 (graph_separator); 8099 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8100 _g_free0 (value_separator); 8101 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8102 _g_string_free0 (expr); 8103 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8104 _g_object_unref0 (prop); 8105 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8106 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8107 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8108 g_clear_error (&_inner_error_); 8109 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8110 return 0; 8111 #line 8112 "tracker-sparql-expression.c" 8112 } 8113 } 8114 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8115 if (_tmp362_) { 8116 #line 8117 "tracker-sparql-expression.c" 8117 gchar* _tmp363_ = NULL; 8118 gchar* _tmp364_; 8119 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8120 _tmp363_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 8121 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8122 _tmp364_ = _tmp363_; 8123 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8124 if (_inner_error_ != NULL) { 8125 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8126 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8127 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8128 g_propagate_error (error, _inner_error_); 8129 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8130 _g_free0 (graph_separator); 8131 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8132 _g_free0 (value_separator); 8133 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8134 _g_string_free0 (expr); 8135 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8136 _g_object_unref0 (prop); 8137 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8138 return 0; 8139 #line 8140 "tracker-sparql-expression.c" 8140 } else { 8141 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8142 _g_free0 (graph_separator); 8143 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8144 _g_free0 (value_separator); 8145 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8146 _g_string_free0 (expr); 8147 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8148 _g_object_unref0 (prop); 8149 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8150 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8151 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8152 g_clear_error (&_inner_error_); 8153 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8154 return 0; 8155 #line 8156 "tracker-sparql-expression.c" 8156 } 8157 } 8158 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8159 _g_free0 (graph_separator); 8160 #line 830 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8161 graph_separator = _tmp364_; 8162 #line 8163 "tracker-sparql-expression.c" 8163 } 8164 } 8165 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8166 _tmp365_ = prop; 8167 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8168 _tmp366_ = tracker_property_get_multiple_values (_tmp365_); 8169 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8170 _tmp367_ = _tmp366_; 8171 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8172 if (_tmp367_) { 8173 #line 8174 "tracker-sparql-expression.c" 8174 GString* _tmp368_; 8175 GString* _tmp369_; 8176 gssize _tmp370_; 8177 glong begin; 8178 GString* _tmp371_; 8179 TrackerProperty* _tmp372_; 8180 const gchar* _tmp373_; 8181 const gchar* _tmp374_; 8182 GString* _tmp375_; 8183 TrackerProperty* _tmp376_; 8184 TrackerPropertyType _tmp377_; 8185 TrackerPropertyType _tmp378_; 8186 glong _tmp379_; 8187 const gchar* _tmp380_; 8188 GString* _tmp388_; 8189 const gchar* _tmp389_; 8190 gchar* _tmp390_ = NULL; 8191 gchar* _tmp391_; 8192 GString* _tmp392_; 8193 TrackerProperty* _tmp393_; 8194 const gchar* _tmp394_; 8195 const gchar* _tmp395_; 8196 GString* _tmp396_; 8197 const gchar* _tmp397_; 8198 #line 836 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8199 _tmp368_ = sql; 8200 #line 836 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8201 g_string_append (_tmp368_, "(SELECT GROUP_CONCAT("); 8202 #line 837 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8203 _tmp369_ = sql; 8204 #line 837 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8205 _tmp370_ = _tmp369_->len; 8206 #line 837 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8207 begin = (glong) _tmp370_; 8208 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8209 _tmp371_ = sql; 8210 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8211 _tmp372_ = prop; 8212 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8213 _tmp373_ = tracker_property_get_name (_tmp372_); 8214 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8215 _tmp374_ = _tmp373_; 8216 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8217 g_string_append_printf (_tmp371_, "\"%s\"", _tmp374_); 8218 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8219 _tmp375_ = sql; 8220 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8221 _tmp376_ = prop; 8222 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8223 _tmp377_ = tracker_property_get_data_type (_tmp376_); 8224 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8225 _tmp378_ = _tmp377_; 8226 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8227 _tmp379_ = begin; 8228 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8229 tracker_sparql_expression_convert_expression_to_string (_tmp375_, _tmp378_, _tmp379_); 8230 #line 840 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8231 _tmp380_ = graph_separator; 8232 #line 840 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8233 if (_tmp380_ != NULL) { 8234 #line 8235 "tracker-sparql-expression.c" 8235 GString* _tmp381_; 8236 const gchar* _tmp382_; 8237 gchar* _tmp383_ = NULL; 8238 gchar* _tmp384_; 8239 TrackerProperty* _tmp385_; 8240 const gchar* _tmp386_; 8241 const gchar* _tmp387_; 8242 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8243 _tmp381_ = sql; 8244 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8245 _tmp382_ = graph_separator; 8246 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8247 _tmp383_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp382_); 8248 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8249 _tmp384_ = _tmp383_; 8250 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8251 _tmp385_ = prop; 8252 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8253 _tmp386_ = tracker_property_get_name (_tmp385_); 8254 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8255 _tmp387_ = _tmp386_; 8256 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8257 g_string_append_printf (_tmp381_, " || %s || COALESCE((SELECT Uri FROM Resource WHERE ID = \"%s:graph\")," \ 8258 " '')", _tmp384_, _tmp387_); 8259 #line 841 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8260 _g_free0 (_tmp384_); 8261 #line 8261 "tracker-sparql-expression.c" 8262 } 8263 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8264 _tmp388_ = sql; 8265 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8266 _tmp389_ = value_separator; 8267 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8268 _tmp390_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp389_); 8269 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8270 _tmp391_ = _tmp390_; 8271 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8272 g_string_append_printf (_tmp388_, ",%s)", _tmp391_); 8273 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8274 _g_free0 (_tmp391_); 8275 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8276 _tmp392_ = sql; 8277 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8278 _tmp393_ = prop; 8279 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8280 _tmp394_ = tracker_property_get_table_name (_tmp393_); 8281 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8282 _tmp395_ = _tmp394_; 8283 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8284 _tmp396_ = expr; 8285 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8286 _tmp397_ = _tmp396_->str; 8287 #line 844 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8288 g_string_append_printf (_tmp392_, " FROM \"%s\" WHERE ID = %s)", _tmp395_, _tmp397_); 8289 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8290 result = TRACKER_PROPERTY_TYPE_STRING; 8291 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8292 _g_free0 (graph_separator); 8293 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8294 _g_free0 (value_separator); 8295 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8296 _g_string_free0 (expr); 8297 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8298 _g_object_unref0 (prop); 8299 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8300 return result; 8301 #line 8301 "tracker-sparql-expression.c" 8302 } else { 8303 const gchar* _tmp398_; 8304 #line 849 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8305 _tmp398_ = graph_separator; 8306 #line 849 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8307 if (_tmp398_ == NULL) { 8308 #line 8308 "tracker-sparql-expression.c" 8309 GString* _tmp399_; 8310 TrackerProperty* _tmp400_; 8311 const gchar* _tmp401_; 8312 const gchar* _tmp402_; 8313 TrackerProperty* _tmp403_; 8314 const gchar* _tmp404_; 8315 const gchar* _tmp405_; 8316 GString* _tmp406_; 8317 const gchar* _tmp407_; 8318 TrackerProperty* _tmp408_; 8319 TrackerPropertyType _tmp409_; 8320 TrackerPropertyType _tmp410_; 8321 TrackerProperty* _tmp412_; 8322 TrackerPropertyType _tmp413_; 8323 TrackerPropertyType _tmp414_; 8324 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8325 _tmp399_ = sql; 8326 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8327 _tmp400_ = prop; 8328 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8329 _tmp401_ = tracker_property_get_name (_tmp400_); 8330 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8331 _tmp402_ = _tmp401_; 8332 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8333 _tmp403_ = prop; 8334 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8335 _tmp404_ = tracker_property_get_table_name (_tmp403_); 8336 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8337 _tmp405_ = _tmp404_; 8338 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8339 _tmp406_ = expr; 8340 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8341 _tmp407_ = _tmp406_->str; 8342 #line 850 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8343 g_string_append_printf (_tmp399_, "(SELECT \"%s\" FROM \"%s\" WHERE ID = %s)", _tmp402_, _tmp405_, _tmp407_); 8344 #line 852 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8345 _tmp408_ = prop; 8346 #line 852 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8347 _tmp409_ = tracker_property_get_data_type (_tmp408_); 8348 #line 852 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8349 _tmp410_ = _tmp409_; 8350 #line 852 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8351 if (_tmp410_ == TRACKER_PROPERTY_TYPE_STRING) { 8352 #line 8352 "tracker-sparql-expression.c" 8353 GString* _tmp411_; 8354 #line 853 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8355 _tmp411_ = sql; 8356 #line 853 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8357 tracker_sparql_expression_append_collate (self, _tmp411_); 8358 #line 8358 "tracker-sparql-expression.c" 8359 } 8360 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8361 _tmp412_ = prop; 8362 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8363 _tmp413_ = tracker_property_get_data_type (_tmp412_); 8364 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8365 _tmp414_ = _tmp413_; 8366 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8367 result = _tmp414_; 8368 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8369 _g_free0 (graph_separator); 8370 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8371 _g_free0 (value_separator); 8372 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8373 _g_string_free0 (expr); 8374 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8375 _g_object_unref0 (prop); 8376 #line 856 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8377 return result; 8378 #line 8378 "tracker-sparql-expression.c" 8379 } else { 8380 GString* _tmp415_; 8381 GString* _tmp416_; 8382 gssize _tmp417_; 8383 glong begin; 8384 GString* _tmp418_; 8385 TrackerProperty* _tmp419_; 8386 const gchar* _tmp420_; 8387 const gchar* _tmp421_; 8388 GString* _tmp422_; 8389 TrackerProperty* _tmp423_; 8390 TrackerPropertyType _tmp424_; 8391 TrackerPropertyType _tmp425_; 8392 glong _tmp426_; 8393 GString* _tmp427_; 8394 const gchar* _tmp428_; 8395 gchar* _tmp429_ = NULL; 8396 gchar* _tmp430_; 8397 TrackerProperty* _tmp431_; 8398 const gchar* _tmp432_; 8399 const gchar* _tmp433_; 8400 GString* _tmp434_; 8401 TrackerProperty* _tmp435_; 8402 const gchar* _tmp436_; 8403 const gchar* _tmp437_; 8404 GString* _tmp438_; 8405 const gchar* _tmp439_; 8406 #line 858 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8407 _tmp415_ = sql; 8408 #line 858 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8409 g_string_append (_tmp415_, "(SELECT "); 8410 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8411 _tmp416_ = sql; 8412 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8413 _tmp417_ = _tmp416_->len; 8414 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8415 begin = (glong) _tmp417_; 8416 #line 860 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8417 _tmp418_ = sql; 8418 #line 860 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8419 _tmp419_ = prop; 8420 #line 860 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8421 _tmp420_ = tracker_property_get_name (_tmp419_); 8422 #line 860 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8423 _tmp421_ = _tmp420_; 8424 #line 860 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8425 g_string_append_printf (_tmp418_, "\"%s\"", _tmp421_); 8426 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8427 _tmp422_ = sql; 8428 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8429 _tmp423_ = prop; 8430 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8431 _tmp424_ = tracker_property_get_data_type (_tmp423_); 8432 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8433 _tmp425_ = _tmp424_; 8434 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8435 _tmp426_ = begin; 8436 #line 861 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8437 tracker_sparql_expression_convert_expression_to_string (_tmp422_, _tmp425_, _tmp426_); 8438 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8439 _tmp427_ = sql; 8440 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8441 _tmp428_ = graph_separator; 8442 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8443 _tmp429_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp428_); 8444 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8445 _tmp430_ = _tmp429_; 8446 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8447 _tmp431_ = prop; 8448 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8449 _tmp432_ = tracker_property_get_name (_tmp431_); 8450 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8451 _tmp433_ = _tmp432_; 8452 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8453 g_string_append_printf (_tmp427_, " || %s || COALESCE((SELECT Uri FROM Resource WHERE ID = \"%s:graph\")," \ 8454 " '')", _tmp430_, _tmp433_); 8455 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8456 _g_free0 (_tmp430_); 8457 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8458 _tmp434_ = sql; 8459 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8460 _tmp435_ = prop; 8461 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8462 _tmp436_ = tracker_property_get_table_name (_tmp435_); 8463 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8464 _tmp437_ = _tmp436_; 8465 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8466 _tmp438_ = expr; 8467 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8468 _tmp439_ = _tmp438_->str; 8469 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8470 g_string_append_printf (_tmp434_, " FROM \"%s\" WHERE ID = %s)", _tmp437_, _tmp439_); 8471 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8472 result = TRACKER_PROPERTY_TYPE_STRING; 8473 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8474 _g_free0 (graph_separator); 8475 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8476 _g_free0 (value_separator); 8477 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8478 _g_string_free0 (expr); 8479 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8480 _g_object_unref0 (prop); 8481 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8482 return result; 8483 #line 8482 "tracker-sparql-expression.c" 8484 } 8485 } 8486 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8487 _g_free0 (graph_separator); 8488 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8489 _g_free0 (value_separator); 8490 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8491 _g_string_free0 (expr); 8492 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8493 _g_object_unref0 (prop); 8494 #line 8493 "tracker-sparql-expression.c" 8495 } 8496 } 8497 } 8498 } 8499 } 8500 } 8501 } 8502 } 8503 } 8504 } 8505 } 8506 } 8507 } 8508 } 8509 } 8510 } 8511 } 8512 } 8513 } 8514 } 8515 } 8516 } 8517 } 8518 } 8519 } 8520 } 8521 } 8522 } 8523 } 8524 } 8525 } 8526 8527 8528 static TrackerPropertyType tracker_sparql_expression_parse_type_uri (TrackerSparqlExpression* self, GError** error) { 8529 TrackerPropertyType result = 0; 8530 gchar* type_iri = NULL; 8531 TrackerPropertyType type = 0; 8532 gboolean _tmp0_ = FALSE; 8533 gboolean _tmp1_; 8534 const gchar* _tmp23_; 8535 GError * _inner_error_ = NULL; 8536 #line 871 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8537 g_return_val_if_fail (self != NULL, 0); 8538 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8539 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_IRI_REF, &_inner_error_); 8540 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8541 _tmp1_ = _tmp0_; 8542 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8543 if (_inner_error_ != NULL) { 8544 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8545 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8546 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8547 g_propagate_error (error, _inner_error_); 8548 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8549 _g_free0 (type_iri); 8550 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8551 return 0; 8552 #line 8551 "tracker-sparql-expression.c" 8553 } else { 8554 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8555 _g_free0 (type_iri); 8556 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8557 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8558 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8559 g_clear_error (&_inner_error_); 8560 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8561 return 0; 8562 #line 8561 "tracker-sparql-expression.c" 8563 } 8564 } 8565 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8566 if (_tmp1_) { 8567 #line 8566 "tracker-sparql-expression.c" 8568 gchar* _tmp2_ = NULL; 8569 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8570 _tmp2_ = tracker_sparql_expression_get_last_string (self, 1); 8571 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8572 _g_free0 (type_iri); 8573 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8574 type_iri = _tmp2_; 8575 #line 8574 "tracker-sparql-expression.c" 8576 } else { 8577 gboolean _tmp3_ = FALSE; 8578 gboolean _tmp4_; 8579 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8580 _tmp3_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX, &_inner_error_); 8581 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8582 _tmp4_ = _tmp3_; 8583 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8584 if (_inner_error_ != NULL) { 8585 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8586 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8587 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8588 g_propagate_error (error, _inner_error_); 8589 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8590 _g_free0 (type_iri); 8591 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8592 return 0; 8593 #line 8592 "tracker-sparql-expression.c" 8594 } else { 8595 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8596 _g_free0 (type_iri); 8597 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8598 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8599 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8600 g_clear_error (&_inner_error_); 8601 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8602 return 0; 8603 #line 8602 "tracker-sparql-expression.c" 8604 } 8605 } 8606 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8607 if (_tmp4_) { 8608 #line 8607 "tracker-sparql-expression.c" 8609 gchar* _tmp5_ = NULL; 8610 gchar* ns; 8611 TrackerSparqlQuery* _tmp6_; 8612 const gchar* _tmp7_; 8613 gchar* _tmp8_ = NULL; 8614 gchar* _tmp9_; 8615 gchar* _tmp10_ = NULL; 8616 gchar* _tmp11_; 8617 gchar* _tmp12_ = NULL; 8618 gchar* _tmp13_; 8619 gchar* _tmp14_; 8620 #line 878 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8621 _tmp5_ = tracker_sparql_expression_get_last_string (self, 0); 8622 #line 878 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8623 ns = _tmp5_; 8624 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8625 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 8626 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8627 if (_inner_error_ != NULL) { 8628 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8629 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8630 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8631 g_propagate_error (error, _inner_error_); 8632 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8633 _g_free0 (ns); 8634 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8635 _g_free0 (type_iri); 8636 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8637 return 0; 8638 #line 8637 "tracker-sparql-expression.c" 8639 } else { 8640 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8641 _g_free0 (ns); 8642 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8643 _g_free0 (type_iri); 8644 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8645 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8646 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8647 g_clear_error (&_inner_error_); 8648 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8649 return 0; 8650 #line 8649 "tracker-sparql-expression.c" 8651 } 8652 } 8653 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8654 _tmp6_ = self->priv->query; 8655 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8656 _tmp7_ = ns; 8657 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8658 _tmp8_ = tracker_sparql_expression_get_last_string (self, 0); 8659 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8660 _tmp9_ = _tmp8_; 8661 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8662 _tmp10_ = string_substring (_tmp9_, (glong) 1, (glong) (-1)); 8663 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8664 _tmp11_ = _tmp10_; 8665 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8666 _tmp12_ = tracker_sparql_query_resolve_prefixed_name (_tmp6_, _tmp7_, _tmp11_, &_inner_error_); 8667 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8668 _tmp13_ = _tmp12_; 8669 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8670 _g_free0 (_tmp11_); 8671 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8672 _g_free0 (_tmp9_); 8673 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8674 _tmp14_ = _tmp13_; 8675 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8676 if (_inner_error_ != NULL) { 8677 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8678 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8679 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8680 g_propagate_error (error, _inner_error_); 8681 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8682 _g_free0 (ns); 8683 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8684 _g_free0 (type_iri); 8685 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8686 return 0; 8687 #line 8686 "tracker-sparql-expression.c" 8688 } else { 8689 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8690 _g_free0 (ns); 8691 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8692 _g_free0 (type_iri); 8693 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8694 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8695 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8696 g_clear_error (&_inner_error_); 8697 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8698 return 0; 8699 #line 8698 "tracker-sparql-expression.c" 8700 } 8701 } 8702 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8703 _g_free0 (type_iri); 8704 #line 880 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8705 type_iri = _tmp14_; 8706 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8707 _g_free0 (ns); 8708 #line 8707 "tracker-sparql-expression.c" 8709 } else { 8710 TrackerSparqlQuery* _tmp15_; 8711 gchar* _tmp16_ = NULL; 8712 gchar* _tmp17_; 8713 gchar* _tmp18_ = NULL; 8714 gchar* _tmp19_; 8715 gchar* _tmp20_ = NULL; 8716 gchar* _tmp21_; 8717 gchar* _tmp22_; 8718 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8719 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 8720 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8721 if (_inner_error_ != NULL) { 8722 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8723 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8724 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8725 g_propagate_error (error, _inner_error_); 8726 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8727 _g_free0 (type_iri); 8728 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8729 return 0; 8730 #line 8729 "tracker-sparql-expression.c" 8731 } else { 8732 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8733 _g_free0 (type_iri); 8734 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8735 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8736 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8737 g_clear_error (&_inner_error_); 8738 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8739 return 0; 8740 #line 8739 "tracker-sparql-expression.c" 8741 } 8742 } 8743 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8744 _tmp15_ = self->priv->query; 8745 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8746 _tmp16_ = tracker_sparql_expression_get_last_string (self, 0); 8747 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8748 _tmp17_ = _tmp16_; 8749 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8750 _tmp18_ = string_substring (_tmp17_, (glong) 1, (glong) (-1)); 8751 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8752 _tmp19_ = _tmp18_; 8753 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8754 _tmp20_ = tracker_sparql_query_resolve_prefixed_name (_tmp15_, "", _tmp19_, &_inner_error_); 8755 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8756 _tmp21_ = _tmp20_; 8757 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8758 _g_free0 (_tmp19_); 8759 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8760 _g_free0 (_tmp17_); 8761 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8762 _tmp22_ = _tmp21_; 8763 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8764 if (_inner_error_ != NULL) { 8765 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8766 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8767 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8768 g_propagate_error (error, _inner_error_); 8769 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8770 _g_free0 (type_iri); 8771 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8772 return 0; 8773 #line 8772 "tracker-sparql-expression.c" 8774 } else { 8775 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8776 _g_free0 (type_iri); 8777 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8778 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8779 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8780 g_clear_error (&_inner_error_); 8781 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8782 return 0; 8783 #line 8782 "tracker-sparql-expression.c" 8784 } 8785 } 8786 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8787 _g_free0 (type_iri); 8788 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8789 type_iri = _tmp22_; 8790 #line 8789 "tracker-sparql-expression.c" 8791 } 8792 } 8793 #line 886 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8794 _tmp23_ = type_iri; 8795 #line 886 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8796 if (g_strcmp0 (_tmp23_, TRACKER_SPARQL_EXPRESSION_XSD_NS "boolean") == 0) { 8797 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8798 type = TRACKER_PROPERTY_TYPE_BOOLEAN; 8799 #line 8798 "tracker-sparql-expression.c" 8800 } else { 8801 gboolean _tmp24_ = FALSE; 8802 gboolean _tmp25_ = FALSE; 8803 gboolean _tmp26_ = FALSE; 8804 gboolean _tmp27_ = FALSE; 8805 gboolean _tmp28_ = FALSE; 8806 gboolean _tmp29_ = FALSE; 8807 gboolean _tmp30_ = FALSE; 8808 gboolean _tmp31_ = FALSE; 8809 gboolean _tmp32_ = FALSE; 8810 gboolean _tmp33_ = FALSE; 8811 gboolean _tmp34_ = FALSE; 8812 gboolean _tmp35_ = FALSE; 8813 const gchar* _tmp36_; 8814 gboolean _tmp38_; 8815 gboolean _tmp40_; 8816 gboolean _tmp42_; 8817 gboolean _tmp44_; 8818 gboolean _tmp46_; 8819 gboolean _tmp48_; 8820 gboolean _tmp50_; 8821 gboolean _tmp52_; 8822 gboolean _tmp54_; 8823 gboolean _tmp56_; 8824 gboolean _tmp58_; 8825 gboolean _tmp60_; 8826 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8827 _tmp36_ = type_iri; 8828 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8829 if (g_strcmp0 (_tmp36_, TRACKER_SPARQL_EXPRESSION_XSD_NS "integer") == 0) { 8830 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8831 _tmp35_ = TRUE; 8832 #line 8831 "tracker-sparql-expression.c" 8833 } else { 8834 const gchar* _tmp37_; 8835 #line 889 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8836 _tmp37_ = type_iri; 8837 #line 889 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8838 _tmp35_ = g_strcmp0 (_tmp37_, TRACKER_SPARQL_EXPRESSION_XSD_NS "nonPositiveInteger") == 0; 8839 #line 8838 "tracker-sparql-expression.c" 8840 } 8841 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8842 _tmp38_ = _tmp35_; 8843 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8844 if (_tmp38_) { 8845 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8846 _tmp34_ = TRUE; 8847 #line 8846 "tracker-sparql-expression.c" 8848 } else { 8849 const gchar* _tmp39_; 8850 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8851 _tmp39_ = type_iri; 8852 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8853 _tmp34_ = g_strcmp0 (_tmp39_, TRACKER_SPARQL_EXPRESSION_XSD_NS "negativeInteger") == 0; 8854 #line 8853 "tracker-sparql-expression.c" 8855 } 8856 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8857 _tmp40_ = _tmp34_; 8858 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8859 if (_tmp40_) { 8860 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8861 _tmp33_ = TRUE; 8862 #line 8861 "tracker-sparql-expression.c" 8863 } else { 8864 const gchar* _tmp41_; 8865 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8866 _tmp41_ = type_iri; 8867 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8868 _tmp33_ = g_strcmp0 (_tmp41_, TRACKER_SPARQL_EXPRESSION_XSD_NS "long") == 0; 8869 #line 8868 "tracker-sparql-expression.c" 8870 } 8871 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8872 _tmp42_ = _tmp33_; 8873 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8874 if (_tmp42_) { 8875 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8876 _tmp32_ = TRUE; 8877 #line 8876 "tracker-sparql-expression.c" 8878 } else { 8879 const gchar* _tmp43_; 8880 #line 892 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8881 _tmp43_ = type_iri; 8882 #line 892 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8883 _tmp32_ = g_strcmp0 (_tmp43_, TRACKER_SPARQL_EXPRESSION_XSD_NS "int") == 0; 8884 #line 8883 "tracker-sparql-expression.c" 8885 } 8886 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8887 _tmp44_ = _tmp32_; 8888 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8889 if (_tmp44_) { 8890 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8891 _tmp31_ = TRUE; 8892 #line 8891 "tracker-sparql-expression.c" 8893 } else { 8894 const gchar* _tmp45_; 8895 #line 893 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8896 _tmp45_ = type_iri; 8897 #line 893 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8898 _tmp31_ = g_strcmp0 (_tmp45_, TRACKER_SPARQL_EXPRESSION_XSD_NS "short") == 0; 8899 #line 8898 "tracker-sparql-expression.c" 8900 } 8901 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8902 _tmp46_ = _tmp31_; 8903 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8904 if (_tmp46_) { 8905 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8906 _tmp30_ = TRUE; 8907 #line 8906 "tracker-sparql-expression.c" 8908 } else { 8909 const gchar* _tmp47_; 8910 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8911 _tmp47_ = type_iri; 8912 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8913 _tmp30_ = g_strcmp0 (_tmp47_, TRACKER_SPARQL_EXPRESSION_XSD_NS "byte") == 0; 8914 #line 8913 "tracker-sparql-expression.c" 8915 } 8916 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8917 _tmp48_ = _tmp30_; 8918 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8919 if (_tmp48_) { 8920 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8921 _tmp29_ = TRUE; 8922 #line 8921 "tracker-sparql-expression.c" 8923 } else { 8924 const gchar* _tmp49_; 8925 #line 895 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8926 _tmp49_ = type_iri; 8927 #line 895 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8928 _tmp29_ = g_strcmp0 (_tmp49_, TRACKER_SPARQL_EXPRESSION_XSD_NS "nonNegativeInteger") == 0; 8929 #line 8928 "tracker-sparql-expression.c" 8930 } 8931 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8932 _tmp50_ = _tmp29_; 8933 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8934 if (_tmp50_) { 8935 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8936 _tmp28_ = TRUE; 8937 #line 8936 "tracker-sparql-expression.c" 8938 } else { 8939 const gchar* _tmp51_; 8940 #line 896 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8941 _tmp51_ = type_iri; 8942 #line 896 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8943 _tmp28_ = g_strcmp0 (_tmp51_, TRACKER_SPARQL_EXPRESSION_XSD_NS "unsignedLong") == 0; 8944 #line 8943 "tracker-sparql-expression.c" 8945 } 8946 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8947 _tmp52_ = _tmp28_; 8948 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8949 if (_tmp52_) { 8950 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8951 _tmp27_ = TRUE; 8952 #line 8951 "tracker-sparql-expression.c" 8953 } else { 8954 const gchar* _tmp53_; 8955 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8956 _tmp53_ = type_iri; 8957 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8958 _tmp27_ = g_strcmp0 (_tmp53_, TRACKER_SPARQL_EXPRESSION_XSD_NS "unsignedInt") == 0; 8959 #line 8958 "tracker-sparql-expression.c" 8960 } 8961 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8962 _tmp54_ = _tmp27_; 8963 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8964 if (_tmp54_) { 8965 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8966 _tmp26_ = TRUE; 8967 #line 8966 "tracker-sparql-expression.c" 8968 } else { 8969 const gchar* _tmp55_; 8970 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8971 _tmp55_ = type_iri; 8972 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8973 _tmp26_ = g_strcmp0 (_tmp55_, TRACKER_SPARQL_EXPRESSION_XSD_NS "unsignedShort") == 0; 8974 #line 8973 "tracker-sparql-expression.c" 8975 } 8976 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8977 _tmp56_ = _tmp26_; 8978 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8979 if (_tmp56_) { 8980 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8981 _tmp25_ = TRUE; 8982 #line 8981 "tracker-sparql-expression.c" 8983 } else { 8984 const gchar* _tmp57_; 8985 #line 899 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8986 _tmp57_ = type_iri; 8987 #line 899 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8988 _tmp25_ = g_strcmp0 (_tmp57_, TRACKER_SPARQL_EXPRESSION_XSD_NS "unsignedByte") == 0; 8989 #line 8988 "tracker-sparql-expression.c" 8990 } 8991 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8992 _tmp58_ = _tmp25_; 8993 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8994 if (_tmp58_) { 8995 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 8996 _tmp24_ = TRUE; 8997 #line 8996 "tracker-sparql-expression.c" 8998 } else { 8999 const gchar* _tmp59_; 9000 #line 900 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9001 _tmp59_ = type_iri; 9002 #line 900 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9003 _tmp24_ = g_strcmp0 (_tmp59_, TRACKER_SPARQL_EXPRESSION_XSD_NS "positiveInteger") == 0; 9004 #line 9003 "tracker-sparql-expression.c" 9005 } 9006 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9007 _tmp60_ = _tmp24_; 9008 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9009 if (_tmp60_) { 9010 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9011 type = TRACKER_PROPERTY_TYPE_INTEGER; 9012 #line 9011 "tracker-sparql-expression.c" 9013 } else { 9014 const gchar* _tmp61_; 9015 #line 902 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9016 _tmp61_ = type_iri; 9017 #line 902 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9018 if (g_strcmp0 (_tmp61_, TRACKER_SPARQL_EXPRESSION_XSD_NS "double") == 0) { 9019 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9020 type = TRACKER_PROPERTY_TYPE_DOUBLE; 9021 #line 9020 "tracker-sparql-expression.c" 9022 } else { 9023 const gchar* _tmp62_; 9024 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9025 _tmp62_ = type_iri; 9026 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9027 if (g_strcmp0 (_tmp62_, TRACKER_SPARQL_EXPRESSION_XSD_NS "date") == 0) { 9028 #line 905 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9029 type = TRACKER_PROPERTY_TYPE_DATE; 9030 #line 9029 "tracker-sparql-expression.c" 9031 } else { 9032 const gchar* _tmp63_; 9033 #line 906 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9034 _tmp63_ = type_iri; 9035 #line 906 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9036 if (g_strcmp0 (_tmp63_, TRACKER_SPARQL_EXPRESSION_XSD_NS "dateTime") == 0) { 9037 #line 907 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9038 type = TRACKER_PROPERTY_TYPE_DATETIME; 9039 #line 9038 "tracker-sparql-expression.c" 9040 } else { 9041 #line 909 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9042 type = TRACKER_PROPERTY_TYPE_STRING; 9043 #line 9042 "tracker-sparql-expression.c" 9044 } 9045 } 9046 } 9047 } 9048 } 9049 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9050 result = type; 9051 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9052 _g_free0 (type_iri); 9053 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9054 return result; 9055 #line 9054 "tracker-sparql-expression.c" 9056 } 9057 9058 9059 gchar* tracker_sparql_expression_parse_string_literal (TrackerSparqlExpression* self, TrackerPropertyType* type, GError** error) { 9060 TrackerPropertyType _vala_type = 0; 9061 gchar* result = NULL; 9062 TrackerSparqlTokenType _tmp0_ = 0; 9063 GError * _inner_error_ = NULL; 9064 #line 915 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9065 g_return_val_if_fail (self != NULL, NULL); 9066 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9067 _vala_type = TRACKER_PROPERTY_TYPE_STRING; 9068 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9069 tracker_sparql_expression_next (self, &_inner_error_); 9070 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9071 if (_inner_error_ != NULL) { 9072 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9073 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9074 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9075 g_propagate_error (error, _inner_error_); 9076 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9077 return NULL; 9078 #line 9077 "tracker-sparql-expression.c" 9079 } else { 9080 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9081 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9082 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9083 g_clear_error (&_inner_error_); 9084 #line 918 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9085 return NULL; 9086 #line 9085 "tracker-sparql-expression.c" 9087 } 9088 } 9089 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9090 _tmp0_ = tracker_sparql_expression_last (self); 9091 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9092 switch (_tmp0_) { 9093 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9094 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL1: 9095 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9096 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL2: 9097 #line 9096 "tracker-sparql-expression.c" 9098 { 9099 GString* _tmp1_; 9100 GString* sb; 9101 gchar* _tmp2_ = NULL; 9102 gchar* s; 9103 const gchar* _tmp3_; 9104 const gchar* p; 9105 const gchar* _tmp4_; 9106 const gchar* _tmp5_; 9107 gint _tmp6_; 9108 gint _tmp7_; 9109 const gchar* end; 9110 gboolean _tmp50_ = FALSE; 9111 gboolean _tmp51_; 9112 GString* _tmp54_; 9113 const gchar* _tmp55_; 9114 gchar* _tmp56_; 9115 #line 922 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9116 _tmp1_ = g_string_new (""); 9117 #line 922 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9118 sb = _tmp1_; 9119 #line 924 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9120 _tmp2_ = tracker_sparql_expression_get_last_string (self, 1); 9121 #line 924 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9122 s = _tmp2_; 9123 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9124 _tmp3_ = s; 9125 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9126 p = _tmp3_; 9127 #line 926 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9128 _tmp4_ = p; 9129 #line 926 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9130 _tmp5_ = s; 9131 #line 926 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9132 _tmp6_ = strlen (_tmp5_); 9133 #line 926 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9134 _tmp7_ = _tmp6_; 9135 #line 926 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9136 end = _tmp4_ + _tmp7_; 9137 #line 927 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9138 while (TRUE) { 9139 #line 9138 "tracker-sparql-expression.c" 9140 const gchar* _tmp8_; 9141 const gchar* _tmp9_; 9142 const gchar* _tmp10_; 9143 const gchar* _tmp11_ = NULL; 9144 const gchar* q; 9145 const gchar* _tmp12_; 9146 #line 927 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9147 _tmp8_ = p; 9148 #line 927 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9149 _tmp9_ = end; 9150 #line 927 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9151 if (!(((glong) _tmp8_) < ((glong) _tmp9_))) { 9152 #line 927 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9153 break; 9154 #line 9153 "tracker-sparql-expression.c" 9155 } 9156 #line 928 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9157 _tmp10_ = p; 9158 #line 928 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9159 _tmp11_ = strchr (_tmp10_, (gint) '\\'); 9160 #line 928 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9161 q = _tmp11_; 9162 #line 929 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9163 _tmp12_ = q; 9164 #line 929 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9165 if (_tmp12_ == NULL) { 9166 #line 9165 "tracker-sparql-expression.c" 9167 GString* _tmp13_; 9168 const gchar* _tmp14_; 9169 const gchar* _tmp15_; 9170 const gchar* _tmp16_; 9171 const gchar* _tmp17_; 9172 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9173 _tmp13_ = sb; 9174 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9175 _tmp14_ = p; 9176 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9177 _tmp15_ = end; 9178 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9179 _tmp16_ = p; 9180 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9181 g_string_append_len (_tmp13_, _tmp14_, (gssize) ((glong) (_tmp15_ - _tmp16_))); 9182 #line 931 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9183 _tmp17_ = end; 9184 #line 931 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9185 p = _tmp17_; 9186 #line 9185 "tracker-sparql-expression.c" 9187 } else { 9188 GString* _tmp18_; 9189 const gchar* _tmp19_; 9190 const gchar* _tmp20_; 9191 const gchar* _tmp21_; 9192 const gchar* _tmp22_; 9193 const gchar* _tmp23_; 9194 gchar _tmp24_; 9195 const gchar* _tmp49_; 9196 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9197 _tmp18_ = sb; 9198 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9199 _tmp19_ = p; 9200 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9201 _tmp20_ = q; 9202 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9203 _tmp21_ = p; 9204 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9205 g_string_append_len (_tmp18_, _tmp19_, (gssize) ((glong) (_tmp20_ - _tmp21_))); 9206 #line 934 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9207 _tmp22_ = q; 9208 #line 934 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9209 p = _tmp22_ + 1; 9210 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9211 _tmp23_ = p; 9212 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9213 _tmp24_ = ((gchar*) _tmp23_)[0]; 9214 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9215 switch (_tmp24_) { 9216 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9217 case '\'': 9218 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9219 case '"': 9220 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9221 case '\\': 9222 #line 9221 "tracker-sparql-expression.c" 9223 { 9224 GString* _tmp25_; 9225 const gchar* _tmp26_; 9226 gchar _tmp27_; 9227 #line 939 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9228 _tmp25_ = sb; 9229 #line 939 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9230 _tmp26_ = p; 9231 #line 939 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9232 _tmp27_ = ((gchar*) _tmp26_)[0]; 9233 #line 939 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9234 g_string_append_c (_tmp25_, _tmp27_); 9235 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9236 break; 9237 #line 9236 "tracker-sparql-expression.c" 9238 } 9239 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9240 case 'b': 9241 #line 9240 "tracker-sparql-expression.c" 9242 { 9243 GString* _tmp28_; 9244 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9245 _tmp28_ = sb; 9246 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9247 g_string_append_c (_tmp28_, '\b'); 9248 #line 943 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9249 break; 9250 #line 9249 "tracker-sparql-expression.c" 9251 } 9252 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9253 case 'f': 9254 #line 9253 "tracker-sparql-expression.c" 9255 { 9256 GString* _tmp29_; 9257 #line 945 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9258 _tmp29_ = sb; 9259 #line 945 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9260 g_string_append_c (_tmp29_, '\f'); 9261 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9262 break; 9263 #line 9262 "tracker-sparql-expression.c" 9264 } 9265 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9266 case 'n': 9267 #line 9266 "tracker-sparql-expression.c" 9268 { 9269 GString* _tmp30_; 9270 #line 948 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9271 _tmp30_ = sb; 9272 #line 948 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9273 g_string_append_c (_tmp30_, '\n'); 9274 #line 949 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9275 break; 9276 #line 9275 "tracker-sparql-expression.c" 9277 } 9278 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9279 case 'r': 9280 #line 9279 "tracker-sparql-expression.c" 9281 { 9282 GString* _tmp31_; 9283 #line 951 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9284 _tmp31_ = sb; 9285 #line 951 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9286 g_string_append_c (_tmp31_, '\r'); 9287 #line 952 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9288 break; 9289 #line 9288 "tracker-sparql-expression.c" 9290 } 9291 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9292 case 't': 9293 #line 9292 "tracker-sparql-expression.c" 9294 { 9295 GString* _tmp32_; 9296 #line 954 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9297 _tmp32_ = sb; 9298 #line 954 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9299 g_string_append_c (_tmp32_, '\t'); 9300 #line 955 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9301 break; 9302 #line 9301 "tracker-sparql-expression.c" 9303 } 9304 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9305 case 'u': 9306 #line 9305 "tracker-sparql-expression.c" 9307 { 9308 const gchar* _tmp33_; 9309 gchar* ptr; 9310 gchar* _tmp34_; 9311 gchar _tmp35_; 9312 gint _tmp36_ = 0; 9313 gchar* _tmp37_; 9314 gchar _tmp38_; 9315 gint _tmp39_ = 0; 9316 gchar* _tmp40_; 9317 gchar _tmp41_; 9318 gint _tmp42_ = 0; 9319 gchar* _tmp43_; 9320 gchar _tmp44_; 9321 gint _tmp45_ = 0; 9322 gunichar c; 9323 GString* _tmp46_; 9324 gunichar _tmp47_; 9325 const gchar* _tmp48_; 9326 #line 957 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9327 _tmp33_ = p; 9328 #line 957 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9329 ptr = ((gchar*) _tmp33_) + 1; 9330 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9331 _tmp34_ = ptr; 9332 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9333 _tmp35_ = _tmp34_[0]; 9334 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9335 _tmp36_ = g_ascii_xdigit_value (_tmp35_); 9336 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9337 _tmp37_ = ptr; 9338 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9339 _tmp38_ = _tmp37_[1]; 9340 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9341 _tmp39_ = g_ascii_xdigit_value (_tmp38_); 9342 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9343 _tmp40_ = ptr; 9344 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9345 _tmp41_ = _tmp40_[2]; 9346 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9347 _tmp42_ = g_ascii_xdigit_value (_tmp41_); 9348 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9349 _tmp43_ = ptr; 9350 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9351 _tmp44_ = _tmp43_[3]; 9352 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9353 _tmp45_ = g_ascii_xdigit_value (_tmp44_); 9354 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9355 c = (((((((gunichar) _tmp36_) * 16) + _tmp39_) * 16) + _tmp42_) * 16) + _tmp45_; 9356 #line 959 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9357 _tmp46_ = sb; 9358 #line 959 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9359 _tmp47_ = c; 9360 #line 959 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9361 g_string_append_unichar (_tmp46_, _tmp47_); 9362 #line 960 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9363 _tmp48_ = p; 9364 #line 960 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9365 p = _tmp48_ + 4; 9366 #line 961 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9367 break; 9368 #line 9367 "tracker-sparql-expression.c" 9369 } 9370 default: 9371 #line 935 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9372 break; 9373 #line 9372 "tracker-sparql-expression.c" 9374 } 9375 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9376 _tmp49_ = p; 9377 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9378 p = _tmp49_ + 1; 9379 #line 9378 "tracker-sparql-expression.c" 9380 } 9381 } 9382 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9383 _tmp50_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOUBLE_CIRCUMFLEX, &_inner_error_); 9384 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9385 _tmp51_ = _tmp50_; 9386 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9387 if (_inner_error_ != NULL) { 9388 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9389 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9390 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9391 g_propagate_error (error, _inner_error_); 9392 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9393 _g_free0 (s); 9394 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9395 _g_string_free0 (sb); 9396 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9397 return NULL; 9398 #line 9397 "tracker-sparql-expression.c" 9399 } else { 9400 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9401 _g_free0 (s); 9402 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9403 _g_string_free0 (sb); 9404 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9405 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9406 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9407 g_clear_error (&_inner_error_); 9408 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9409 return NULL; 9410 #line 9409 "tracker-sparql-expression.c" 9411 } 9412 } 9413 #line 967 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9414 if (_tmp51_) { 9415 #line 9414 "tracker-sparql-expression.c" 9416 TrackerPropertyType _tmp52_ = 0; 9417 TrackerPropertyType _tmp53_; 9418 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9419 _tmp52_ = tracker_sparql_expression_parse_type_uri (self, &_inner_error_); 9420 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9421 _tmp53_ = _tmp52_; 9422 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9423 if (_inner_error_ != NULL) { 9424 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9425 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9426 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9427 g_propagate_error (error, _inner_error_); 9428 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9429 _g_free0 (s); 9430 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9431 _g_string_free0 (sb); 9432 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9433 return NULL; 9434 #line 9433 "tracker-sparql-expression.c" 9435 } else { 9436 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9437 _g_free0 (s); 9438 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9439 _g_string_free0 (sb); 9440 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9441 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9442 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9443 g_clear_error (&_inner_error_); 9444 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9445 return NULL; 9446 #line 9445 "tracker-sparql-expression.c" 9447 } 9448 } 9449 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9450 _vala_type = _tmp53_; 9451 #line 9450 "tracker-sparql-expression.c" 9452 } 9453 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9454 _tmp54_ = sb; 9455 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9456 _tmp55_ = _tmp54_->str; 9457 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9458 _tmp56_ = g_strdup (_tmp55_); 9459 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9460 result = _tmp56_; 9461 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9462 _g_free0 (s); 9463 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9464 _g_string_free0 (sb); 9465 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9466 if (type) { 9467 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9468 *type = _vala_type; 9469 #line 9468 "tracker-sparql-expression.c" 9470 } 9471 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9472 return result; 9473 #line 9472 "tracker-sparql-expression.c" 9474 } 9475 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9476 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG1: 9477 #line 919 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9478 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG2: 9479 #line 9478 "tracker-sparql-expression.c" 9480 { 9481 gchar* _tmp57_ = NULL; 9482 gchar* _result_; 9483 gboolean _tmp58_ = FALSE; 9484 gboolean _tmp59_; 9485 #line 975 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9486 _tmp57_ = tracker_sparql_expression_get_last_string (self, 3); 9487 #line 975 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9488 _result_ = _tmp57_; 9489 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9490 _tmp58_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOUBLE_CIRCUMFLEX, &_inner_error_); 9491 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9492 _tmp59_ = _tmp58_; 9493 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9494 if (_inner_error_ != NULL) { 9495 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9496 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9497 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9498 g_propagate_error (error, _inner_error_); 9499 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9500 _g_free0 (_result_); 9501 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9502 return NULL; 9503 #line 9502 "tracker-sparql-expression.c" 9504 } else { 9505 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9506 _g_free0 (_result_); 9507 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9508 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9509 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9510 g_clear_error (&_inner_error_); 9511 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9512 return NULL; 9513 #line 9512 "tracker-sparql-expression.c" 9514 } 9515 } 9516 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9517 if (_tmp59_) { 9518 #line 9517 "tracker-sparql-expression.c" 9519 TrackerPropertyType _tmp60_ = 0; 9520 TrackerPropertyType _tmp61_; 9521 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9522 _tmp60_ = tracker_sparql_expression_parse_type_uri (self, &_inner_error_); 9523 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9524 _tmp61_ = _tmp60_; 9525 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9526 if (_inner_error_ != NULL) { 9527 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9528 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9529 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9530 g_propagate_error (error, _inner_error_); 9531 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9532 _g_free0 (_result_); 9533 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9534 return NULL; 9535 #line 9534 "tracker-sparql-expression.c" 9536 } else { 9537 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9538 _g_free0 (_result_); 9539 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9540 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9541 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9542 g_clear_error (&_inner_error_); 9543 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9544 return NULL; 9545 #line 9544 "tracker-sparql-expression.c" 9546 } 9547 } 9548 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9549 _vala_type = _tmp61_; 9550 #line 9549 "tracker-sparql-expression.c" 9551 } 9552 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9553 result = _result_; 9554 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9555 if (type) { 9556 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9557 *type = _vala_type; 9558 #line 9557 "tracker-sparql-expression.c" 9559 } 9560 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9561 return result; 9562 #line 9561 "tracker-sparql-expression.c" 9563 } 9564 default: 9565 { 9566 GError* _tmp62_ = NULL; 9567 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9568 _tmp62_ = tracker_sparql_expression_get_error (self, "expected string literal"); 9569 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9570 _inner_error_ = _tmp62_; 9571 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9572 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9573 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9574 g_propagate_error (error, _inner_error_); 9575 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9576 return NULL; 9577 #line 9576 "tracker-sparql-expression.c" 9578 } else { 9579 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9580 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9581 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9582 g_clear_error (&_inner_error_); 9583 #line 984 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9584 return NULL; 9585 #line 9584 "tracker-sparql-expression.c" 9586 } 9587 } 9588 } 9589 #line 915 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9590 if (type) { 9591 #line 915 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9592 *type = _vala_type; 9593 #line 9592 "tracker-sparql-expression.c" 9594 } 9595 } 9596 9597 9598 static TrackerPropertyType tracker_sparql_expression_translate_uri_expression (TrackerSparqlExpression* self, GString* sql, const gchar* uri, GError** error) { 9599 TrackerPropertyType result = 0; 9600 gboolean _tmp0_ = FALSE; 9601 gboolean _tmp1_; 9602 GError * _inner_error_ = NULL; 9603 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9604 g_return_val_if_fail (self != NULL, 0); 9605 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9606 g_return_val_if_fail (sql != NULL, 0); 9607 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9608 g_return_val_if_fail (uri != NULL, 0); 9609 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9610 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 9611 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9612 _tmp1_ = _tmp0_; 9613 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9614 if (_inner_error_ != NULL) { 9615 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9616 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9617 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9618 g_propagate_error (error, _inner_error_); 9619 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9620 return 0; 9621 #line 9620 "tracker-sparql-expression.c" 9622 } else { 9623 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9624 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9625 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9626 g_clear_error (&_inner_error_); 9627 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9628 return 0; 9629 #line 9628 "tracker-sparql-expression.c" 9630 } 9631 } 9632 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9633 if (_tmp1_) { 9634 #line 9633 "tracker-sparql-expression.c" 9635 GString* _tmp2_; 9636 const gchar* _tmp3_; 9637 TrackerPropertyType _tmp4_ = 0; 9638 TrackerPropertyType _result_; 9639 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9640 _tmp2_ = sql; 9641 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9642 _tmp3_ = uri; 9643 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9644 _tmp4_ = tracker_sparql_expression_translate_function (self, _tmp2_, _tmp3_, &_inner_error_); 9645 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9646 _result_ = _tmp4_; 9647 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9648 if (_inner_error_ != NULL) { 9649 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9650 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9651 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9652 g_propagate_error (error, _inner_error_); 9653 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9654 return 0; 9655 #line 9654 "tracker-sparql-expression.c" 9656 } else { 9657 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9658 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9659 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9660 g_clear_error (&_inner_error_); 9661 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9662 return 0; 9663 #line 9662 "tracker-sparql-expression.c" 9664 } 9665 } 9666 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9667 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 9668 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9669 if (_inner_error_ != NULL) { 9670 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9671 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9672 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9673 g_propagate_error (error, _inner_error_); 9674 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9675 return 0; 9676 #line 9675 "tracker-sparql-expression.c" 9677 } else { 9678 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9679 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9680 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9681 g_clear_error (&_inner_error_); 9682 #line 992 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9683 return 0; 9684 #line 9683 "tracker-sparql-expression.c" 9685 } 9686 } 9687 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9688 result = _result_; 9689 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9690 return result; 9691 #line 9690 "tracker-sparql-expression.c" 9692 } else { 9693 GString* _tmp5_; 9694 TrackerSparqlLiteralBinding* _tmp6_; 9695 TrackerSparqlLiteralBinding* binding; 9696 TrackerSparqlLiteralBinding* _tmp7_; 9697 const gchar* _tmp8_; 9698 gchar* _tmp9_; 9699 TrackerSparqlQuery* _tmp10_; 9700 TrackerSparqlLiteralBinding* _tmp11_; 9701 TrackerSparqlLiteralBinding* _tmp12_; 9702 #line 996 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9703 _tmp5_ = sql; 9704 #line 996 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9705 g_string_append (_tmp5_, "COALESCE((SELECT ID FROM Resource WHERE Uri = ?), 0)"); 9706 #line 997 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9707 _tmp6_ = tracker_sparql_literal_binding_new (); 9708 #line 997 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9709 binding = _tmp6_; 9710 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9711 _tmp7_ = binding; 9712 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9713 _tmp8_ = uri; 9714 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9715 _tmp9_ = g_strdup (_tmp8_); 9716 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9717 _g_free0 (_tmp7_->literal); 9718 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9719 _tmp7_->literal = _tmp9_; 9720 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9721 _tmp10_ = self->priv->query; 9722 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9723 _tmp11_ = binding; 9724 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9725 _tmp12_ = _g_object_ref0 (_tmp11_); 9726 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9727 _tmp10_->bindings = g_list_append (_tmp10_->bindings, _tmp12_); 9728 #line 1000 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9729 result = TRACKER_PROPERTY_TYPE_RESOURCE; 9730 #line 1000 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9731 _g_object_unref0 (binding); 9732 #line 1000 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9733 return result; 9734 #line 9733 "tracker-sparql-expression.c" 9735 } 9736 } 9737 9738 9739 static TrackerPropertyType tracker_sparql_expression_translate_primary_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 9740 TrackerPropertyType result = 0; 9741 TrackerPropertyType type = 0; 9742 TrackerSparqlTokenType _tmp0_ = 0; 9743 GError * _inner_error_ = NULL; 9744 #line 1004 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9745 g_return_val_if_fail (self != NULL, 0); 9746 #line 1004 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9747 g_return_val_if_fail (sql != NULL, 0); 9748 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9749 _tmp0_ = tracker_sparql_expression_current (self); 9750 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9751 switch (_tmp0_) { 9752 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9753 case TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS: 9754 #line 9753 "tracker-sparql-expression.c" 9755 { 9756 GString* _tmp1_; 9757 TrackerPropertyType _tmp2_ = 0; 9758 TrackerPropertyType _tmp3_; 9759 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9760 _tmp1_ = sql; 9761 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9762 _tmp2_ = tracker_sparql_expression_translate_bracketted_expression (self, _tmp1_, &_inner_error_); 9763 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9764 _tmp3_ = _tmp2_; 9765 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9766 if (_inner_error_ != NULL) { 9767 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9768 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9769 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9770 g_propagate_error (error, _inner_error_); 9771 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9772 return 0; 9773 #line 9772 "tracker-sparql-expression.c" 9774 } else { 9775 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9776 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9777 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9778 g_clear_error (&_inner_error_); 9779 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9780 return 0; 9781 #line 9780 "tracker-sparql-expression.c" 9782 } 9783 } 9784 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9785 result = _tmp3_; 9786 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9787 return result; 9788 #line 9787 "tracker-sparql-expression.c" 9789 } 9790 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9791 case TRACKER_SPARQL_TOKEN_TYPE_IRI_REF: 9792 #line 9791 "tracker-sparql-expression.c" 9793 { 9794 GString* _tmp4_; 9795 gchar* _tmp5_ = NULL; 9796 gchar* _tmp6_; 9797 TrackerPropertyType _tmp7_ = 0; 9798 TrackerPropertyType _tmp8_; 9799 TrackerPropertyType _tmp9_; 9800 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9801 tracker_sparql_expression_next (self, &_inner_error_); 9802 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9803 if (_inner_error_ != NULL) { 9804 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9805 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9806 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9807 g_propagate_error (error, _inner_error_); 9808 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9809 return 0; 9810 #line 9809 "tracker-sparql-expression.c" 9811 } else { 9812 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9813 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9814 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9815 g_clear_error (&_inner_error_); 9816 #line 1011 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9817 return 0; 9818 #line 9817 "tracker-sparql-expression.c" 9819 } 9820 } 9821 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9822 _tmp4_ = sql; 9823 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9824 _tmp5_ = tracker_sparql_expression_get_last_string (self, 1); 9825 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9826 _tmp6_ = _tmp5_; 9827 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9828 _tmp7_ = tracker_sparql_expression_translate_uri_expression (self, _tmp4_, _tmp6_, &_inner_error_); 9829 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9830 _tmp8_ = _tmp7_; 9831 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9832 _g_free0 (_tmp6_); 9833 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9834 _tmp9_ = _tmp8_; 9835 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9836 if (_inner_error_ != NULL) { 9837 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9838 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9839 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9840 g_propagate_error (error, _inner_error_); 9841 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9842 return 0; 9843 #line 9842 "tracker-sparql-expression.c" 9844 } else { 9845 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9846 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9847 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9848 g_clear_error (&_inner_error_); 9849 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9850 return 0; 9851 #line 9850 "tracker-sparql-expression.c" 9852 } 9853 } 9854 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9855 result = _tmp9_; 9856 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9857 return result; 9858 #line 9857 "tracker-sparql-expression.c" 9859 } 9860 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9861 case TRACKER_SPARQL_TOKEN_TYPE_DECIMAL: 9862 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9863 case TRACKER_SPARQL_TOKEN_TYPE_DOUBLE: 9864 #line 9863 "tracker-sparql-expression.c" 9865 { 9866 TrackerSparqlQuery* _tmp10_; 9867 gboolean _tmp11_; 9868 gboolean _tmp12_; 9869 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9870 tracker_sparql_expression_next (self, &_inner_error_); 9871 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9872 if (_inner_error_ != NULL) { 9873 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9874 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9875 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9876 g_propagate_error (error, _inner_error_); 9877 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9878 return 0; 9879 #line 9878 "tracker-sparql-expression.c" 9880 } else { 9881 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9882 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9883 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9884 g_clear_error (&_inner_error_); 9885 #line 1015 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9886 return 0; 9887 #line 9886 "tracker-sparql-expression.c" 9888 } 9889 } 9890 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9891 _tmp10_ = self->priv->query; 9892 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9893 _tmp11_ = tracker_sparql_query_get_no_cache (_tmp10_); 9894 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9895 _tmp12_ = _tmp11_; 9896 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9897 if (_tmp12_) { 9898 #line 9897 "tracker-sparql-expression.c" 9899 GString* _tmp13_; 9900 gchar* _tmp14_ = NULL; 9901 gchar* _tmp15_; 9902 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9903 _tmp13_ = sql; 9904 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9905 _tmp14_ = tracker_sparql_expression_get_last_string (self, 0); 9906 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9907 _tmp15_ = _tmp14_; 9908 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9909 g_string_append (_tmp13_, _tmp15_); 9910 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9911 _g_free0 (_tmp15_); 9912 #line 9911 "tracker-sparql-expression.c" 9913 } else { 9914 GString* _tmp16_; 9915 TrackerSparqlLiteralBinding* _tmp17_; 9916 TrackerSparqlLiteralBinding* binding; 9917 TrackerSparqlLiteralBinding* _tmp18_; 9918 gchar* _tmp19_ = NULL; 9919 TrackerSparqlQuery* _tmp20_; 9920 TrackerSparqlLiteralBinding* _tmp21_; 9921 TrackerSparqlLiteralBinding* _tmp22_; 9922 #line 1020 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9923 _tmp16_ = sql; 9924 #line 1020 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9925 g_string_append (_tmp16_, "?"); 9926 #line 1022 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9927 _tmp17_ = tracker_sparql_literal_binding_new (); 9928 #line 1022 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9929 binding = _tmp17_; 9930 #line 1023 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9931 _tmp18_ = binding; 9932 #line 1023 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9933 _tmp19_ = tracker_sparql_expression_get_last_string (self, 0); 9934 #line 1023 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9935 _g_free0 (_tmp18_->literal); 9936 #line 1023 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9937 _tmp18_->literal = _tmp19_; 9938 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9939 _tmp20_ = self->priv->query; 9940 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9941 _tmp21_ = binding; 9942 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9943 _tmp22_ = _g_object_ref0 (_tmp21_); 9944 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9945 _tmp20_->bindings = g_list_append (_tmp20_->bindings, _tmp22_); 9946 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9947 _g_object_unref0 (binding); 9948 #line 9947 "tracker-sparql-expression.c" 9949 } 9950 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9951 result = TRACKER_PROPERTY_TYPE_DOUBLE; 9952 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9953 return result; 9954 #line 9953 "tracker-sparql-expression.c" 9955 } 9956 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9957 case TRACKER_SPARQL_TOKEN_TYPE_TRUE: 9958 #line 9957 "tracker-sparql-expression.c" 9959 { 9960 TrackerSparqlQuery* _tmp23_; 9961 gboolean _tmp24_; 9962 gboolean _tmp25_; 9963 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9964 tracker_sparql_expression_next (self, &_inner_error_); 9965 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9966 if (_inner_error_ != NULL) { 9967 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9968 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9969 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9970 g_propagate_error (error, _inner_error_); 9971 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9972 return 0; 9973 #line 9972 "tracker-sparql-expression.c" 9974 } else { 9975 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9976 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9977 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9978 g_clear_error (&_inner_error_); 9979 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9980 return 0; 9981 #line 9980 "tracker-sparql-expression.c" 9982 } 9983 } 9984 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9985 _tmp23_ = self->priv->query; 9986 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9987 _tmp24_ = tracker_sparql_query_get_no_cache (_tmp23_); 9988 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9989 _tmp25_ = _tmp24_; 9990 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9991 if (_tmp25_) { 9992 #line 9991 "tracker-sparql-expression.c" 9993 GString* _tmp26_; 9994 #line 1032 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9995 _tmp26_ = sql; 9996 #line 1032 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 9997 g_string_append (_tmp26_, "1"); 9998 #line 9997 "tracker-sparql-expression.c" 9999 } else { 10000 GString* _tmp27_; 10001 TrackerSparqlLiteralBinding* _tmp28_; 10002 TrackerSparqlLiteralBinding* binding; 10003 TrackerSparqlLiteralBinding* _tmp29_; 10004 gchar* _tmp30_; 10005 TrackerSparqlLiteralBinding* _tmp31_; 10006 TrackerSparqlQuery* _tmp32_; 10007 TrackerSparqlLiteralBinding* _tmp33_; 10008 TrackerSparqlLiteralBinding* _tmp34_; 10009 #line 1034 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10010 _tmp27_ = sql; 10011 #line 1034 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10012 g_string_append (_tmp27_, "?"); 10013 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10014 _tmp28_ = tracker_sparql_literal_binding_new (); 10015 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10016 binding = _tmp28_; 10017 #line 1037 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10018 _tmp29_ = binding; 10019 #line 1037 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10020 _tmp30_ = g_strdup ("1"); 10021 #line 1037 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10022 _g_free0 (_tmp29_->literal); 10023 #line 1037 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10024 _tmp29_->literal = _tmp30_; 10025 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10026 _tmp31_ = binding; 10027 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10028 ((TrackerSparqlDataBinding*) _tmp31_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 10029 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10030 _tmp32_ = self->priv->query; 10031 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10032 _tmp33_ = binding; 10033 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10034 _tmp34_ = _g_object_ref0 (_tmp33_); 10035 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10036 _tmp32_->bindings = g_list_append (_tmp32_->bindings, _tmp34_); 10037 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10038 _g_object_unref0 (binding); 10039 #line 10038 "tracker-sparql-expression.c" 10040 } 10041 #line 1042 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10042 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 10043 #line 1042 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10044 return result; 10045 #line 10044 "tracker-sparql-expression.c" 10046 } 10047 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10048 case TRACKER_SPARQL_TOKEN_TYPE_FALSE: 10049 #line 10048 "tracker-sparql-expression.c" 10050 { 10051 TrackerSparqlQuery* _tmp35_; 10052 gboolean _tmp36_; 10053 gboolean _tmp37_; 10054 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10055 tracker_sparql_expression_next (self, &_inner_error_); 10056 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10057 if (_inner_error_ != NULL) { 10058 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10059 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10060 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10061 g_propagate_error (error, _inner_error_); 10062 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10063 return 0; 10064 #line 10063 "tracker-sparql-expression.c" 10065 } else { 10066 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10067 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10068 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10069 g_clear_error (&_inner_error_); 10070 #line 1044 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10071 return 0; 10072 #line 10071 "tracker-sparql-expression.c" 10073 } 10074 } 10075 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10076 _tmp35_ = self->priv->query; 10077 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10078 _tmp36_ = tracker_sparql_query_get_no_cache (_tmp35_); 10079 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10080 _tmp37_ = _tmp36_; 10081 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10082 if (_tmp37_) { 10083 #line 10082 "tracker-sparql-expression.c" 10084 GString* _tmp38_; 10085 #line 1047 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10086 _tmp38_ = sql; 10087 #line 1047 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10088 g_string_append (_tmp38_, "0"); 10089 #line 10088 "tracker-sparql-expression.c" 10090 } else { 10091 GString* _tmp39_; 10092 TrackerSparqlLiteralBinding* _tmp40_; 10093 TrackerSparqlLiteralBinding* binding; 10094 TrackerSparqlLiteralBinding* _tmp41_; 10095 gchar* _tmp42_; 10096 TrackerSparqlLiteralBinding* _tmp43_; 10097 TrackerSparqlQuery* _tmp44_; 10098 TrackerSparqlLiteralBinding* _tmp45_; 10099 TrackerSparqlLiteralBinding* _tmp46_; 10100 #line 1049 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10101 _tmp39_ = sql; 10102 #line 1049 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10103 g_string_append (_tmp39_, "?"); 10104 #line 1051 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10105 _tmp40_ = tracker_sparql_literal_binding_new (); 10106 #line 1051 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10107 binding = _tmp40_; 10108 #line 1052 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10109 _tmp41_ = binding; 10110 #line 1052 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10111 _tmp42_ = g_strdup ("0"); 10112 #line 1052 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10113 _g_free0 (_tmp41_->literal); 10114 #line 1052 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10115 _tmp41_->literal = _tmp42_; 10116 #line 1053 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10117 _tmp43_ = binding; 10118 #line 1053 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10119 ((TrackerSparqlDataBinding*) _tmp43_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 10120 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10121 _tmp44_ = self->priv->query; 10122 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10123 _tmp45_ = binding; 10124 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10125 _tmp46_ = _g_object_ref0 (_tmp45_); 10126 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10127 _tmp44_->bindings = g_list_append (_tmp44_->bindings, _tmp46_); 10128 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10129 _g_object_unref0 (binding); 10130 #line 10129 "tracker-sparql-expression.c" 10131 } 10132 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10133 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 10134 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10135 return result; 10136 #line 10135 "tracker-sparql-expression.c" 10137 } 10138 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10139 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL1: 10140 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10141 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL2: 10142 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10143 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG1: 10144 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10145 case TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG2: 10146 #line 10145 "tracker-sparql-expression.c" 10147 { 10148 TrackerPropertyType _tmp47_ = 0; 10149 gchar* _tmp48_ = NULL; 10150 gchar* literal; 10151 TrackerPropertyType _tmp49_; 10152 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10153 _tmp48_ = tracker_sparql_expression_parse_string_literal (self, &_tmp47_, &_inner_error_); 10154 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10155 type = _tmp47_; 10156 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10157 literal = _tmp48_; 10158 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10159 if (_inner_error_ != NULL) { 10160 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10161 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10162 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10163 g_propagate_error (error, _inner_error_); 10164 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10165 return 0; 10166 #line 10165 "tracker-sparql-expression.c" 10167 } else { 10168 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10169 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10170 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10171 g_clear_error (&_inner_error_); 10172 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10173 return 0; 10174 #line 10173 "tracker-sparql-expression.c" 10175 } 10176 } 10177 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10178 _tmp49_ = type; 10179 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10180 switch (_tmp49_) { 10181 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10182 case TRACKER_PROPERTY_TYPE_INTEGER: 10183 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10184 case TRACKER_PROPERTY_TYPE_BOOLEAN: 10185 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10186 case TRACKER_PROPERTY_TYPE_DOUBLE: 10187 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10188 case TRACKER_PROPERTY_TYPE_DATE: 10189 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10190 case TRACKER_PROPERTY_TYPE_DATETIME: 10191 #line 10190 "tracker-sparql-expression.c" 10192 { 10193 TrackerSparqlQuery* _tmp50_; 10194 gboolean _tmp51_; 10195 gboolean _tmp52_; 10196 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10197 _tmp50_ = self->priv->query; 10198 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10199 _tmp51_ = tracker_sparql_query_get_no_cache (_tmp50_); 10200 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10201 _tmp52_ = _tmp51_; 10202 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10203 if (_tmp52_) { 10204 #line 10203 "tracker-sparql-expression.c" 10205 GString* _tmp53_; 10206 const gchar* _tmp54_; 10207 gchar* _tmp55_ = NULL; 10208 gchar* _tmp56_; 10209 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10210 _tmp53_ = sql; 10211 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10212 _tmp54_ = literal; 10213 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10214 _tmp55_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp54_); 10215 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10216 _tmp56_ = _tmp55_; 10217 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10218 g_string_append (_tmp53_, _tmp56_); 10219 #line 1071 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10220 _g_free0 (_tmp56_); 10221 #line 10220 "tracker-sparql-expression.c" 10222 } else { 10223 TrackerSparqlLiteralBinding* _tmp57_; 10224 TrackerSparqlLiteralBinding* binding; 10225 TrackerSparqlLiteralBinding* _tmp58_; 10226 const gchar* _tmp59_; 10227 gchar* _tmp60_; 10228 TrackerSparqlLiteralBinding* _tmp61_; 10229 TrackerPropertyType _tmp62_; 10230 TrackerSparqlQuery* _tmp63_; 10231 TrackerSparqlLiteralBinding* _tmp64_; 10232 TrackerSparqlLiteralBinding* _tmp65_; 10233 GString* _tmp66_; 10234 #line 1073 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10235 _tmp57_ = tracker_sparql_literal_binding_new (); 10236 #line 1073 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10237 binding = _tmp57_; 10238 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10239 _tmp58_ = binding; 10240 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10241 _tmp59_ = literal; 10242 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10243 _tmp60_ = g_strdup (_tmp59_); 10244 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10245 _g_free0 (_tmp58_->literal); 10246 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10247 _tmp58_->literal = _tmp60_; 10248 #line 1075 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10249 _tmp61_ = binding; 10250 #line 1075 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10251 _tmp62_ = type; 10252 #line 1075 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10253 ((TrackerSparqlDataBinding*) _tmp61_)->data_type = _tmp62_; 10254 #line 1076 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10255 _tmp63_ = self->priv->query; 10256 #line 1076 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10257 _tmp64_ = binding; 10258 #line 1076 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10259 _tmp65_ = _g_object_ref0 (_tmp64_); 10260 #line 1076 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10261 _tmp63_->bindings = g_list_append (_tmp63_->bindings, _tmp65_); 10262 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10263 _tmp66_ = sql; 10264 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10265 g_string_append (_tmp66_, "?"); 10266 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10267 _g_object_unref0 (binding); 10268 #line 10267 "tracker-sparql-expression.c" 10269 } 10270 #line 1079 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10271 result = type; 10272 #line 1079 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10273 _g_free0 (literal); 10274 #line 1079 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10275 return result; 10276 #line 10275 "tracker-sparql-expression.c" 10277 } 10278 default: 10279 { 10280 TrackerSparqlQuery* _tmp67_; 10281 gboolean _tmp68_; 10282 gboolean _tmp69_; 10283 GString* _tmp82_; 10284 #line 1081 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10285 _tmp67_ = self->priv->query; 10286 #line 1081 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10287 _tmp68_ = tracker_sparql_query_get_no_cache (_tmp67_); 10288 #line 1081 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10289 _tmp69_ = _tmp68_; 10290 #line 1081 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10291 if (_tmp69_) { 10292 #line 10291 "tracker-sparql-expression.c" 10293 GString* _tmp70_; 10294 const gchar* _tmp71_; 10295 gchar* _tmp72_ = NULL; 10296 gchar* _tmp73_; 10297 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10298 _tmp70_ = sql; 10299 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10300 _tmp71_ = literal; 10301 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10302 _tmp72_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp71_); 10303 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10304 _tmp73_ = _tmp72_; 10305 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10306 g_string_append (_tmp70_, _tmp73_); 10307 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10308 _g_free0 (_tmp73_); 10309 #line 10308 "tracker-sparql-expression.c" 10310 } else { 10311 TrackerSparqlLiteralBinding* _tmp74_; 10312 TrackerSparqlLiteralBinding* binding; 10313 TrackerSparqlLiteralBinding* _tmp75_; 10314 const gchar* _tmp76_; 10315 gchar* _tmp77_; 10316 TrackerSparqlQuery* _tmp78_; 10317 TrackerSparqlLiteralBinding* _tmp79_; 10318 TrackerSparqlLiteralBinding* _tmp80_; 10319 GString* _tmp81_; 10320 #line 1084 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10321 _tmp74_ = tracker_sparql_literal_binding_new (); 10322 #line 1084 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10323 binding = _tmp74_; 10324 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10325 _tmp75_ = binding; 10326 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10327 _tmp76_ = literal; 10328 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10329 _tmp77_ = g_strdup (_tmp76_); 10330 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10331 _g_free0 (_tmp75_->literal); 10332 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10333 _tmp75_->literal = _tmp77_; 10334 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10335 _tmp78_ = self->priv->query; 10336 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10337 _tmp79_ = binding; 10338 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10339 _tmp80_ = _g_object_ref0 (_tmp79_); 10340 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10341 _tmp78_->bindings = g_list_append (_tmp78_->bindings, _tmp80_); 10342 #line 1087 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10343 _tmp81_ = sql; 10344 #line 1087 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10345 g_string_append (_tmp81_, "?"); 10346 #line 1081 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10347 _g_object_unref0 (binding); 10348 #line 10347 "tracker-sparql-expression.c" 10349 } 10350 #line 1089 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10351 _tmp82_ = sql; 10352 #line 1089 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10353 tracker_sparql_expression_append_collate (self, _tmp82_); 10354 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10355 result = TRACKER_PROPERTY_TYPE_STRING; 10356 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10357 _g_free0 (literal); 10358 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10359 return result; 10360 #line 10359 "tracker-sparql-expression.c" 10361 } 10362 } 10363 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10364 _g_free0 (literal); 10365 #line 10364 "tracker-sparql-expression.c" 10366 } 10367 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10368 case TRACKER_SPARQL_TOKEN_TYPE_INTEGER: 10369 #line 10368 "tracker-sparql-expression.c" 10370 { 10371 TrackerSparqlQuery* _tmp83_; 10372 gboolean _tmp84_; 10373 gboolean _tmp85_; 10374 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10375 tracker_sparql_expression_next (self, &_inner_error_); 10376 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10377 if (_inner_error_ != NULL) { 10378 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10379 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10380 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10381 g_propagate_error (error, _inner_error_); 10382 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10383 return 0; 10384 #line 10383 "tracker-sparql-expression.c" 10385 } else { 10386 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10387 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10388 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10389 g_clear_error (&_inner_error_); 10390 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10391 return 0; 10392 #line 10391 "tracker-sparql-expression.c" 10393 } 10394 } 10395 #line 1095 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10396 _tmp83_ = self->priv->query; 10397 #line 1095 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10398 _tmp84_ = tracker_sparql_query_get_no_cache (_tmp83_); 10399 #line 1095 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10400 _tmp85_ = _tmp84_; 10401 #line 1095 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10402 if (_tmp85_) { 10403 #line 10402 "tracker-sparql-expression.c" 10404 GString* _tmp86_; 10405 gchar* _tmp87_ = NULL; 10406 gchar* _tmp88_; 10407 #line 1096 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10408 _tmp86_ = sql; 10409 #line 1096 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10410 _tmp87_ = tracker_sparql_expression_get_last_string (self, 0); 10411 #line 1096 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10412 _tmp88_ = _tmp87_; 10413 #line 1096 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10414 g_string_append (_tmp86_, _tmp88_); 10415 #line 1096 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10416 _g_free0 (_tmp88_); 10417 #line 10416 "tracker-sparql-expression.c" 10418 } else { 10419 GString* _tmp89_; 10420 TrackerSparqlLiteralBinding* _tmp90_; 10421 TrackerSparqlLiteralBinding* binding; 10422 TrackerSparqlLiteralBinding* _tmp91_; 10423 gchar* _tmp92_ = NULL; 10424 TrackerSparqlLiteralBinding* _tmp93_; 10425 TrackerSparqlQuery* _tmp94_; 10426 TrackerSparqlLiteralBinding* _tmp95_; 10427 TrackerSparqlLiteralBinding* _tmp96_; 10428 #line 1098 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10429 _tmp89_ = sql; 10430 #line 1098 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10431 g_string_append (_tmp89_, "?"); 10432 #line 1100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10433 _tmp90_ = tracker_sparql_literal_binding_new (); 10434 #line 1100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10435 binding = _tmp90_; 10436 #line 1101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10437 _tmp91_ = binding; 10438 #line 1101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10439 _tmp92_ = tracker_sparql_expression_get_last_string (self, 0); 10440 #line 1101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10441 _g_free0 (_tmp91_->literal); 10442 #line 1101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10443 _tmp91_->literal = _tmp92_; 10444 #line 1102 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10445 _tmp93_ = binding; 10446 #line 1102 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10447 ((TrackerSparqlDataBinding*) _tmp93_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 10448 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10449 _tmp94_ = self->priv->query; 10450 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10451 _tmp95_ = binding; 10452 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10453 _tmp96_ = _g_object_ref0 (_tmp95_); 10454 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10455 _tmp94_->bindings = g_list_append (_tmp94_->bindings, _tmp96_); 10456 #line 1095 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10457 _g_object_unref0 (binding); 10458 #line 10457 "tracker-sparql-expression.c" 10459 } 10460 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10461 result = TRACKER_PROPERTY_TYPE_INTEGER; 10462 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10463 return result; 10464 #line 10463 "tracker-sparql-expression.c" 10465 } 10466 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10467 case TRACKER_SPARQL_TOKEN_TYPE_VAR: 10468 #line 10467 "tracker-sparql-expression.c" 10469 { 10470 gchar* _tmp97_ = NULL; 10471 gchar* _tmp98_; 10472 gchar* _tmp99_ = NULL; 10473 gchar* _tmp100_; 10474 gchar* variable_name; 10475 TrackerSparqlContext* _tmp101_; 10476 TrackerSparqlContext* _tmp102_; 10477 const gchar* _tmp103_; 10478 TrackerSparqlVariable* _tmp104_ = NULL; 10479 TrackerSparqlVariable* _tmp105_; 10480 TrackerSparqlVariable* variable; 10481 GString* _tmp106_; 10482 TrackerSparqlVariable* _tmp107_; 10483 const gchar* _tmp108_; 10484 const gchar* _tmp109_; 10485 TrackerSparqlVariable* _tmp110_; 10486 TrackerSparqlVariableBinding* _tmp111_; 10487 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10488 tracker_sparql_expression_next (self, &_inner_error_); 10489 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10490 if (_inner_error_ != NULL) { 10491 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10492 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10493 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10494 g_propagate_error (error, _inner_error_); 10495 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10496 return 0; 10497 #line 10496 "tracker-sparql-expression.c" 10498 } else { 10499 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10500 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10501 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10502 g_clear_error (&_inner_error_); 10503 #line 1108 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10504 return 0; 10505 #line 10504 "tracker-sparql-expression.c" 10506 } 10507 } 10508 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10509 _tmp97_ = tracker_sparql_expression_get_last_string (self, 0); 10510 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10511 _tmp98_ = _tmp97_; 10512 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10513 _tmp99_ = string_substring (_tmp98_, (glong) 1, (glong) (-1)); 10514 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10515 _tmp100_ = _tmp99_; 10516 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10517 _g_free0 (_tmp98_); 10518 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10519 variable_name = _tmp100_; 10520 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10521 _tmp101_ = tracker_sparql_expression_get_context (self); 10522 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10523 _tmp102_ = _tmp101_; 10524 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10525 _tmp103_ = variable_name; 10526 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10527 _tmp104_ = tracker_sparql_context_get_variable (_tmp102_, _tmp103_); 10528 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10529 _tmp105_ = _g_object_ref0 (_tmp104_); 10530 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10531 variable = _tmp105_; 10532 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10533 _tmp106_ = sql; 10534 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10535 _tmp107_ = variable; 10536 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10537 _tmp108_ = tracker_sparql_variable_get_sql_expression (_tmp107_); 10538 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10539 _tmp109_ = _tmp108_; 10540 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10541 g_string_append (_tmp106_, _tmp109_); 10542 #line 1113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10543 _tmp110_ = variable; 10544 #line 1113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10545 _tmp111_ = _tmp110_->binding; 10546 #line 1113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10547 if (_tmp111_ == NULL) { 10548 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10549 result = TRACKER_PROPERTY_TYPE_UNKNOWN; 10550 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10551 _g_object_unref0 (variable); 10552 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10553 _g_free0 (variable_name); 10554 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10555 return result; 10556 #line 10555 "tracker-sparql-expression.c" 10557 } else { 10558 TrackerSparqlVariable* _tmp112_; 10559 TrackerSparqlVariableBinding* _tmp113_; 10560 TrackerPropertyType _tmp114_; 10561 TrackerSparqlVariable* _tmp116_; 10562 TrackerSparqlVariableBinding* _tmp117_; 10563 TrackerPropertyType _tmp118_; 10564 #line 1116 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10565 _tmp112_ = variable; 10566 #line 1116 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10567 _tmp113_ = _tmp112_->binding; 10568 #line 1116 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10569 _tmp114_ = ((TrackerSparqlDataBinding*) _tmp113_)->data_type; 10570 #line 1116 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10571 if (_tmp114_ == TRACKER_PROPERTY_TYPE_STRING) { 10572 #line 10571 "tracker-sparql-expression.c" 10573 GString* _tmp115_; 10574 #line 1117 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10575 _tmp115_ = sql; 10576 #line 1117 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10577 tracker_sparql_expression_append_collate (self, _tmp115_); 10578 #line 10577 "tracker-sparql-expression.c" 10579 } 10580 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10581 _tmp116_ = variable; 10582 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10583 _tmp117_ = _tmp116_->binding; 10584 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10585 _tmp118_ = ((TrackerSparqlDataBinding*) _tmp117_)->data_type; 10586 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10587 result = _tmp118_; 10588 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10589 _g_object_unref0 (variable); 10590 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10591 _g_free0 (variable_name); 10592 #line 1119 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10593 return result; 10594 #line 10593 "tracker-sparql-expression.c" 10595 } 10596 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10597 _g_object_unref0 (variable); 10598 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10599 _g_free0 (variable_name); 10600 #line 10599 "tracker-sparql-expression.c" 10601 } 10602 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10603 case TRACKER_SPARQL_TOKEN_TYPE_STR: 10604 #line 10603 "tracker-sparql-expression.c" 10605 { 10606 GString* _tmp119_; 10607 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10608 _tmp119_ = sql; 10609 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10610 tracker_sparql_expression_translate_str (self, _tmp119_, &_inner_error_); 10611 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10612 if (_inner_error_ != NULL) { 10613 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10614 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10615 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10616 g_propagate_error (error, _inner_error_); 10617 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10618 return 0; 10619 #line 10618 "tracker-sparql-expression.c" 10620 } else { 10621 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10622 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10623 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10624 g_clear_error (&_inner_error_); 10625 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10626 return 0; 10627 #line 10626 "tracker-sparql-expression.c" 10628 } 10629 } 10630 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10631 result = TRACKER_PROPERTY_TYPE_STRING; 10632 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10633 return result; 10634 #line 10633 "tracker-sparql-expression.c" 10635 } 10636 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10637 case TRACKER_SPARQL_TOKEN_TYPE_LANG: 10638 #line 10637 "tracker-sparql-expression.c" 10639 { 10640 GString* _tmp120_; 10641 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10642 tracker_sparql_expression_next (self, &_inner_error_); 10643 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10644 if (_inner_error_ != NULL) { 10645 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10646 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10647 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10648 g_propagate_error (error, _inner_error_); 10649 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10650 return 0; 10651 #line 10650 "tracker-sparql-expression.c" 10652 } else { 10653 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10654 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10655 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10656 g_clear_error (&_inner_error_); 10657 #line 1125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10658 return 0; 10659 #line 10658 "tracker-sparql-expression.c" 10660 } 10661 } 10662 #line 1126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10663 _tmp120_ = sql; 10664 #line 1126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10665 g_string_append (_tmp120_, "''"); 10666 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10667 result = TRACKER_PROPERTY_TYPE_STRING; 10668 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10669 return result; 10670 #line 10669 "tracker-sparql-expression.c" 10671 } 10672 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10673 case TRACKER_SPARQL_TOKEN_TYPE_LANGMATCHES: 10674 #line 10673 "tracker-sparql-expression.c" 10675 { 10676 GString* _tmp121_; 10677 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10678 tracker_sparql_expression_next (self, &_inner_error_); 10679 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10680 if (_inner_error_ != NULL) { 10681 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10682 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10683 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10684 g_propagate_error (error, _inner_error_); 10685 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10686 return 0; 10687 #line 10686 "tracker-sparql-expression.c" 10688 } else { 10689 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10690 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10691 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10692 g_clear_error (&_inner_error_); 10693 #line 1129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10694 return 0; 10695 #line 10694 "tracker-sparql-expression.c" 10696 } 10697 } 10698 #line 1130 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10699 _tmp121_ = sql; 10700 #line 1130 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10701 g_string_append (_tmp121_, "0"); 10702 #line 1131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10703 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 10704 #line 1131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10705 return result; 10706 #line 10705 "tracker-sparql-expression.c" 10707 } 10708 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10709 case TRACKER_SPARQL_TOKEN_TYPE_DATATYPE: 10710 #line 10709 "tracker-sparql-expression.c" 10711 { 10712 GString* _tmp122_; 10713 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10714 _tmp122_ = sql; 10715 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10716 tracker_sparql_expression_translate_datatype (self, _tmp122_, &_inner_error_); 10717 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10718 if (_inner_error_ != NULL) { 10719 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10720 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10721 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10722 g_propagate_error (error, _inner_error_); 10723 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10724 return 0; 10725 #line 10724 "tracker-sparql-expression.c" 10726 } else { 10727 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10728 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10729 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10730 g_clear_error (&_inner_error_); 10731 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10732 return 0; 10733 #line 10732 "tracker-sparql-expression.c" 10734 } 10735 } 10736 #line 1134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10737 result = TRACKER_PROPERTY_TYPE_RESOURCE; 10738 #line 1134 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10739 return result; 10740 #line 10739 "tracker-sparql-expression.c" 10741 } 10742 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10743 case TRACKER_SPARQL_TOKEN_TYPE_BOUND: 10744 #line 10743 "tracker-sparql-expression.c" 10745 { 10746 GString* _tmp123_; 10747 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10748 _tmp123_ = sql; 10749 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10750 tracker_sparql_expression_translate_bound_call (self, _tmp123_, &_inner_error_); 10751 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10752 if (_inner_error_ != NULL) { 10753 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10754 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10755 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10756 g_propagate_error (error, _inner_error_); 10757 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10758 return 0; 10759 #line 10758 "tracker-sparql-expression.c" 10760 } else { 10761 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10762 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10763 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10764 g_clear_error (&_inner_error_); 10765 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10766 return 0; 10767 #line 10766 "tracker-sparql-expression.c" 10768 } 10769 } 10770 #line 1137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10771 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 10772 #line 1137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10773 return result; 10774 #line 10773 "tracker-sparql-expression.c" 10775 } 10776 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10777 case TRACKER_SPARQL_TOKEN_TYPE_COALESCE: 10778 #line 10777 "tracker-sparql-expression.c" 10779 { 10780 GString* _tmp124_; 10781 TrackerPropertyType _tmp125_ = 0; 10782 TrackerPropertyType _result_; 10783 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10784 tracker_sparql_expression_next (self, &_inner_error_); 10785 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10786 if (_inner_error_ != NULL) { 10787 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10788 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10789 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10790 g_propagate_error (error, _inner_error_); 10791 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10792 return 0; 10793 #line 10792 "tracker-sparql-expression.c" 10794 } else { 10795 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10796 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10797 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10798 g_clear_error (&_inner_error_); 10799 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10800 return 0; 10801 #line 10800 "tracker-sparql-expression.c" 10802 } 10803 } 10804 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10805 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 10806 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10807 if (_inner_error_ != NULL) { 10808 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10809 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10810 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10811 g_propagate_error (error, _inner_error_); 10812 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10813 return 0; 10814 #line 10813 "tracker-sparql-expression.c" 10815 } else { 10816 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10817 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10818 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10819 g_clear_error (&_inner_error_); 10820 #line 1140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10821 return 0; 10822 #line 10821 "tracker-sparql-expression.c" 10823 } 10824 } 10825 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10826 _tmp124_ = sql; 10827 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10828 _tmp125_ = tracker_sparql_expression_translate_function (self, _tmp124_, TRACKER_SPARQL_EXPRESSION_TRACKER_NS "coalesce", &_inner_error_); 10829 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10830 _result_ = _tmp125_; 10831 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10832 if (_inner_error_ != NULL) { 10833 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10834 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10835 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10836 g_propagate_error (error, _inner_error_); 10837 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10838 return 0; 10839 #line 10838 "tracker-sparql-expression.c" 10840 } else { 10841 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10842 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10843 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10844 g_clear_error (&_inner_error_); 10845 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10846 return 0; 10847 #line 10846 "tracker-sparql-expression.c" 10848 } 10849 } 10850 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10851 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 10852 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10853 if (_inner_error_ != NULL) { 10854 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10855 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10856 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10857 g_propagate_error (error, _inner_error_); 10858 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10859 return 0; 10860 #line 10859 "tracker-sparql-expression.c" 10861 } else { 10862 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10863 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10864 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10865 g_clear_error (&_inner_error_); 10866 #line 1142 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10867 return 0; 10868 #line 10867 "tracker-sparql-expression.c" 10869 } 10870 } 10871 #line 1143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10872 result = _result_; 10873 #line 1143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10874 return result; 10875 #line 10874 "tracker-sparql-expression.c" 10876 } 10877 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10878 case TRACKER_SPARQL_TOKEN_TYPE_IF: 10879 #line 10878 "tracker-sparql-expression.c" 10880 { 10881 GString* _tmp126_; 10882 TrackerPropertyType _tmp127_ = 0; 10883 TrackerPropertyType _tmp128_; 10884 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10885 _tmp126_ = sql; 10886 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10887 _tmp127_ = tracker_sparql_expression_translate_if_call (self, _tmp126_, &_inner_error_); 10888 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10889 _tmp128_ = _tmp127_; 10890 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10891 if (_inner_error_ != NULL) { 10892 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10893 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10894 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10895 g_propagate_error (error, _inner_error_); 10896 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10897 return 0; 10898 #line 10897 "tracker-sparql-expression.c" 10899 } else { 10900 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10901 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10902 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10903 g_clear_error (&_inner_error_); 10904 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10905 return 0; 10906 #line 10905 "tracker-sparql-expression.c" 10907 } 10908 } 10909 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10910 result = _tmp128_; 10911 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10912 return result; 10913 #line 10912 "tracker-sparql-expression.c" 10914 } 10915 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10916 case TRACKER_SPARQL_TOKEN_TYPE_SAMETERM: 10917 #line 10916 "tracker-sparql-expression.c" 10918 { 10919 GString* _tmp129_; 10920 GString* _tmp130_; 10921 GString* _tmp131_; 10922 GString* _tmp132_; 10923 GString* _tmp133_; 10924 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10925 tracker_sparql_expression_next (self, &_inner_error_); 10926 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10927 if (_inner_error_ != NULL) { 10928 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10929 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10930 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10931 g_propagate_error (error, _inner_error_); 10932 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10933 return 0; 10934 #line 10933 "tracker-sparql-expression.c" 10935 } else { 10936 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10937 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10938 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10939 g_clear_error (&_inner_error_); 10940 #line 1147 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10941 return 0; 10942 #line 10941 "tracker-sparql-expression.c" 10943 } 10944 } 10945 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10946 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 10947 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10948 if (_inner_error_ != NULL) { 10949 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10950 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10951 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10952 g_propagate_error (error, _inner_error_); 10953 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10954 return 0; 10955 #line 10954 "tracker-sparql-expression.c" 10956 } else { 10957 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10958 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10959 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10960 g_clear_error (&_inner_error_); 10961 #line 1148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10962 return 0; 10963 #line 10962 "tracker-sparql-expression.c" 10964 } 10965 } 10966 #line 1149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10967 _tmp129_ = sql; 10968 #line 1149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10969 g_string_append (_tmp129_, "("); 10970 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10971 _tmp130_ = sql; 10972 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10973 tracker_sparql_expression_translate_expression (self, _tmp130_, &_inner_error_); 10974 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10975 if (_inner_error_ != NULL) { 10976 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10977 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10978 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10979 g_propagate_error (error, _inner_error_); 10980 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10981 return 0; 10982 #line 10981 "tracker-sparql-expression.c" 10983 } else { 10984 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10985 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10986 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10987 g_clear_error (&_inner_error_); 10988 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10989 return 0; 10990 #line 10989 "tracker-sparql-expression.c" 10991 } 10992 } 10993 #line 1151 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10994 _tmp131_ = sql; 10995 #line 1151 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10996 g_string_append (_tmp131_, " = "); 10997 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 10998 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 10999 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11000 if (_inner_error_ != NULL) { 11001 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11002 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11003 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11004 g_propagate_error (error, _inner_error_); 11005 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11006 return 0; 11007 #line 11006 "tracker-sparql-expression.c" 11008 } else { 11009 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11010 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11011 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11012 g_clear_error (&_inner_error_); 11013 #line 1152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11014 return 0; 11015 #line 11014 "tracker-sparql-expression.c" 11016 } 11017 } 11018 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11019 _tmp132_ = sql; 11020 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11021 tracker_sparql_expression_translate_expression (self, _tmp132_, &_inner_error_); 11022 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11023 if (_inner_error_ != NULL) { 11024 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11025 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11026 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11027 g_propagate_error (error, _inner_error_); 11028 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11029 return 0; 11030 #line 11029 "tracker-sparql-expression.c" 11031 } else { 11032 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11033 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11034 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11035 g_clear_error (&_inner_error_); 11036 #line 1153 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11037 return 0; 11038 #line 11037 "tracker-sparql-expression.c" 11039 } 11040 } 11041 #line 1154 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11042 _tmp133_ = sql; 11043 #line 1154 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11044 g_string_append (_tmp133_, ")"); 11045 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11046 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 11047 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11048 if (_inner_error_ != NULL) { 11049 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11050 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11051 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11052 g_propagate_error (error, _inner_error_); 11053 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11054 return 0; 11055 #line 11054 "tracker-sparql-expression.c" 11056 } else { 11057 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11058 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11059 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11060 g_clear_error (&_inner_error_); 11061 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11062 return 0; 11063 #line 11062 "tracker-sparql-expression.c" 11064 } 11065 } 11066 #line 1156 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11067 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11068 #line 1156 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11069 return result; 11070 #line 11069 "tracker-sparql-expression.c" 11071 } 11072 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11073 case TRACKER_SPARQL_TOKEN_TYPE_ISIRI: 11074 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11075 case TRACKER_SPARQL_TOKEN_TYPE_ISURI: 11076 #line 11075 "tracker-sparql-expression.c" 11077 { 11078 GString* _tmp134_; 11079 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11080 _tmp134_ = sql; 11081 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11082 tracker_sparql_expression_translate_isuri (self, _tmp134_, &_inner_error_); 11083 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11084 if (_inner_error_ != NULL) { 11085 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11086 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11087 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11088 g_propagate_error (error, _inner_error_); 11089 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11090 return 0; 11091 #line 11090 "tracker-sparql-expression.c" 11092 } else { 11093 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11094 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11095 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11096 g_clear_error (&_inner_error_); 11097 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11098 return 0; 11099 #line 11098 "tracker-sparql-expression.c" 11100 } 11101 } 11102 #line 1160 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11103 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11104 #line 1160 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11105 return result; 11106 #line 11105 "tracker-sparql-expression.c" 11107 } 11108 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11109 case TRACKER_SPARQL_TOKEN_TYPE_ISBLANK: 11110 #line 11109 "tracker-sparql-expression.c" 11111 { 11112 GString* _tmp135_; 11113 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11114 tracker_sparql_expression_next (self, &_inner_error_); 11115 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11116 if (_inner_error_ != NULL) { 11117 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11118 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11119 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11120 g_propagate_error (error, _inner_error_); 11121 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11122 return 0; 11123 #line 11122 "tracker-sparql-expression.c" 11124 } else { 11125 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11126 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11127 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11128 g_clear_error (&_inner_error_); 11129 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11130 return 0; 11131 #line 11130 "tracker-sparql-expression.c" 11132 } 11133 } 11134 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11135 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 11136 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11137 if (_inner_error_ != NULL) { 11138 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11139 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11140 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11141 g_propagate_error (error, _inner_error_); 11142 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11143 return 0; 11144 #line 11143 "tracker-sparql-expression.c" 11145 } else { 11146 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11147 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11148 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11149 g_clear_error (&_inner_error_); 11150 #line 1163 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11151 return 0; 11152 #line 11151 "tracker-sparql-expression.c" 11153 } 11154 } 11155 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11156 tracker_sparql_expression_next (self, &_inner_error_); 11157 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11158 if (_inner_error_ != NULL) { 11159 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11160 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11161 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11162 g_propagate_error (error, _inner_error_); 11163 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11164 return 0; 11165 #line 11164 "tracker-sparql-expression.c" 11166 } else { 11167 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11168 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11169 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11170 g_clear_error (&_inner_error_); 11171 #line 1164 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11172 return 0; 11173 #line 11172 "tracker-sparql-expression.c" 11174 } 11175 } 11176 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11177 _tmp135_ = sql; 11178 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11179 g_string_append (_tmp135_, "0"); 11180 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11181 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 11182 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11183 if (_inner_error_ != NULL) { 11184 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11185 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11186 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11187 g_propagate_error (error, _inner_error_); 11188 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11189 return 0; 11190 #line 11189 "tracker-sparql-expression.c" 11191 } else { 11192 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11193 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11194 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11195 g_clear_error (&_inner_error_); 11196 #line 1167 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11197 return 0; 11198 #line 11197 "tracker-sparql-expression.c" 11199 } 11200 } 11201 #line 1168 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11202 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11203 #line 1168 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11204 return result; 11205 #line 11204 "tracker-sparql-expression.c" 11206 } 11207 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11208 case TRACKER_SPARQL_TOKEN_TYPE_ISLITERAL: 11209 #line 11208 "tracker-sparql-expression.c" 11210 { 11211 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11212 tracker_sparql_expression_next (self, &_inner_error_); 11213 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11214 if (_inner_error_ != NULL) { 11215 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11216 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11217 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11218 g_propagate_error (error, _inner_error_); 11219 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11220 return 0; 11221 #line 11220 "tracker-sparql-expression.c" 11222 } else { 11223 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11224 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11225 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11226 g_clear_error (&_inner_error_); 11227 #line 1170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11228 return 0; 11229 #line 11228 "tracker-sparql-expression.c" 11230 } 11231 } 11232 #line 1171 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11233 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11234 #line 1171 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11235 return result; 11236 #line 11235 "tracker-sparql-expression.c" 11237 } 11238 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11239 case TRACKER_SPARQL_TOKEN_TYPE_REGEX: 11240 #line 11239 "tracker-sparql-expression.c" 11241 { 11242 GString* _tmp136_; 11243 TrackerSparqlQuery* _tmp137_; 11244 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11245 _tmp136_ = sql; 11246 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11247 tracker_sparql_expression_translate_regex (self, _tmp136_, &_inner_error_); 11248 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11249 if (_inner_error_ != NULL) { 11250 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11251 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11252 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11253 g_propagate_error (error, _inner_error_); 11254 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11255 return 0; 11256 #line 11255 "tracker-sparql-expression.c" 11257 } else { 11258 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11259 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11260 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11261 g_clear_error (&_inner_error_); 11262 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11263 return 0; 11264 #line 11263 "tracker-sparql-expression.c" 11265 } 11266 } 11267 #line 1174 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11268 _tmp137_ = self->priv->query; 11269 #line 1174 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11270 tracker_sparql_query_set_no_cache (_tmp137_, TRUE); 11271 #line 1175 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11272 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11273 #line 1175 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11274 return result; 11275 #line 11274 "tracker-sparql-expression.c" 11276 } 11277 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11278 case TRACKER_SPARQL_TOKEN_TYPE_EXISTS: 11279 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11280 case TRACKER_SPARQL_TOKEN_TYPE_NOT: 11281 #line 11280 "tracker-sparql-expression.c" 11282 { 11283 GString* _tmp138_; 11284 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11285 _tmp138_ = sql; 11286 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11287 tracker_sparql_expression_translate_exists (self, _tmp138_, &_inner_error_); 11288 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11289 if (_inner_error_ != NULL) { 11290 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11291 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11292 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11293 g_propagate_error (error, _inner_error_); 11294 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11295 return 0; 11296 #line 11295 "tracker-sparql-expression.c" 11297 } else { 11298 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11299 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11300 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11301 g_clear_error (&_inner_error_); 11302 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11303 return 0; 11304 #line 11303 "tracker-sparql-expression.c" 11305 } 11306 } 11307 #line 1179 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11308 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 11309 #line 1179 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11310 return result; 11311 #line 11310 "tracker-sparql-expression.c" 11312 } 11313 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11314 case TRACKER_SPARQL_TOKEN_TYPE_COUNT: 11315 #line 11314 "tracker-sparql-expression.c" 11316 { 11317 GString* _tmp139_; 11318 GString* _tmp140_; 11319 GString* _tmp141_; 11320 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11321 tracker_sparql_expression_next (self, &_inner_error_); 11322 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11323 if (_inner_error_ != NULL) { 11324 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11325 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11326 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11327 g_propagate_error (error, _inner_error_); 11328 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11329 return 0; 11330 #line 11329 "tracker-sparql-expression.c" 11331 } else { 11332 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11333 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11334 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11335 g_clear_error (&_inner_error_); 11336 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11337 return 0; 11338 #line 11337 "tracker-sparql-expression.c" 11339 } 11340 } 11341 #line 1182 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11342 _tmp139_ = sql; 11343 #line 1182 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11344 g_string_append (_tmp139_, "COUNT("); 11345 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11346 _tmp140_ = sql; 11347 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11348 tracker_sparql_expression_translate_aggregate_expression (self, _tmp140_, &_inner_error_); 11349 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11350 if (_inner_error_ != NULL) { 11351 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11352 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11353 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11354 g_propagate_error (error, _inner_error_); 11355 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11356 return 0; 11357 #line 11356 "tracker-sparql-expression.c" 11358 } else { 11359 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11360 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11361 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11362 g_clear_error (&_inner_error_); 11363 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11364 return 0; 11365 #line 11364 "tracker-sparql-expression.c" 11366 } 11367 } 11368 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11369 _tmp141_ = sql; 11370 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11371 g_string_append (_tmp141_, ")"); 11372 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11373 result = TRACKER_PROPERTY_TYPE_INTEGER; 11374 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11375 return result; 11376 #line 11375 "tracker-sparql-expression.c" 11377 } 11378 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11379 case TRACKER_SPARQL_TOKEN_TYPE_SUM: 11380 #line 11379 "tracker-sparql-expression.c" 11381 { 11382 GString* _tmp142_; 11383 GString* _tmp143_; 11384 TrackerPropertyType _tmp144_ = 0; 11385 TrackerPropertyType _tmp145_; 11386 GString* _tmp146_; 11387 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11388 tracker_sparql_expression_next (self, &_inner_error_); 11389 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11390 if (_inner_error_ != NULL) { 11391 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11392 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11393 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11394 g_propagate_error (error, _inner_error_); 11395 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11396 return 0; 11397 #line 11396 "tracker-sparql-expression.c" 11398 } else { 11399 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11400 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11401 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11402 g_clear_error (&_inner_error_); 11403 #line 1187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11404 return 0; 11405 #line 11404 "tracker-sparql-expression.c" 11406 } 11407 } 11408 #line 1188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11409 _tmp142_ = sql; 11410 #line 1188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11411 g_string_append (_tmp142_, "SUM("); 11412 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11413 _tmp143_ = sql; 11414 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11415 _tmp144_ = tracker_sparql_expression_translate_aggregate_expression (self, _tmp143_, &_inner_error_); 11416 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11417 _tmp145_ = _tmp144_; 11418 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11419 if (_inner_error_ != NULL) { 11420 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11421 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11422 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11423 g_propagate_error (error, _inner_error_); 11424 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11425 return 0; 11426 #line 11425 "tracker-sparql-expression.c" 11427 } else { 11428 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11429 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11430 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11431 g_clear_error (&_inner_error_); 11432 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11433 return 0; 11434 #line 11433 "tracker-sparql-expression.c" 11435 } 11436 } 11437 #line 1189 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11438 type = _tmp145_; 11439 #line 1190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11440 _tmp146_ = sql; 11441 #line 1190 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11442 g_string_append (_tmp146_, ")"); 11443 #line 1191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11444 result = type; 11445 #line 1191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11446 return result; 11447 #line 11446 "tracker-sparql-expression.c" 11448 } 11449 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11450 case TRACKER_SPARQL_TOKEN_TYPE_AVG: 11451 #line 11450 "tracker-sparql-expression.c" 11452 { 11453 GString* _tmp147_; 11454 GString* _tmp148_; 11455 TrackerPropertyType _tmp149_ = 0; 11456 TrackerPropertyType _tmp150_; 11457 GString* _tmp151_; 11458 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11459 tracker_sparql_expression_next (self, &_inner_error_); 11460 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11461 if (_inner_error_ != NULL) { 11462 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11463 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11464 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11465 g_propagate_error (error, _inner_error_); 11466 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11467 return 0; 11468 #line 11467 "tracker-sparql-expression.c" 11469 } else { 11470 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11471 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11472 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11473 g_clear_error (&_inner_error_); 11474 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11475 return 0; 11476 #line 11475 "tracker-sparql-expression.c" 11477 } 11478 } 11479 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11480 _tmp147_ = sql; 11481 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11482 g_string_append (_tmp147_, "AVG("); 11483 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11484 _tmp148_ = sql; 11485 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11486 _tmp149_ = tracker_sparql_expression_translate_aggregate_expression (self, _tmp148_, &_inner_error_); 11487 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11488 _tmp150_ = _tmp149_; 11489 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11490 if (_inner_error_ != NULL) { 11491 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11492 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11493 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11494 g_propagate_error (error, _inner_error_); 11495 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11496 return 0; 11497 #line 11496 "tracker-sparql-expression.c" 11498 } else { 11499 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11500 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11501 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11502 g_clear_error (&_inner_error_); 11503 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11504 return 0; 11505 #line 11504 "tracker-sparql-expression.c" 11506 } 11507 } 11508 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11509 type = _tmp150_; 11510 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11511 _tmp151_ = sql; 11512 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11513 g_string_append (_tmp151_, ")"); 11514 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11515 result = type; 11516 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11517 return result; 11518 #line 11517 "tracker-sparql-expression.c" 11519 } 11520 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11521 case TRACKER_SPARQL_TOKEN_TYPE_MIN: 11522 #line 11521 "tracker-sparql-expression.c" 11523 { 11524 GString* _tmp152_; 11525 GString* _tmp153_; 11526 TrackerPropertyType _tmp154_ = 0; 11527 TrackerPropertyType _tmp155_; 11528 GString* _tmp156_; 11529 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11530 tracker_sparql_expression_next (self, &_inner_error_); 11531 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11532 if (_inner_error_ != NULL) { 11533 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11534 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11535 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11536 g_propagate_error (error, _inner_error_); 11537 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11538 return 0; 11539 #line 11538 "tracker-sparql-expression.c" 11540 } else { 11541 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11542 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11543 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11544 g_clear_error (&_inner_error_); 11545 #line 1199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11546 return 0; 11547 #line 11546 "tracker-sparql-expression.c" 11548 } 11549 } 11550 #line 1200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11551 _tmp152_ = sql; 11552 #line 1200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11553 g_string_append (_tmp152_, "MIN("); 11554 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11555 _tmp153_ = sql; 11556 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11557 _tmp154_ = tracker_sparql_expression_translate_aggregate_expression (self, _tmp153_, &_inner_error_); 11558 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11559 _tmp155_ = _tmp154_; 11560 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11561 if (_inner_error_ != NULL) { 11562 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11563 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11564 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11565 g_propagate_error (error, _inner_error_); 11566 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11567 return 0; 11568 #line 11567 "tracker-sparql-expression.c" 11569 } else { 11570 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11571 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11572 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11573 g_clear_error (&_inner_error_); 11574 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11575 return 0; 11576 #line 11575 "tracker-sparql-expression.c" 11577 } 11578 } 11579 #line 1201 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11580 type = _tmp155_; 11581 #line 1202 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11582 _tmp156_ = sql; 11583 #line 1202 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11584 g_string_append (_tmp156_, ")"); 11585 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11586 result = type; 11587 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11588 return result; 11589 #line 11588 "tracker-sparql-expression.c" 11590 } 11591 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11592 case TRACKER_SPARQL_TOKEN_TYPE_MAX: 11593 #line 11592 "tracker-sparql-expression.c" 11594 { 11595 GString* _tmp157_; 11596 GString* _tmp158_; 11597 TrackerPropertyType _tmp159_ = 0; 11598 TrackerPropertyType _tmp160_; 11599 GString* _tmp161_; 11600 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11601 tracker_sparql_expression_next (self, &_inner_error_); 11602 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11603 if (_inner_error_ != NULL) { 11604 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11605 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11606 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11607 g_propagate_error (error, _inner_error_); 11608 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11609 return 0; 11610 #line 11609 "tracker-sparql-expression.c" 11611 } else { 11612 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11613 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11614 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11615 g_clear_error (&_inner_error_); 11616 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11617 return 0; 11618 #line 11617 "tracker-sparql-expression.c" 11619 } 11620 } 11621 #line 1206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11622 _tmp157_ = sql; 11623 #line 1206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11624 g_string_append (_tmp157_, "MAX("); 11625 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11626 _tmp158_ = sql; 11627 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11628 _tmp159_ = tracker_sparql_expression_translate_aggregate_expression (self, _tmp158_, &_inner_error_); 11629 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11630 _tmp160_ = _tmp159_; 11631 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11632 if (_inner_error_ != NULL) { 11633 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11634 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11635 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11636 g_propagate_error (error, _inner_error_); 11637 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11638 return 0; 11639 #line 11638 "tracker-sparql-expression.c" 11640 } else { 11641 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11642 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11643 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11644 g_clear_error (&_inner_error_); 11645 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11646 return 0; 11647 #line 11646 "tracker-sparql-expression.c" 11648 } 11649 } 11650 #line 1207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11651 type = _tmp160_; 11652 #line 1208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11653 _tmp161_ = sql; 11654 #line 1208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11655 g_string_append (_tmp161_, ")"); 11656 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11657 result = type; 11658 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11659 return result; 11660 #line 11659 "tracker-sparql-expression.c" 11661 } 11662 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11663 case TRACKER_SPARQL_TOKEN_TYPE_GROUP_CONCAT: 11664 #line 11663 "tracker-sparql-expression.c" 11665 { 11666 GString* _tmp162_; 11667 GString* _tmp163_; 11668 GString* _tmp164_; 11669 gchar* _tmp165_ = NULL; 11670 gchar* _tmp166_; 11671 GString* _tmp167_; 11672 gchar* _tmp168_; 11673 gchar* _tmp169_ = NULL; 11674 gchar* _tmp170_; 11675 GString* _tmp171_; 11676 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11677 tracker_sparql_expression_next (self, &_inner_error_); 11678 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11679 if (_inner_error_ != NULL) { 11680 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11681 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11682 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11683 g_propagate_error (error, _inner_error_); 11684 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11685 return 0; 11686 #line 11685 "tracker-sparql-expression.c" 11687 } else { 11688 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11689 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11690 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11691 g_clear_error (&_inner_error_); 11692 #line 1211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11693 return 0; 11694 #line 11693 "tracker-sparql-expression.c" 11695 } 11696 } 11697 #line 1212 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11698 _tmp162_ = sql; 11699 #line 1212 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11700 g_string_append (_tmp162_, "GROUP_CONCAT("); 11701 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11702 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 11703 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11704 if (_inner_error_ != NULL) { 11705 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11706 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11707 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11708 g_propagate_error (error, _inner_error_); 11709 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11710 return 0; 11711 #line 11710 "tracker-sparql-expression.c" 11712 } else { 11713 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11714 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11715 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11716 g_clear_error (&_inner_error_); 11717 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11718 return 0; 11719 #line 11718 "tracker-sparql-expression.c" 11720 } 11721 } 11722 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11723 _tmp163_ = sql; 11724 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11725 tracker_sparql_expression_translate_expression_as_string (self, _tmp163_, &_inner_error_); 11726 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11727 if (_inner_error_ != NULL) { 11728 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11729 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11730 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11731 g_propagate_error (error, _inner_error_); 11732 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11733 return 0; 11734 #line 11733 "tracker-sparql-expression.c" 11735 } else { 11736 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11737 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11738 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11739 g_clear_error (&_inner_error_); 11740 #line 1214 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11741 return 0; 11742 #line 11741 "tracker-sparql-expression.c" 11743 } 11744 } 11745 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11746 _tmp164_ = sql; 11747 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11748 g_string_append (_tmp164_, ", "); 11749 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11750 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 11751 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11752 if (_inner_error_ != NULL) { 11753 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11754 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11755 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11756 g_propagate_error (error, _inner_error_); 11757 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11758 return 0; 11759 #line 11758 "tracker-sparql-expression.c" 11760 } else { 11761 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11762 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11763 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11764 g_clear_error (&_inner_error_); 11765 #line 1216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11766 return 0; 11767 #line 11766 "tracker-sparql-expression.c" 11768 } 11769 } 11770 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11771 _tmp165_ = tracker_sparql_expression_parse_string_literal (self, NULL, &_inner_error_); 11772 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11773 _tmp166_ = _tmp165_; 11774 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11775 if (_inner_error_ != NULL) { 11776 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11777 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11778 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11779 g_propagate_error (error, _inner_error_); 11780 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11781 return 0; 11782 #line 11781 "tracker-sparql-expression.c" 11783 } else { 11784 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11785 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11786 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11787 g_clear_error (&_inner_error_); 11788 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11789 return 0; 11790 #line 11789 "tracker-sparql-expression.c" 11791 } 11792 } 11793 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11794 _tmp167_ = sql; 11795 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11796 _tmp168_ = _tmp166_; 11797 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11798 _tmp169_ = tracker_sparql_expression_escape_sql_string_literal (self, _tmp168_); 11799 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11800 _tmp170_ = _tmp169_; 11801 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11802 g_string_append (_tmp167_, _tmp170_); 11803 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11804 _g_free0 (_tmp170_); 11805 #line 1217 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11806 _g_free0 (_tmp168_); 11807 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11808 _tmp171_ = sql; 11809 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11810 g_string_append (_tmp171_, ")"); 11811 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11812 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 11813 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11814 if (_inner_error_ != NULL) { 11815 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11816 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11817 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11818 g_propagate_error (error, _inner_error_); 11819 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11820 return 0; 11821 #line 11820 "tracker-sparql-expression.c" 11822 } else { 11823 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11824 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11825 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11826 g_clear_error (&_inner_error_); 11827 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11828 return 0; 11829 #line 11828 "tracker-sparql-expression.c" 11830 } 11831 } 11832 #line 1220 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11833 result = TRACKER_PROPERTY_TYPE_STRING; 11834 #line 1220 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11835 return result; 11836 #line 11835 "tracker-sparql-expression.c" 11837 } 11838 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11839 case TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX: 11840 #line 11839 "tracker-sparql-expression.c" 11841 { 11842 gchar* _tmp172_ = NULL; 11843 gchar* ns; 11844 TrackerSparqlQuery* _tmp173_; 11845 const gchar* _tmp174_; 11846 gchar* _tmp175_ = NULL; 11847 gchar* _tmp176_; 11848 gchar* _tmp177_ = NULL; 11849 gchar* _tmp178_; 11850 gchar* _tmp179_ = NULL; 11851 gchar* _tmp180_; 11852 gchar* uri; 11853 GString* _tmp181_; 11854 const gchar* _tmp182_; 11855 TrackerPropertyType _tmp183_ = 0; 11856 TrackerPropertyType _tmp184_; 11857 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11858 tracker_sparql_expression_next (self, &_inner_error_); 11859 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11860 if (_inner_error_ != NULL) { 11861 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11862 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11863 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11864 g_propagate_error (error, _inner_error_); 11865 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11866 return 0; 11867 #line 11866 "tracker-sparql-expression.c" 11868 } else { 11869 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11870 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11871 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11872 g_clear_error (&_inner_error_); 11873 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11874 return 0; 11875 #line 11874 "tracker-sparql-expression.c" 11876 } 11877 } 11878 #line 1223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11879 _tmp172_ = tracker_sparql_expression_get_last_string (self, 0); 11880 #line 1223 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11881 ns = _tmp172_; 11882 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11883 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 11884 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11885 if (_inner_error_ != NULL) { 11886 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11887 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11888 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11889 g_propagate_error (error, _inner_error_); 11890 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11891 _g_free0 (ns); 11892 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11893 return 0; 11894 #line 11893 "tracker-sparql-expression.c" 11895 } else { 11896 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11897 _g_free0 (ns); 11898 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11899 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11900 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11901 g_clear_error (&_inner_error_); 11902 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11903 return 0; 11904 #line 11903 "tracker-sparql-expression.c" 11905 } 11906 } 11907 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11908 _tmp173_ = self->priv->query; 11909 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11910 _tmp174_ = ns; 11911 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11912 _tmp175_ = tracker_sparql_expression_get_last_string (self, 0); 11913 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11914 _tmp176_ = _tmp175_; 11915 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11916 _tmp177_ = string_substring (_tmp176_, (glong) 1, (glong) (-1)); 11917 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11918 _tmp178_ = _tmp177_; 11919 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11920 _tmp179_ = tracker_sparql_query_resolve_prefixed_name (_tmp173_, _tmp174_, _tmp178_, &_inner_error_); 11921 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11922 _tmp180_ = _tmp179_; 11923 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11924 _g_free0 (_tmp178_); 11925 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11926 _g_free0 (_tmp176_); 11927 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11928 uri = _tmp180_; 11929 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11930 if (_inner_error_ != NULL) { 11931 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11932 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11933 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11934 g_propagate_error (error, _inner_error_); 11935 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11936 _g_free0 (ns); 11937 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11938 return 0; 11939 #line 11938 "tracker-sparql-expression.c" 11940 } else { 11941 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11942 _g_free0 (ns); 11943 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11944 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11945 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11946 g_clear_error (&_inner_error_); 11947 #line 1225 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11948 return 0; 11949 #line 11948 "tracker-sparql-expression.c" 11950 } 11951 } 11952 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11953 _tmp181_ = sql; 11954 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11955 _tmp182_ = uri; 11956 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11957 _tmp183_ = tracker_sparql_expression_translate_uri_expression (self, _tmp181_, _tmp182_, &_inner_error_); 11958 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11959 _tmp184_ = _tmp183_; 11960 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11961 if (_inner_error_ != NULL) { 11962 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11963 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11964 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11965 g_propagate_error (error, _inner_error_); 11966 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11967 _g_free0 (uri); 11968 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11969 _g_free0 (ns); 11970 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11971 return 0; 11972 #line 11971 "tracker-sparql-expression.c" 11973 } else { 11974 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11975 _g_free0 (uri); 11976 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11977 _g_free0 (ns); 11978 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11979 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11980 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11981 g_clear_error (&_inner_error_); 11982 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11983 return 0; 11984 #line 11983 "tracker-sparql-expression.c" 11985 } 11986 } 11987 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11988 result = _tmp184_; 11989 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11990 _g_free0 (uri); 11991 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11992 _g_free0 (ns); 11993 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11994 return result; 11995 #line 11994 "tracker-sparql-expression.c" 11996 } 11997 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 11998 case TRACKER_SPARQL_TOKEN_TYPE_COLON: 11999 #line 11998 "tracker-sparql-expression.c" 12000 { 12001 TrackerSparqlQuery* _tmp185_; 12002 gchar* _tmp186_ = NULL; 12003 gchar* _tmp187_; 12004 gchar* _tmp188_ = NULL; 12005 gchar* _tmp189_; 12006 gchar* _tmp190_ = NULL; 12007 gchar* _tmp191_; 12008 gchar* uri; 12009 GString* _tmp192_; 12010 const gchar* _tmp193_; 12011 TrackerPropertyType _tmp194_ = 0; 12012 TrackerPropertyType _tmp195_; 12013 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12014 tracker_sparql_expression_next (self, &_inner_error_); 12015 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12016 if (_inner_error_ != NULL) { 12017 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12018 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12019 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12020 g_propagate_error (error, _inner_error_); 12021 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12022 return 0; 12023 #line 12022 "tracker-sparql-expression.c" 12024 } else { 12025 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12026 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12027 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12028 g_clear_error (&_inner_error_); 12029 #line 1228 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12030 return 0; 12031 #line 12030 "tracker-sparql-expression.c" 12032 } 12033 } 12034 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12035 _tmp185_ = self->priv->query; 12036 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12037 _tmp186_ = tracker_sparql_expression_get_last_string (self, 0); 12038 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12039 _tmp187_ = _tmp186_; 12040 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12041 _tmp188_ = string_substring (_tmp187_, (glong) 1, (glong) (-1)); 12042 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12043 _tmp189_ = _tmp188_; 12044 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12045 _tmp190_ = tracker_sparql_query_resolve_prefixed_name (_tmp185_, "", _tmp189_, &_inner_error_); 12046 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12047 _tmp191_ = _tmp190_; 12048 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12049 _g_free0 (_tmp189_); 12050 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12051 _g_free0 (_tmp187_); 12052 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12053 uri = _tmp191_; 12054 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12055 if (_inner_error_ != NULL) { 12056 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12057 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12058 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12059 g_propagate_error (error, _inner_error_); 12060 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12061 return 0; 12062 #line 12061 "tracker-sparql-expression.c" 12063 } else { 12064 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12065 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12066 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12067 g_clear_error (&_inner_error_); 12068 #line 1229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12069 return 0; 12070 #line 12069 "tracker-sparql-expression.c" 12071 } 12072 } 12073 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12074 _tmp192_ = sql; 12075 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12076 _tmp193_ = uri; 12077 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12078 _tmp194_ = tracker_sparql_expression_translate_uri_expression (self, _tmp192_, _tmp193_, &_inner_error_); 12079 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12080 _tmp195_ = _tmp194_; 12081 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12082 if (_inner_error_ != NULL) { 12083 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12084 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12085 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12086 g_propagate_error (error, _inner_error_); 12087 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12088 _g_free0 (uri); 12089 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12090 return 0; 12091 #line 12090 "tracker-sparql-expression.c" 12092 } else { 12093 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12094 _g_free0 (uri); 12095 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12096 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12097 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12098 g_clear_error (&_inner_error_); 12099 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12100 return 0; 12101 #line 12100 "tracker-sparql-expression.c" 12102 } 12103 } 12104 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12105 result = _tmp195_; 12106 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12107 _g_free0 (uri); 12108 #line 1230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12109 return result; 12110 #line 12109 "tracker-sparql-expression.c" 12111 } 12112 default: 12113 { 12114 GError* _tmp196_ = NULL; 12115 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12116 _tmp196_ = tracker_sparql_expression_get_error (self, "expected primary expression"); 12117 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12118 _inner_error_ = _tmp196_; 12119 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12120 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12121 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12122 g_propagate_error (error, _inner_error_); 12123 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12124 return 0; 12125 #line 12124 "tracker-sparql-expression.c" 12126 } else { 12127 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12128 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12129 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12130 g_clear_error (&_inner_error_); 12131 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12132 return 0; 12133 #line 12132 "tracker-sparql-expression.c" 12134 } 12135 } 12136 } 12137 } 12138 12139 12140 static TrackerPropertyType tracker_sparql_expression_translate_unary_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 12141 TrackerPropertyType result = 0; 12142 gboolean _tmp0_ = FALSE; 12143 gboolean _tmp1_; 12144 GString* _tmp19_; 12145 TrackerPropertyType _tmp20_ = 0; 12146 TrackerPropertyType _tmp21_; 12147 GError * _inner_error_ = NULL; 12148 #line 1236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12149 g_return_val_if_fail (self != NULL, 0); 12150 #line 1236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12151 g_return_val_if_fail (sql != NULL, 0); 12152 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12153 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_NEG, &_inner_error_); 12154 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12155 _tmp1_ = _tmp0_; 12156 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12157 if (_inner_error_ != NULL) { 12158 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12159 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12160 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12161 g_propagate_error (error, _inner_error_); 12162 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12163 return 0; 12164 #line 12163 "tracker-sparql-expression.c" 12165 } else { 12166 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12167 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12168 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12169 g_clear_error (&_inner_error_); 12170 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12171 return 0; 12172 #line 12171 "tracker-sparql-expression.c" 12173 } 12174 } 12175 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12176 if (_tmp1_) { 12177 #line 12176 "tracker-sparql-expression.c" 12178 GString* _tmp2_; 12179 GString* _tmp3_; 12180 TrackerPropertyType _tmp4_ = 0; 12181 TrackerPropertyType optype; 12182 GString* _tmp5_; 12183 TrackerPropertyType _tmp6_; 12184 #line 1238 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12185 _tmp2_ = sql; 12186 #line 1238 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12187 g_string_append (_tmp2_, "NOT ("); 12188 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12189 _tmp3_ = sql; 12190 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12191 _tmp4_ = tracker_sparql_expression_translate_primary_expression (self, _tmp3_, &_inner_error_); 12192 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12193 optype = _tmp4_; 12194 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12195 if (_inner_error_ != NULL) { 12196 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12197 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12198 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12199 g_propagate_error (error, _inner_error_); 12200 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12201 return 0; 12202 #line 12201 "tracker-sparql-expression.c" 12203 } else { 12204 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12205 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12206 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12207 g_clear_error (&_inner_error_); 12208 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12209 return 0; 12210 #line 12209 "tracker-sparql-expression.c" 12211 } 12212 } 12213 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12214 _tmp5_ = sql; 12215 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12216 g_string_append (_tmp5_, ")"); 12217 #line 1241 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12218 _tmp6_ = optype; 12219 #line 1241 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12220 if (_tmp6_ != TRACKER_PROPERTY_TYPE_BOOLEAN) { 12221 #line 12220 "tracker-sparql-expression.c" 12222 GError* _tmp7_ = NULL; 12223 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12224 _tmp7_ = tracker_sparql_expression_get_error (self, "expected boolean expression"); 12225 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12226 _inner_error_ = _tmp7_; 12227 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12228 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12229 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12230 g_propagate_error (error, _inner_error_); 12231 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12232 return 0; 12233 #line 12232 "tracker-sparql-expression.c" 12234 } else { 12235 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12236 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12237 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12238 g_clear_error (&_inner_error_); 12239 #line 1242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12240 return 0; 12241 #line 12240 "tracker-sparql-expression.c" 12242 } 12243 } 12244 #line 1244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12245 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 12246 #line 1244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12247 return result; 12248 #line 12247 "tracker-sparql-expression.c" 12249 } else { 12250 gboolean _tmp8_ = FALSE; 12251 gboolean _tmp9_; 12252 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12253 _tmp8_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_PLUS, &_inner_error_); 12254 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12255 _tmp9_ = _tmp8_; 12256 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12257 if (_inner_error_ != NULL) { 12258 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12259 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12260 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12261 g_propagate_error (error, _inner_error_); 12262 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12263 return 0; 12264 #line 12263 "tracker-sparql-expression.c" 12265 } else { 12266 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12267 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12268 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12269 g_clear_error (&_inner_error_); 12270 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12271 return 0; 12272 #line 12271 "tracker-sparql-expression.c" 12273 } 12274 } 12275 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12276 if (_tmp9_) { 12277 #line 12276 "tracker-sparql-expression.c" 12278 GString* _tmp10_; 12279 TrackerPropertyType _tmp11_ = 0; 12280 TrackerPropertyType _tmp12_; 12281 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12282 _tmp10_ = sql; 12283 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12284 _tmp11_ = tracker_sparql_expression_translate_primary_expression (self, _tmp10_, &_inner_error_); 12285 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12286 _tmp12_ = _tmp11_; 12287 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12288 if (_inner_error_ != NULL) { 12289 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12290 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12291 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12292 g_propagate_error (error, _inner_error_); 12293 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12294 return 0; 12295 #line 12294 "tracker-sparql-expression.c" 12296 } else { 12297 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12298 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12299 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12300 g_clear_error (&_inner_error_); 12301 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12302 return 0; 12303 #line 12302 "tracker-sparql-expression.c" 12304 } 12305 } 12306 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12307 result = _tmp12_; 12308 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12309 return result; 12310 #line 12309 "tracker-sparql-expression.c" 12311 } else { 12312 gboolean _tmp13_ = FALSE; 12313 gboolean _tmp14_; 12314 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12315 _tmp13_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_MINUS, &_inner_error_); 12316 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12317 _tmp14_ = _tmp13_; 12318 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12319 if (_inner_error_ != NULL) { 12320 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12321 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12322 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12323 g_propagate_error (error, _inner_error_); 12324 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12325 return 0; 12326 #line 12325 "tracker-sparql-expression.c" 12327 } else { 12328 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12329 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12330 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12331 g_clear_error (&_inner_error_); 12332 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12333 return 0; 12334 #line 12333 "tracker-sparql-expression.c" 12335 } 12336 } 12337 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12338 if (_tmp14_) { 12339 #line 12338 "tracker-sparql-expression.c" 12340 GString* _tmp15_; 12341 GString* _tmp16_; 12342 TrackerPropertyType _tmp17_ = 0; 12343 TrackerPropertyType optype; 12344 GString* _tmp18_; 12345 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12346 _tmp15_ = sql; 12347 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12348 g_string_append (_tmp15_, "-("); 12349 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12350 _tmp16_ = sql; 12351 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12352 _tmp17_ = tracker_sparql_expression_translate_primary_expression (self, _tmp16_, &_inner_error_); 12353 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12354 optype = _tmp17_; 12355 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12356 if (_inner_error_ != NULL) { 12357 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12358 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12359 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12360 g_propagate_error (error, _inner_error_); 12361 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12362 return 0; 12363 #line 12362 "tracker-sparql-expression.c" 12364 } else { 12365 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12366 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12367 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12368 g_clear_error (&_inner_error_); 12369 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12370 return 0; 12371 #line 12370 "tracker-sparql-expression.c" 12372 } 12373 } 12374 #line 1250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12375 _tmp18_ = sql; 12376 #line 1250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12377 g_string_append (_tmp18_, ")"); 12378 #line 1251 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12379 result = optype; 12380 #line 1251 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12381 return result; 12382 #line 12381 "tracker-sparql-expression.c" 12383 } 12384 } 12385 } 12386 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12387 _tmp19_ = sql; 12388 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12389 _tmp20_ = tracker_sparql_expression_translate_primary_expression (self, _tmp19_, &_inner_error_); 12390 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12391 _tmp21_ = _tmp20_; 12392 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12393 if (_inner_error_ != NULL) { 12394 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12395 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12396 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12397 g_propagate_error (error, _inner_error_); 12398 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12399 return 0; 12400 #line 12399 "tracker-sparql-expression.c" 12401 } else { 12402 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12403 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12404 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12405 g_clear_error (&_inner_error_); 12406 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12407 return 0; 12408 #line 12407 "tracker-sparql-expression.c" 12409 } 12410 } 12411 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12412 result = _tmp21_; 12413 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12414 return result; 12415 #line 12414 "tracker-sparql-expression.c" 12416 } 12417 12418 12419 static TrackerPropertyType tracker_sparql_expression_translate_multiplicative_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 12420 TrackerPropertyType result = 0; 12421 GString* _tmp0_; 12422 gssize _tmp1_; 12423 glong begin; 12424 GString* _tmp2_; 12425 TrackerPropertyType _tmp3_ = 0; 12426 TrackerPropertyType optype; 12427 GError * _inner_error_ = NULL; 12428 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12429 g_return_val_if_fail (self != NULL, 0); 12430 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12431 g_return_val_if_fail (sql != NULL, 0); 12432 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12433 _tmp0_ = sql; 12434 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12435 _tmp1_ = _tmp0_->len; 12436 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12437 begin = (glong) _tmp1_; 12438 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12439 _tmp2_ = sql; 12440 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12441 _tmp3_ = tracker_sparql_expression_translate_unary_expression (self, _tmp2_, &_inner_error_); 12442 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12443 optype = _tmp3_; 12444 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12445 if (_inner_error_ != NULL) { 12446 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12447 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12448 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12449 g_propagate_error (error, _inner_error_); 12450 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12451 return 0; 12452 #line 12451 "tracker-sparql-expression.c" 12453 } else { 12454 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12455 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12456 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12457 g_clear_error (&_inner_error_); 12458 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12459 return 0; 12460 #line 12459 "tracker-sparql-expression.c" 12461 } 12462 } 12463 #line 1259 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12464 while (TRUE) { 12465 #line 12464 "tracker-sparql-expression.c" 12466 gboolean _tmp4_ = FALSE; 12467 gboolean _tmp5_; 12468 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12469 _tmp4_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_STAR, &_inner_error_); 12470 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12471 _tmp5_ = _tmp4_; 12472 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12473 if (_inner_error_ != NULL) { 12474 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12475 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12476 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12477 g_propagate_error (error, _inner_error_); 12478 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12479 return 0; 12480 #line 12479 "tracker-sparql-expression.c" 12481 } else { 12482 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12483 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12484 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12485 g_clear_error (&_inner_error_); 12486 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12487 return 0; 12488 #line 12487 "tracker-sparql-expression.c" 12489 } 12490 } 12491 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12492 if (_tmp5_) { 12493 #line 12492 "tracker-sparql-expression.c" 12494 TrackerPropertyType _tmp6_; 12495 gboolean _tmp7_ = FALSE; 12496 GString* _tmp9_; 12497 glong _tmp10_; 12498 GString* _tmp11_; 12499 GString* _tmp12_; 12500 TrackerPropertyType _tmp13_ = 0; 12501 TrackerPropertyType _tmp14_; 12502 gboolean _tmp15_ = FALSE; 12503 GString* _tmp17_; 12504 #line 1261 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12505 _tmp6_ = optype; 12506 #line 1261 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12507 _tmp7_ = tracker_sparql_expression_maybe_numeric (self, _tmp6_); 12508 #line 1261 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12509 if (!_tmp7_) { 12510 #line 12509 "tracker-sparql-expression.c" 12511 GError* _tmp8_ = NULL; 12512 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12513 _tmp8_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12514 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12515 _inner_error_ = _tmp8_; 12516 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12517 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12518 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12519 g_propagate_error (error, _inner_error_); 12520 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12521 return 0; 12522 #line 12521 "tracker-sparql-expression.c" 12523 } else { 12524 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12525 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12526 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12527 g_clear_error (&_inner_error_); 12528 #line 1262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12529 return 0; 12530 #line 12529 "tracker-sparql-expression.c" 12531 } 12532 } 12533 #line 1264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12534 _tmp9_ = sql; 12535 #line 1264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12536 _tmp10_ = begin; 12537 #line 1264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12538 g_string_insert (_tmp9_, (gssize) _tmp10_, "("); 12539 #line 1265 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12540 _tmp11_ = sql; 12541 #line 1265 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12542 g_string_append (_tmp11_, " * "); 12543 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12544 _tmp12_ = sql; 12545 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12546 _tmp13_ = tracker_sparql_expression_translate_unary_expression (self, _tmp12_, &_inner_error_); 12547 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12548 _tmp14_ = _tmp13_; 12549 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12550 if (_inner_error_ != NULL) { 12551 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12552 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12553 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12554 g_propagate_error (error, _inner_error_); 12555 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12556 return 0; 12557 #line 12556 "tracker-sparql-expression.c" 12558 } else { 12559 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12560 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12561 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12562 g_clear_error (&_inner_error_); 12563 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12564 return 0; 12565 #line 12564 "tracker-sparql-expression.c" 12566 } 12567 } 12568 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12569 _tmp15_ = tracker_sparql_expression_maybe_numeric (self, _tmp14_); 12570 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12571 if (!_tmp15_) { 12572 #line 12571 "tracker-sparql-expression.c" 12573 GError* _tmp16_ = NULL; 12574 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12575 _tmp16_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12576 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12577 _inner_error_ = _tmp16_; 12578 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12579 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12580 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12581 g_propagate_error (error, _inner_error_); 12582 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12583 return 0; 12584 #line 12583 "tracker-sparql-expression.c" 12585 } else { 12586 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12587 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12588 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12589 g_clear_error (&_inner_error_); 12590 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12591 return 0; 12592 #line 12591 "tracker-sparql-expression.c" 12593 } 12594 } 12595 #line 1269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12596 _tmp17_ = sql; 12597 #line 1269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12598 g_string_append (_tmp17_, ")"); 12599 #line 12598 "tracker-sparql-expression.c" 12600 } else { 12601 gboolean _tmp18_ = FALSE; 12602 gboolean _tmp19_; 12603 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12604 _tmp18_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DIV, &_inner_error_); 12605 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12606 _tmp19_ = _tmp18_; 12607 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12608 if (_inner_error_ != NULL) { 12609 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12610 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12611 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12612 g_propagate_error (error, _inner_error_); 12613 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12614 return 0; 12615 #line 12614 "tracker-sparql-expression.c" 12616 } else { 12617 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12618 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12619 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12620 g_clear_error (&_inner_error_); 12621 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12622 return 0; 12623 #line 12622 "tracker-sparql-expression.c" 12624 } 12625 } 12626 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12627 if (_tmp19_) { 12628 #line 12627 "tracker-sparql-expression.c" 12629 TrackerPropertyType _tmp20_; 12630 gboolean _tmp21_ = FALSE; 12631 GString* _tmp23_; 12632 glong _tmp24_; 12633 GString* _tmp25_; 12634 GString* _tmp26_; 12635 TrackerPropertyType _tmp27_ = 0; 12636 TrackerPropertyType _tmp28_; 12637 gboolean _tmp29_ = FALSE; 12638 GString* _tmp31_; 12639 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12640 _tmp20_ = optype; 12641 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12642 _tmp21_ = tracker_sparql_expression_maybe_numeric (self, _tmp20_); 12643 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12644 if (!_tmp21_) { 12645 #line 12644 "tracker-sparql-expression.c" 12646 GError* _tmp22_ = NULL; 12647 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12648 _tmp22_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12649 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12650 _inner_error_ = _tmp22_; 12651 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12652 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12653 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12654 g_propagate_error (error, _inner_error_); 12655 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12656 return 0; 12657 #line 12656 "tracker-sparql-expression.c" 12658 } else { 12659 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12660 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12661 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12662 g_clear_error (&_inner_error_); 12663 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12664 return 0; 12665 #line 12664 "tracker-sparql-expression.c" 12666 } 12667 } 12668 #line 1274 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12669 _tmp23_ = sql; 12670 #line 1274 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12671 _tmp24_ = begin; 12672 #line 1274 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12673 g_string_insert (_tmp23_, (gssize) _tmp24_, "("); 12674 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12675 _tmp25_ = sql; 12676 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12677 g_string_append (_tmp25_, " / "); 12678 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12679 _tmp26_ = sql; 12680 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12681 _tmp27_ = tracker_sparql_expression_translate_unary_expression (self, _tmp26_, &_inner_error_); 12682 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12683 _tmp28_ = _tmp27_; 12684 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12685 if (_inner_error_ != NULL) { 12686 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12687 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12688 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12689 g_propagate_error (error, _inner_error_); 12690 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12691 return 0; 12692 #line 12691 "tracker-sparql-expression.c" 12693 } else { 12694 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12695 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12696 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12697 g_clear_error (&_inner_error_); 12698 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12699 return 0; 12700 #line 12699 "tracker-sparql-expression.c" 12701 } 12702 } 12703 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12704 _tmp29_ = tracker_sparql_expression_maybe_numeric (self, _tmp28_); 12705 #line 1276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12706 if (!_tmp29_) { 12707 #line 12706 "tracker-sparql-expression.c" 12708 GError* _tmp30_ = NULL; 12709 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12710 _tmp30_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12711 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12712 _inner_error_ = _tmp30_; 12713 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12714 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12715 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12716 g_propagate_error (error, _inner_error_); 12717 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12718 return 0; 12719 #line 12718 "tracker-sparql-expression.c" 12720 } else { 12721 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12722 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12723 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12724 g_clear_error (&_inner_error_); 12725 #line 1277 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12726 return 0; 12727 #line 12726 "tracker-sparql-expression.c" 12728 } 12729 } 12730 #line 1279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12731 _tmp31_ = sql; 12732 #line 1279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12733 g_string_append (_tmp31_, ")"); 12734 #line 12733 "tracker-sparql-expression.c" 12735 } else { 12736 #line 1281 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12737 break; 12738 #line 12737 "tracker-sparql-expression.c" 12739 } 12740 } 12741 } 12742 #line 1284 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12743 result = optype; 12744 #line 1284 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12745 return result; 12746 #line 12745 "tracker-sparql-expression.c" 12747 } 12748 12749 12750 static TrackerPropertyType tracker_sparql_expression_translate_additive_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 12751 TrackerPropertyType result = 0; 12752 GString* _tmp0_; 12753 gssize _tmp1_; 12754 glong begin; 12755 GString* _tmp2_; 12756 TrackerPropertyType _tmp3_ = 0; 12757 TrackerPropertyType optype; 12758 GError * _inner_error_ = NULL; 12759 #line 1287 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12760 g_return_val_if_fail (self != NULL, 0); 12761 #line 1287 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12762 g_return_val_if_fail (sql != NULL, 0); 12763 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12764 _tmp0_ = sql; 12765 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12766 _tmp1_ = _tmp0_->len; 12767 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12768 begin = (glong) _tmp1_; 12769 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12770 _tmp2_ = sql; 12771 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12772 _tmp3_ = tracker_sparql_expression_translate_multiplicative_expression (self, _tmp2_, &_inner_error_); 12773 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12774 optype = _tmp3_; 12775 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12776 if (_inner_error_ != NULL) { 12777 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12778 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12779 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12780 g_propagate_error (error, _inner_error_); 12781 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12782 return 0; 12783 #line 12782 "tracker-sparql-expression.c" 12784 } else { 12785 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12786 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12787 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12788 g_clear_error (&_inner_error_); 12789 #line 1289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12790 return 0; 12791 #line 12790 "tracker-sparql-expression.c" 12792 } 12793 } 12794 #line 1290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12795 while (TRUE) { 12796 #line 12795 "tracker-sparql-expression.c" 12797 gboolean _tmp4_ = FALSE; 12798 gboolean _tmp5_; 12799 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12800 _tmp4_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_PLUS, &_inner_error_); 12801 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12802 _tmp5_ = _tmp4_; 12803 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12804 if (_inner_error_ != NULL) { 12805 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12806 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12807 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12808 g_propagate_error (error, _inner_error_); 12809 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12810 return 0; 12811 #line 12810 "tracker-sparql-expression.c" 12812 } else { 12813 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12814 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12815 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12816 g_clear_error (&_inner_error_); 12817 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12818 return 0; 12819 #line 12818 "tracker-sparql-expression.c" 12820 } 12821 } 12822 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12823 if (_tmp5_) { 12824 #line 12823 "tracker-sparql-expression.c" 12825 TrackerPropertyType _tmp6_; 12826 gboolean _tmp7_ = FALSE; 12827 GString* _tmp9_; 12828 glong _tmp10_; 12829 GString* _tmp11_; 12830 GString* _tmp12_; 12831 TrackerPropertyType _tmp13_ = 0; 12832 TrackerPropertyType _tmp14_; 12833 gboolean _tmp15_ = FALSE; 12834 GString* _tmp17_; 12835 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12836 _tmp6_ = optype; 12837 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12838 _tmp7_ = tracker_sparql_expression_maybe_numeric (self, _tmp6_); 12839 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12840 if (!_tmp7_) { 12841 #line 12840 "tracker-sparql-expression.c" 12842 GError* _tmp8_ = NULL; 12843 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12844 _tmp8_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12845 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12846 _inner_error_ = _tmp8_; 12847 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12848 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12849 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12850 g_propagate_error (error, _inner_error_); 12851 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12852 return 0; 12853 #line 12852 "tracker-sparql-expression.c" 12854 } else { 12855 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12856 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12857 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12858 g_clear_error (&_inner_error_); 12859 #line 1293 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12860 return 0; 12861 #line 12860 "tracker-sparql-expression.c" 12862 } 12863 } 12864 #line 1295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12865 _tmp9_ = sql; 12866 #line 1295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12867 _tmp10_ = begin; 12868 #line 1295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12869 g_string_insert (_tmp9_, (gssize) _tmp10_, "("); 12870 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12871 _tmp11_ = sql; 12872 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12873 g_string_append (_tmp11_, " + "); 12874 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12875 _tmp12_ = sql; 12876 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12877 _tmp13_ = tracker_sparql_expression_translate_multiplicative_expression (self, _tmp12_, &_inner_error_); 12878 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12879 _tmp14_ = _tmp13_; 12880 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12881 if (_inner_error_ != NULL) { 12882 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12883 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12884 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12885 g_propagate_error (error, _inner_error_); 12886 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12887 return 0; 12888 #line 12887 "tracker-sparql-expression.c" 12889 } else { 12890 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12891 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12892 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12893 g_clear_error (&_inner_error_); 12894 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12895 return 0; 12896 #line 12895 "tracker-sparql-expression.c" 12897 } 12898 } 12899 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12900 _tmp15_ = tracker_sparql_expression_maybe_numeric (self, _tmp14_); 12901 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12902 if (!_tmp15_) { 12903 #line 12902 "tracker-sparql-expression.c" 12904 GError* _tmp16_ = NULL; 12905 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12906 _tmp16_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12907 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12908 _inner_error_ = _tmp16_; 12909 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12910 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12911 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12912 g_propagate_error (error, _inner_error_); 12913 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12914 return 0; 12915 #line 12914 "tracker-sparql-expression.c" 12916 } else { 12917 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12918 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12919 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12920 g_clear_error (&_inner_error_); 12921 #line 1298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12922 return 0; 12923 #line 12922 "tracker-sparql-expression.c" 12924 } 12925 } 12926 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12927 _tmp17_ = sql; 12928 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12929 g_string_append (_tmp17_, ")"); 12930 #line 12929 "tracker-sparql-expression.c" 12931 } else { 12932 gboolean _tmp18_ = FALSE; 12933 gboolean _tmp19_; 12934 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12935 _tmp18_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_MINUS, &_inner_error_); 12936 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12937 _tmp19_ = _tmp18_; 12938 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12939 if (_inner_error_ != NULL) { 12940 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12941 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12942 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12943 g_propagate_error (error, _inner_error_); 12944 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12945 return 0; 12946 #line 12945 "tracker-sparql-expression.c" 12947 } else { 12948 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12949 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12950 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12951 g_clear_error (&_inner_error_); 12952 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12953 return 0; 12954 #line 12953 "tracker-sparql-expression.c" 12955 } 12956 } 12957 #line 1301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12958 if (_tmp19_) { 12959 #line 12958 "tracker-sparql-expression.c" 12960 TrackerPropertyType _tmp20_; 12961 gboolean _tmp21_ = FALSE; 12962 GString* _tmp23_; 12963 glong _tmp24_; 12964 GString* _tmp25_; 12965 GString* _tmp26_; 12966 TrackerPropertyType _tmp27_ = 0; 12967 TrackerPropertyType _tmp28_; 12968 gboolean _tmp29_ = FALSE; 12969 GString* _tmp31_; 12970 #line 1302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12971 _tmp20_ = optype; 12972 #line 1302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12973 _tmp21_ = tracker_sparql_expression_maybe_numeric (self, _tmp20_); 12974 #line 1302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12975 if (!_tmp21_) { 12976 #line 12975 "tracker-sparql-expression.c" 12977 GError* _tmp22_ = NULL; 12978 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12979 _tmp22_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 12980 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12981 _inner_error_ = _tmp22_; 12982 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12983 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12984 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12985 g_propagate_error (error, _inner_error_); 12986 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12987 return 0; 12988 #line 12987 "tracker-sparql-expression.c" 12989 } else { 12990 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12991 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12992 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12993 g_clear_error (&_inner_error_); 12994 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 12995 return 0; 12996 #line 12995 "tracker-sparql-expression.c" 12997 } 12998 } 12999 #line 1305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13000 _tmp23_ = sql; 13001 #line 1305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13002 _tmp24_ = begin; 13003 #line 1305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13004 g_string_insert (_tmp23_, (gssize) _tmp24_, "("); 13005 #line 1306 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13006 _tmp25_ = sql; 13007 #line 1306 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13008 g_string_append (_tmp25_, " - "); 13009 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13010 _tmp26_ = sql; 13011 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13012 _tmp27_ = tracker_sparql_expression_translate_multiplicative_expression (self, _tmp26_, &_inner_error_); 13013 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13014 _tmp28_ = _tmp27_; 13015 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13016 if (_inner_error_ != NULL) { 13017 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13018 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13019 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13020 g_propagate_error (error, _inner_error_); 13021 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13022 return 0; 13023 #line 13022 "tracker-sparql-expression.c" 13024 } else { 13025 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13026 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13027 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13028 g_clear_error (&_inner_error_); 13029 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13030 return 0; 13031 #line 13030 "tracker-sparql-expression.c" 13032 } 13033 } 13034 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13035 _tmp29_ = tracker_sparql_expression_maybe_numeric (self, _tmp28_); 13036 #line 1307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13037 if (!_tmp29_) { 13038 #line 13037 "tracker-sparql-expression.c" 13039 GError* _tmp30_ = NULL; 13040 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13041 _tmp30_ = tracker_sparql_expression_get_error (self, "expected numeric operand"); 13042 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13043 _inner_error_ = _tmp30_; 13044 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13045 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13046 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13047 g_propagate_error (error, _inner_error_); 13048 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13049 return 0; 13050 #line 13049 "tracker-sparql-expression.c" 13051 } else { 13052 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13053 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13054 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13055 g_clear_error (&_inner_error_); 13056 #line 1308 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13057 return 0; 13058 #line 13057 "tracker-sparql-expression.c" 13059 } 13060 } 13061 #line 1310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13062 _tmp31_ = sql; 13063 #line 1310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13064 g_string_append (_tmp31_, ")"); 13065 #line 13064 "tracker-sparql-expression.c" 13066 } else { 13067 #line 1312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13068 break; 13069 #line 13068 "tracker-sparql-expression.c" 13070 } 13071 } 13072 } 13073 #line 1315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13074 result = optype; 13075 #line 1315 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13076 return result; 13077 #line 13076 "tracker-sparql-expression.c" 13078 } 13079 13080 13081 static TrackerPropertyType tracker_sparql_expression_translate_numeric_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 13082 TrackerPropertyType result = 0; 13083 GString* _tmp0_; 13084 TrackerPropertyType _tmp1_ = 0; 13085 TrackerPropertyType _tmp2_; 13086 GError * _inner_error_ = NULL; 13087 #line 1318 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13088 g_return_val_if_fail (self != NULL, 0); 13089 #line 1318 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13090 g_return_val_if_fail (sql != NULL, 0); 13091 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13092 _tmp0_ = sql; 13093 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13094 _tmp1_ = tracker_sparql_expression_translate_additive_expression (self, _tmp0_, &_inner_error_); 13095 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13096 _tmp2_ = _tmp1_; 13097 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13098 if (_inner_error_ != NULL) { 13099 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13100 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13101 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13102 g_propagate_error (error, _inner_error_); 13103 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13104 return 0; 13105 #line 13104 "tracker-sparql-expression.c" 13106 } else { 13107 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13108 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13109 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13110 g_clear_error (&_inner_error_); 13111 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13112 return 0; 13113 #line 13112 "tracker-sparql-expression.c" 13114 } 13115 } 13116 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13117 result = _tmp2_; 13118 #line 1319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13119 return result; 13120 #line 13119 "tracker-sparql-expression.c" 13121 } 13122 13123 13124 static TrackerPropertyType tracker_sparql_expression_process_relational_expression (TrackerSparqlExpression* self, GString* sql, glong begin, guint n_bindings, TrackerPropertyType op1type, const gchar* operator, GError** error) { 13125 TrackerPropertyType result = 0; 13126 GString* _tmp0_; 13127 glong _tmp1_; 13128 GString* _tmp2_; 13129 const gchar* _tmp3_; 13130 GString* _tmp4_; 13131 TrackerPropertyType _tmp5_ = 0; 13132 TrackerPropertyType op2type; 13133 GString* _tmp6_; 13134 gboolean _tmp7_ = FALSE; 13135 gboolean _tmp8_ = FALSE; 13136 TrackerPropertyType _tmp9_; 13137 gboolean _tmp10_; 13138 gboolean _tmp14_; 13139 GError * _inner_error_ = NULL; 13140 #line 1322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13141 g_return_val_if_fail (self != NULL, 0); 13142 #line 1322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13143 g_return_val_if_fail (sql != NULL, 0); 13144 #line 1322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13145 g_return_val_if_fail (operator != NULL, 0); 13146 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13147 _tmp0_ = sql; 13148 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13149 _tmp1_ = begin; 13150 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13151 g_string_insert (_tmp0_, (gssize) _tmp1_, "("); 13152 #line 1324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13153 _tmp2_ = sql; 13154 #line 1324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13155 _tmp3_ = operator; 13156 #line 1324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13157 g_string_append (_tmp2_, _tmp3_); 13158 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13159 _tmp4_ = sql; 13160 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13161 _tmp5_ = tracker_sparql_expression_translate_numeric_expression (self, _tmp4_, &_inner_error_); 13162 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13163 op2type = _tmp5_; 13164 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13165 if (_inner_error_ != NULL) { 13166 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13167 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13168 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13169 g_propagate_error (error, _inner_error_); 13170 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13171 return 0; 13172 #line 13171 "tracker-sparql-expression.c" 13173 } else { 13174 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13175 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13176 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13177 g_clear_error (&_inner_error_); 13178 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13179 return 0; 13180 #line 13179 "tracker-sparql-expression.c" 13181 } 13182 } 13183 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13184 _tmp6_ = sql; 13185 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13186 g_string_append (_tmp6_, ")"); 13187 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13188 _tmp9_ = op1type; 13189 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13190 if (_tmp9_ == TRACKER_PROPERTY_TYPE_DATETIME) { 13191 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13192 _tmp8_ = op2type == TRACKER_PROPERTY_TYPE_STRING; 13193 #line 13192 "tracker-sparql-expression.c" 13194 } else { 13195 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13196 _tmp8_ = FALSE; 13197 #line 13196 "tracker-sparql-expression.c" 13198 } 13199 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13200 _tmp10_ = _tmp8_; 13201 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13202 if (_tmp10_) { 13203 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13204 _tmp7_ = TRUE; 13205 #line 13204 "tracker-sparql-expression.c" 13206 } else { 13207 gboolean _tmp11_ = FALSE; 13208 TrackerPropertyType _tmp12_; 13209 gboolean _tmp13_; 13210 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13211 _tmp12_ = op1type; 13212 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13213 if (_tmp12_ == TRACKER_PROPERTY_TYPE_STRING) { 13214 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13215 _tmp11_ = op2type == TRACKER_PROPERTY_TYPE_DATETIME; 13216 #line 13215 "tracker-sparql-expression.c" 13217 } else { 13218 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13219 _tmp11_ = FALSE; 13220 #line 13219 "tracker-sparql-expression.c" 13221 } 13222 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13223 _tmp13_ = _tmp11_; 13224 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13225 _tmp7_ = _tmp13_; 13226 #line 13225 "tracker-sparql-expression.c" 13227 } 13228 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13229 _tmp14_ = _tmp7_; 13230 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13231 if (_tmp14_) { 13232 #line 13231 "tracker-sparql-expression.c" 13233 TrackerSparqlQuery* _tmp15_; 13234 GList* _tmp16_; 13235 guint _tmp17_ = 0U; 13236 guint _tmp18_; 13237 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13238 _tmp15_ = self->priv->query; 13239 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13240 _tmp16_ = _tmp15_->bindings; 13241 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13242 _tmp17_ = g_list_length (_tmp16_); 13243 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13244 _tmp18_ = n_bindings; 13245 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13246 if (_tmp17_ == (_tmp18_ + 1)) { 13247 #line 13246 "tracker-sparql-expression.c" 13248 TrackerSparqlQuery* _tmp19_; 13249 GList* _tmp20_; 13250 GList* _tmp21_ = NULL; 13251 gconstpointer _tmp22_; 13252 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13253 _tmp19_ = self->priv->query; 13254 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13255 _tmp20_ = _tmp19_->bindings; 13256 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13257 _tmp21_ = g_list_last (_tmp20_); 13258 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13259 _tmp22_ = _tmp21_->data; 13260 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13261 ((TrackerSparqlDataBinding*) ((TrackerSparqlLiteralBinding*) _tmp22_))->data_type = TRACKER_PROPERTY_TYPE_DATETIME; 13262 #line 13261 "tracker-sparql-expression.c" 13263 } 13264 } else { 13265 gboolean _tmp23_ = FALSE; 13266 gboolean _tmp24_ = FALSE; 13267 TrackerPropertyType _tmp25_; 13268 gboolean _tmp26_; 13269 gboolean _tmp30_; 13270 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13271 _tmp25_ = op1type; 13272 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13273 if (_tmp25_ == TRACKER_PROPERTY_TYPE_DATE) { 13274 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13275 _tmp24_ = op2type == TRACKER_PROPERTY_TYPE_STRING; 13276 #line 13275 "tracker-sparql-expression.c" 13277 } else { 13278 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13279 _tmp24_ = FALSE; 13280 #line 13279 "tracker-sparql-expression.c" 13281 } 13282 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13283 _tmp26_ = _tmp24_; 13284 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13285 if (_tmp26_) { 13286 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13287 _tmp23_ = TRUE; 13288 #line 13287 "tracker-sparql-expression.c" 13289 } else { 13290 gboolean _tmp27_ = FALSE; 13291 TrackerPropertyType _tmp28_; 13292 gboolean _tmp29_; 13293 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13294 _tmp28_ = op1type; 13295 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13296 if (_tmp28_ == TRACKER_PROPERTY_TYPE_STRING) { 13297 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13298 _tmp27_ = op2type == TRACKER_PROPERTY_TYPE_DATE; 13299 #line 13298 "tracker-sparql-expression.c" 13300 } else { 13301 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13302 _tmp27_ = FALSE; 13303 #line 13302 "tracker-sparql-expression.c" 13304 } 13305 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13306 _tmp29_ = _tmp27_; 13307 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13308 _tmp23_ = _tmp29_; 13309 #line 13308 "tracker-sparql-expression.c" 13310 } 13311 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13312 _tmp30_ = _tmp23_; 13313 #line 1334 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13314 if (_tmp30_) { 13315 #line 13314 "tracker-sparql-expression.c" 13316 TrackerSparqlQuery* _tmp31_; 13317 GList* _tmp32_; 13318 guint _tmp33_ = 0U; 13319 guint _tmp34_; 13320 #line 1337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13321 _tmp31_ = self->priv->query; 13322 #line 1337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13323 _tmp32_ = _tmp31_->bindings; 13324 #line 1337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13325 _tmp33_ = g_list_length (_tmp32_); 13326 #line 1337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13327 _tmp34_ = n_bindings; 13328 #line 1337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13329 if (_tmp33_ == (_tmp34_ + 1)) { 13330 #line 13329 "tracker-sparql-expression.c" 13331 TrackerSparqlQuery* _tmp35_; 13332 GList* _tmp36_; 13333 GList* _tmp37_ = NULL; 13334 gconstpointer _tmp38_; 13335 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13336 _tmp35_ = self->priv->query; 13337 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13338 _tmp36_ = _tmp35_->bindings; 13339 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13340 _tmp37_ = g_list_last (_tmp36_); 13341 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13342 _tmp38_ = _tmp37_->data; 13343 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13344 ((TrackerSparqlDataBinding*) ((TrackerSparqlLiteralBinding*) _tmp38_))->data_type = TRACKER_PROPERTY_TYPE_DATE; 13345 #line 13344 "tracker-sparql-expression.c" 13346 } 13347 } 13348 } 13349 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13350 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 13351 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13352 return result; 13353 #line 13352 "tracker-sparql-expression.c" 13354 } 13355 13356 13357 static TrackerPropertyType tracker_sparql_expression_translate_in (TrackerSparqlExpression* self, GString* sql, gboolean not, GError** error) { 13358 TrackerPropertyType result = 0; 13359 gint in_variable_count; 13360 gboolean _tmp0_; 13361 GString* _tmp2_; 13362 gboolean _tmp3_ = FALSE; 13363 gboolean _tmp4_; 13364 GString* _tmp19_; 13365 GError * _inner_error_ = NULL; 13366 #line 1345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13367 g_return_val_if_fail (self != NULL, 0); 13368 #line 1345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13369 g_return_val_if_fail (sql != NULL, 0); 13370 #line 1347 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13371 in_variable_count = 0; 13372 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13373 _tmp0_ = not; 13374 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13375 if (_tmp0_) { 13376 #line 13375 "tracker-sparql-expression.c" 13377 GString* _tmp1_; 13378 #line 1350 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13379 _tmp1_ = sql; 13380 #line 1350 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13381 g_string_append (_tmp1_, " NOT"); 13382 #line 13381 "tracker-sparql-expression.c" 13383 } 13384 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13385 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 13386 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13387 if (_inner_error_ != NULL) { 13388 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13389 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13390 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13391 g_propagate_error (error, _inner_error_); 13392 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13393 return 0; 13394 #line 13393 "tracker-sparql-expression.c" 13395 } else { 13396 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13397 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13398 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13399 g_clear_error (&_inner_error_); 13400 #line 1353 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13401 return 0; 13402 #line 13401 "tracker-sparql-expression.c" 13403 } 13404 } 13405 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13406 _tmp2_ = sql; 13407 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13408 g_string_append (_tmp2_, " IN ("); 13409 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13410 _tmp3_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 13411 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13412 _tmp4_ = _tmp3_; 13413 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13414 if (_inner_error_ != NULL) { 13415 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13416 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13417 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13418 g_propagate_error (error, _inner_error_); 13419 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13420 return 0; 13421 #line 13420 "tracker-sparql-expression.c" 13422 } else { 13423 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13424 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13425 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13426 g_clear_error (&_inner_error_); 13427 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13428 return 0; 13429 #line 13428 "tracker-sparql-expression.c" 13430 } 13431 } 13432 #line 1355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13433 if (!_tmp4_) { 13434 #line 13433 "tracker-sparql-expression.c" 13435 gint _tmp5_; 13436 GString* _tmp6_; 13437 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13438 _tmp5_ = in_variable_count; 13439 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13440 in_variable_count = _tmp5_ + 1; 13441 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13442 _tmp6_ = sql; 13443 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13444 tracker_sparql_expression_translate_expression (self, _tmp6_, &_inner_error_); 13445 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13446 if (_inner_error_ != NULL) { 13447 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13448 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13449 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13450 g_propagate_error (error, _inner_error_); 13451 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13452 return 0; 13453 #line 13452 "tracker-sparql-expression.c" 13454 } else { 13455 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13456 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13457 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13458 g_clear_error (&_inner_error_); 13459 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13460 return 0; 13461 #line 13460 "tracker-sparql-expression.c" 13462 } 13463 } 13464 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13465 while (TRUE) { 13466 #line 13465 "tracker-sparql-expression.c" 13467 gboolean _tmp7_ = FALSE; 13468 gboolean _tmp8_; 13469 GString* _tmp9_; 13470 gint _tmp10_; 13471 gboolean _tmp11_ = FALSE; 13472 gint _tmp12_; 13473 gboolean _tmp16_; 13474 GString* _tmp18_; 13475 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13476 _tmp7_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 13477 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13478 _tmp8_ = _tmp7_; 13479 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13480 if (_inner_error_ != NULL) { 13481 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13482 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13483 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13484 g_propagate_error (error, _inner_error_); 13485 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13486 return 0; 13487 #line 13486 "tracker-sparql-expression.c" 13488 } else { 13489 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13490 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13491 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13492 g_clear_error (&_inner_error_); 13493 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13494 return 0; 13495 #line 13494 "tracker-sparql-expression.c" 13496 } 13497 } 13498 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13499 if (!_tmp8_) { 13500 #line 1358 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13501 break; 13502 #line 13501 "tracker-sparql-expression.c" 13503 } 13504 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13505 _tmp9_ = sql; 13506 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13507 g_string_append (_tmp9_, ", "); 13508 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13509 _tmp10_ = in_variable_count; 13510 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13511 in_variable_count = _tmp10_ + 1; 13512 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13513 _tmp12_ = in_variable_count; 13514 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13515 if (_tmp12_ > TRACKER_SPARQL_EXPRESSION_MAX_VARIABLES_FOR_IN) { 13516 #line 13515 "tracker-sparql-expression.c" 13517 TrackerSparqlQuery* _tmp13_; 13518 gboolean _tmp14_; 13519 gboolean _tmp15_; 13520 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13521 _tmp13_ = self->priv->query; 13522 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13523 _tmp14_ = tracker_sparql_query_get_no_cache (_tmp13_); 13524 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13525 _tmp15_ = _tmp14_; 13526 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13527 _tmp11_ = !_tmp15_; 13528 #line 13527 "tracker-sparql-expression.c" 13529 } else { 13530 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13531 _tmp11_ = FALSE; 13532 #line 13531 "tracker-sparql-expression.c" 13533 } 13534 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13535 _tmp16_ = _tmp11_; 13536 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13537 if (_tmp16_) { 13538 #line 13537 "tracker-sparql-expression.c" 13539 TrackerSparqlQuery* _tmp17_; 13540 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13541 _tmp17_ = self->priv->query; 13542 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13543 tracker_sparql_query_set_no_cache (_tmp17_, TRUE); 13544 #line 13543 "tracker-sparql-expression.c" 13545 } 13546 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13547 _tmp18_ = sql; 13548 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13549 tracker_sparql_expression_translate_expression (self, _tmp18_, &_inner_error_); 13550 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13551 if (_inner_error_ != NULL) { 13552 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13553 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13554 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13555 g_propagate_error (error, _inner_error_); 13556 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13557 return 0; 13558 #line 13557 "tracker-sparql-expression.c" 13559 } else { 13560 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13561 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13562 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13563 g_clear_error (&_inner_error_); 13564 #line 1367 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13565 return 0; 13566 #line 13565 "tracker-sparql-expression.c" 13567 } 13568 } 13569 } 13570 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13571 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 13572 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13573 if (_inner_error_ != NULL) { 13574 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13575 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13576 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13577 g_propagate_error (error, _inner_error_); 13578 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13579 return 0; 13580 #line 13579 "tracker-sparql-expression.c" 13581 } else { 13582 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13583 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13584 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13585 g_clear_error (&_inner_error_); 13586 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13587 return 0; 13588 #line 13587 "tracker-sparql-expression.c" 13589 } 13590 } 13591 } 13592 #line 1371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13593 _tmp19_ = sql; 13594 #line 1371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13595 g_string_append (_tmp19_, ")"); 13596 #line 1373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13597 result = TRACKER_PROPERTY_TYPE_BOOLEAN; 13598 #line 1373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13599 return result; 13600 #line 13599 "tracker-sparql-expression.c" 13601 } 13602 13603 13604 static TrackerPropertyType tracker_sparql_expression_translate_relational_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 13605 TrackerPropertyType result = 0; 13606 GString* _tmp0_; 13607 gssize _tmp1_; 13608 glong begin; 13609 TrackerSparqlQuery* _tmp2_; 13610 GList* _tmp3_; 13611 guint _tmp4_ = 0U; 13612 guint n_bindings; 13613 GString* _tmp5_; 13614 TrackerPropertyType _tmp6_ = 0; 13615 TrackerPropertyType optype; 13616 gboolean _tmp7_ = FALSE; 13617 gboolean _tmp8_; 13618 GError * _inner_error_ = NULL; 13619 #line 1376 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13620 g_return_val_if_fail (self != NULL, 0); 13621 #line 1376 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13622 g_return_val_if_fail (sql != NULL, 0); 13623 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13624 _tmp0_ = sql; 13625 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13626 _tmp1_ = _tmp0_->len; 13627 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13628 begin = (glong) _tmp1_; 13629 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13630 _tmp2_ = self->priv->query; 13631 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13632 _tmp3_ = _tmp2_->bindings; 13633 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13634 _tmp4_ = g_list_length (_tmp3_); 13635 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13636 n_bindings = _tmp4_; 13637 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13638 _tmp5_ = sql; 13639 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13640 _tmp6_ = tracker_sparql_expression_translate_numeric_expression (self, _tmp5_, &_inner_error_); 13641 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13642 optype = _tmp6_; 13643 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13644 if (_inner_error_ != NULL) { 13645 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13646 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13647 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13648 g_propagate_error (error, _inner_error_); 13649 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13650 return 0; 13651 #line 13650 "tracker-sparql-expression.c" 13652 } else { 13653 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13654 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13655 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13656 g_clear_error (&_inner_error_); 13657 #line 1380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13658 return 0; 13659 #line 13658 "tracker-sparql-expression.c" 13660 } 13661 } 13662 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13663 _tmp7_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_GE, &_inner_error_); 13664 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13665 _tmp8_ = _tmp7_; 13666 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13667 if (_inner_error_ != NULL) { 13668 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13669 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13670 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13671 g_propagate_error (error, _inner_error_); 13672 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13673 return 0; 13674 #line 13673 "tracker-sparql-expression.c" 13675 } else { 13676 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13677 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13678 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13679 g_clear_error (&_inner_error_); 13680 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13681 return 0; 13682 #line 13681 "tracker-sparql-expression.c" 13683 } 13684 } 13685 #line 1381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13686 if (_tmp8_) { 13687 #line 13686 "tracker-sparql-expression.c" 13688 GString* _tmp9_; 13689 glong _tmp10_; 13690 guint _tmp11_; 13691 TrackerPropertyType _tmp12_; 13692 TrackerPropertyType _tmp13_ = 0; 13693 TrackerPropertyType _tmp14_; 13694 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13695 _tmp9_ = sql; 13696 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13697 _tmp10_ = begin; 13698 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13699 _tmp11_ = n_bindings; 13700 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13701 _tmp12_ = optype; 13702 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13703 _tmp13_ = tracker_sparql_expression_process_relational_expression (self, _tmp9_, _tmp10_, _tmp11_, _tmp12_, " >= ", &_inner_error_); 13704 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13705 _tmp14_ = _tmp13_; 13706 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13707 if (_inner_error_ != NULL) { 13708 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13709 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13710 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13711 g_propagate_error (error, _inner_error_); 13712 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13713 return 0; 13714 #line 13713 "tracker-sparql-expression.c" 13715 } else { 13716 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13717 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13718 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13719 g_clear_error (&_inner_error_); 13720 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13721 return 0; 13722 #line 13721 "tracker-sparql-expression.c" 13723 } 13724 } 13725 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13726 result = _tmp14_; 13727 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13728 return result; 13729 #line 13728 "tracker-sparql-expression.c" 13730 } else { 13731 gboolean _tmp15_ = FALSE; 13732 gboolean _tmp16_; 13733 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13734 _tmp15_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_EQ, &_inner_error_); 13735 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13736 _tmp16_ = _tmp15_; 13737 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13738 if (_inner_error_ != NULL) { 13739 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13740 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13741 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13742 g_propagate_error (error, _inner_error_); 13743 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13744 return 0; 13745 #line 13744 "tracker-sparql-expression.c" 13746 } else { 13747 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13748 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13749 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13750 g_clear_error (&_inner_error_); 13751 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13752 return 0; 13753 #line 13752 "tracker-sparql-expression.c" 13754 } 13755 } 13756 #line 1383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13757 if (_tmp16_) { 13758 #line 13757 "tracker-sparql-expression.c" 13759 GString* _tmp17_; 13760 glong _tmp18_; 13761 guint _tmp19_; 13762 TrackerPropertyType _tmp20_; 13763 TrackerPropertyType _tmp21_ = 0; 13764 TrackerPropertyType _tmp22_; 13765 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13766 _tmp17_ = sql; 13767 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13768 _tmp18_ = begin; 13769 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13770 _tmp19_ = n_bindings; 13771 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13772 _tmp20_ = optype; 13773 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13774 _tmp21_ = tracker_sparql_expression_process_relational_expression (self, _tmp17_, _tmp18_, _tmp19_, _tmp20_, " = ", &_inner_error_); 13775 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13776 _tmp22_ = _tmp21_; 13777 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13778 if (_inner_error_ != NULL) { 13779 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13780 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13781 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13782 g_propagate_error (error, _inner_error_); 13783 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13784 return 0; 13785 #line 13784 "tracker-sparql-expression.c" 13786 } else { 13787 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13788 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13789 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13790 g_clear_error (&_inner_error_); 13791 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13792 return 0; 13793 #line 13792 "tracker-sparql-expression.c" 13794 } 13795 } 13796 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13797 result = _tmp22_; 13798 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13799 return result; 13800 #line 13799 "tracker-sparql-expression.c" 13801 } else { 13802 gboolean _tmp23_ = FALSE; 13803 gboolean _tmp24_; 13804 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13805 _tmp23_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_NE, &_inner_error_); 13806 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13807 _tmp24_ = _tmp23_; 13808 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13809 if (_inner_error_ != NULL) { 13810 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13811 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13812 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13813 g_propagate_error (error, _inner_error_); 13814 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13815 return 0; 13816 #line 13815 "tracker-sparql-expression.c" 13817 } else { 13818 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13819 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13820 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13821 g_clear_error (&_inner_error_); 13822 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13823 return 0; 13824 #line 13823 "tracker-sparql-expression.c" 13825 } 13826 } 13827 #line 1385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13828 if (_tmp24_) { 13829 #line 13828 "tracker-sparql-expression.c" 13830 GString* _tmp25_; 13831 glong _tmp26_; 13832 guint _tmp27_; 13833 TrackerPropertyType _tmp28_; 13834 TrackerPropertyType _tmp29_ = 0; 13835 TrackerPropertyType _tmp30_; 13836 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13837 _tmp25_ = sql; 13838 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13839 _tmp26_ = begin; 13840 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13841 _tmp27_ = n_bindings; 13842 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13843 _tmp28_ = optype; 13844 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13845 _tmp29_ = tracker_sparql_expression_process_relational_expression (self, _tmp25_, _tmp26_, _tmp27_, _tmp28_, " <> ", &_inner_error_); 13846 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13847 _tmp30_ = _tmp29_; 13848 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13849 if (_inner_error_ != NULL) { 13850 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13851 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13852 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13853 g_propagate_error (error, _inner_error_); 13854 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13855 return 0; 13856 #line 13855 "tracker-sparql-expression.c" 13857 } else { 13858 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13859 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13860 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13861 g_clear_error (&_inner_error_); 13862 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13863 return 0; 13864 #line 13863 "tracker-sparql-expression.c" 13865 } 13866 } 13867 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13868 result = _tmp30_; 13869 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13870 return result; 13871 #line 13870 "tracker-sparql-expression.c" 13872 } else { 13873 gboolean _tmp31_ = FALSE; 13874 gboolean _tmp32_; 13875 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13876 _tmp31_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_LT, &_inner_error_); 13877 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13878 _tmp32_ = _tmp31_; 13879 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13880 if (_inner_error_ != NULL) { 13881 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13882 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13883 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13884 g_propagate_error (error, _inner_error_); 13885 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13886 return 0; 13887 #line 13886 "tracker-sparql-expression.c" 13888 } else { 13889 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13890 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13891 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13892 g_clear_error (&_inner_error_); 13893 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13894 return 0; 13895 #line 13894 "tracker-sparql-expression.c" 13896 } 13897 } 13898 #line 1387 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13899 if (_tmp32_) { 13900 #line 13899 "tracker-sparql-expression.c" 13901 GString* _tmp33_; 13902 glong _tmp34_; 13903 guint _tmp35_; 13904 TrackerPropertyType _tmp36_; 13905 TrackerPropertyType _tmp37_ = 0; 13906 TrackerPropertyType _tmp38_; 13907 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13908 _tmp33_ = sql; 13909 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13910 _tmp34_ = begin; 13911 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13912 _tmp35_ = n_bindings; 13913 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13914 _tmp36_ = optype; 13915 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13916 _tmp37_ = tracker_sparql_expression_process_relational_expression (self, _tmp33_, _tmp34_, _tmp35_, _tmp36_, " < ", &_inner_error_); 13917 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13918 _tmp38_ = _tmp37_; 13919 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13920 if (_inner_error_ != NULL) { 13921 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13922 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13923 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13924 g_propagate_error (error, _inner_error_); 13925 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13926 return 0; 13927 #line 13926 "tracker-sparql-expression.c" 13928 } else { 13929 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13930 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13931 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13932 g_clear_error (&_inner_error_); 13933 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13934 return 0; 13935 #line 13934 "tracker-sparql-expression.c" 13936 } 13937 } 13938 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13939 result = _tmp38_; 13940 #line 1388 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13941 return result; 13942 #line 13941 "tracker-sparql-expression.c" 13943 } else { 13944 gboolean _tmp39_ = FALSE; 13945 gboolean _tmp40_; 13946 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13947 _tmp39_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_LE, &_inner_error_); 13948 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13949 _tmp40_ = _tmp39_; 13950 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13951 if (_inner_error_ != NULL) { 13952 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13953 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13954 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13955 g_propagate_error (error, _inner_error_); 13956 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13957 return 0; 13958 #line 13957 "tracker-sparql-expression.c" 13959 } else { 13960 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13961 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 13962 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13963 g_clear_error (&_inner_error_); 13964 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13965 return 0; 13966 #line 13965 "tracker-sparql-expression.c" 13967 } 13968 } 13969 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13970 if (_tmp40_) { 13971 #line 13970 "tracker-sparql-expression.c" 13972 GString* _tmp41_; 13973 glong _tmp42_; 13974 guint _tmp43_; 13975 TrackerPropertyType _tmp44_; 13976 TrackerPropertyType _tmp45_ = 0; 13977 TrackerPropertyType _tmp46_; 13978 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13979 _tmp41_ = sql; 13980 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13981 _tmp42_ = begin; 13982 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13983 _tmp43_ = n_bindings; 13984 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13985 _tmp44_ = optype; 13986 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13987 _tmp45_ = tracker_sparql_expression_process_relational_expression (self, _tmp41_, _tmp42_, _tmp43_, _tmp44_, " <= ", &_inner_error_); 13988 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13989 _tmp46_ = _tmp45_; 13990 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13991 if (_inner_error_ != NULL) { 13992 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13993 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 13994 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13995 g_propagate_error (error, _inner_error_); 13996 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 13997 return 0; 13998 #line 13997 "tracker-sparql-expression.c" 13999 } else { 14000 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14001 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14002 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14003 g_clear_error (&_inner_error_); 14004 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14005 return 0; 14006 #line 14005 "tracker-sparql-expression.c" 14007 } 14008 } 14009 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14010 result = _tmp46_; 14011 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14012 return result; 14013 #line 14012 "tracker-sparql-expression.c" 14014 } else { 14015 gboolean _tmp47_ = FALSE; 14016 gboolean _tmp48_; 14017 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14018 _tmp47_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_GT, &_inner_error_); 14019 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14020 _tmp48_ = _tmp47_; 14021 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14022 if (_inner_error_ != NULL) { 14023 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14024 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14025 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14026 g_propagate_error (error, _inner_error_); 14027 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14028 return 0; 14029 #line 14028 "tracker-sparql-expression.c" 14030 } else { 14031 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14032 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14033 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14034 g_clear_error (&_inner_error_); 14035 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14036 return 0; 14037 #line 14036 "tracker-sparql-expression.c" 14038 } 14039 } 14040 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14041 if (_tmp48_) { 14042 #line 14041 "tracker-sparql-expression.c" 14043 GString* _tmp49_; 14044 glong _tmp50_; 14045 guint _tmp51_; 14046 TrackerPropertyType _tmp52_; 14047 TrackerPropertyType _tmp53_ = 0; 14048 TrackerPropertyType _tmp54_; 14049 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14050 _tmp49_ = sql; 14051 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14052 _tmp50_ = begin; 14053 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14054 _tmp51_ = n_bindings; 14055 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14056 _tmp52_ = optype; 14057 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14058 _tmp53_ = tracker_sparql_expression_process_relational_expression (self, _tmp49_, _tmp50_, _tmp51_, _tmp52_, " > ", &_inner_error_); 14059 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14060 _tmp54_ = _tmp53_; 14061 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14062 if (_inner_error_ != NULL) { 14063 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14064 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14065 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14066 g_propagate_error (error, _inner_error_); 14067 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14068 return 0; 14069 #line 14068 "tracker-sparql-expression.c" 14070 } else { 14071 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14072 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14073 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14074 g_clear_error (&_inner_error_); 14075 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14076 return 0; 14077 #line 14076 "tracker-sparql-expression.c" 14078 } 14079 } 14080 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14081 result = _tmp54_; 14082 #line 1392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14083 return result; 14084 #line 14083 "tracker-sparql-expression.c" 14085 } else { 14086 gboolean _tmp55_ = FALSE; 14087 gboolean _tmp56_; 14088 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14089 _tmp55_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_IN, &_inner_error_); 14090 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14091 _tmp56_ = _tmp55_; 14092 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14093 if (_inner_error_ != NULL) { 14094 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14095 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14096 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14097 g_propagate_error (error, _inner_error_); 14098 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14099 return 0; 14100 #line 14099 "tracker-sparql-expression.c" 14101 } else { 14102 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14103 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14104 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14105 g_clear_error (&_inner_error_); 14106 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14107 return 0; 14108 #line 14107 "tracker-sparql-expression.c" 14109 } 14110 } 14111 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14112 if (_tmp56_) { 14113 #line 14112 "tracker-sparql-expression.c" 14114 GString* _tmp57_; 14115 TrackerPropertyType _tmp58_ = 0; 14116 TrackerPropertyType _tmp59_; 14117 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14118 _tmp57_ = sql; 14119 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14120 _tmp58_ = tracker_sparql_expression_translate_in (self, _tmp57_, FALSE, &_inner_error_); 14121 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14122 _tmp59_ = _tmp58_; 14123 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14124 if (_inner_error_ != NULL) { 14125 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14126 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14127 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14128 g_propagate_error (error, _inner_error_); 14129 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14130 return 0; 14131 #line 14130 "tracker-sparql-expression.c" 14132 } else { 14133 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14134 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14135 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14136 g_clear_error (&_inner_error_); 14137 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14138 return 0; 14139 #line 14138 "tracker-sparql-expression.c" 14140 } 14141 } 14142 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14143 result = _tmp59_; 14144 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14145 return result; 14146 #line 14145 "tracker-sparql-expression.c" 14147 } else { 14148 gboolean _tmp60_ = FALSE; 14149 gboolean _tmp61_; 14150 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14151 _tmp60_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_NOT, &_inner_error_); 14152 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14153 _tmp61_ = _tmp60_; 14154 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14155 if (_inner_error_ != NULL) { 14156 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14157 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14158 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14159 g_propagate_error (error, _inner_error_); 14160 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14161 return 0; 14162 #line 14161 "tracker-sparql-expression.c" 14163 } else { 14164 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14165 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14166 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14167 g_clear_error (&_inner_error_); 14168 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14169 return 0; 14170 #line 14169 "tracker-sparql-expression.c" 14171 } 14172 } 14173 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14174 if (_tmp61_) { 14175 #line 14174 "tracker-sparql-expression.c" 14176 GString* _tmp62_; 14177 TrackerPropertyType _tmp63_ = 0; 14178 TrackerPropertyType _tmp64_; 14179 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14180 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OP_IN, &_inner_error_); 14181 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14182 if (_inner_error_ != NULL) { 14183 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14184 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14185 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14186 g_propagate_error (error, _inner_error_); 14187 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14188 return 0; 14189 #line 14188 "tracker-sparql-expression.c" 14190 } else { 14191 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14192 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14193 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14194 g_clear_error (&_inner_error_); 14195 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14196 return 0; 14197 #line 14196 "tracker-sparql-expression.c" 14198 } 14199 } 14200 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14201 _tmp62_ = sql; 14202 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14203 _tmp63_ = tracker_sparql_expression_translate_in (self, _tmp62_, TRUE, &_inner_error_); 14204 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14205 _tmp64_ = _tmp63_; 14206 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14207 if (_inner_error_ != NULL) { 14208 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14209 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14210 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14211 g_propagate_error (error, _inner_error_); 14212 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14213 return 0; 14214 #line 14213 "tracker-sparql-expression.c" 14215 } else { 14216 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14217 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14218 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14219 g_clear_error (&_inner_error_); 14220 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14221 return 0; 14222 #line 14221 "tracker-sparql-expression.c" 14223 } 14224 } 14225 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14226 result = _tmp64_; 14227 #line 1397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14228 return result; 14229 #line 14228 "tracker-sparql-expression.c" 14230 } 14231 } 14232 } 14233 } 14234 } 14235 } 14236 } 14237 } 14238 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14239 result = optype; 14240 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14241 return result; 14242 #line 14241 "tracker-sparql-expression.c" 14243 } 14244 14245 14246 static TrackerPropertyType tracker_sparql_expression_translate_value_logical (TrackerSparqlExpression* self, GString* sql, GError** error) { 14247 TrackerPropertyType result = 0; 14248 GString* _tmp0_; 14249 TrackerPropertyType _tmp1_ = 0; 14250 TrackerPropertyType _tmp2_; 14251 GError * _inner_error_ = NULL; 14252 #line 1402 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14253 g_return_val_if_fail (self != NULL, 0); 14254 #line 1402 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14255 g_return_val_if_fail (sql != NULL, 0); 14256 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14257 _tmp0_ = sql; 14258 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14259 _tmp1_ = tracker_sparql_expression_translate_relational_expression (self, _tmp0_, &_inner_error_); 14260 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14261 _tmp2_ = _tmp1_; 14262 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14263 if (_inner_error_ != NULL) { 14264 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14265 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14266 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14267 g_propagate_error (error, _inner_error_); 14268 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14269 return 0; 14270 #line 14269 "tracker-sparql-expression.c" 14271 } else { 14272 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14273 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14274 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14275 g_clear_error (&_inner_error_); 14276 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14277 return 0; 14278 #line 14277 "tracker-sparql-expression.c" 14279 } 14280 } 14281 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14282 result = _tmp2_; 14283 #line 1403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14284 return result; 14285 #line 14284 "tracker-sparql-expression.c" 14286 } 14287 14288 14289 static TrackerPropertyType tracker_sparql_expression_translate_conditional_and_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 14290 TrackerPropertyType result = 0; 14291 GString* _tmp0_; 14292 gssize _tmp1_; 14293 glong begin; 14294 GString* _tmp2_; 14295 TrackerPropertyType _tmp3_ = 0; 14296 TrackerPropertyType optype; 14297 GError * _inner_error_ = NULL; 14298 #line 1406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14299 g_return_val_if_fail (self != NULL, 0); 14300 #line 1406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14301 g_return_val_if_fail (sql != NULL, 0); 14302 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14303 _tmp0_ = sql; 14304 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14305 _tmp1_ = _tmp0_->len; 14306 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14307 begin = (glong) _tmp1_; 14308 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14309 _tmp2_ = sql; 14310 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14311 _tmp3_ = tracker_sparql_expression_translate_value_logical (self, _tmp2_, &_inner_error_); 14312 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14313 optype = _tmp3_; 14314 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14315 if (_inner_error_ != NULL) { 14316 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14317 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14318 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14319 g_propagate_error (error, _inner_error_); 14320 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14321 return 0; 14322 #line 14321 "tracker-sparql-expression.c" 14323 } else { 14324 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14325 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14326 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14327 g_clear_error (&_inner_error_); 14328 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14329 return 0; 14330 #line 14329 "tracker-sparql-expression.c" 14331 } 14332 } 14333 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14334 while (TRUE) { 14335 #line 14334 "tracker-sparql-expression.c" 14336 gboolean _tmp4_ = FALSE; 14337 gboolean _tmp5_; 14338 TrackerPropertyType _tmp6_; 14339 GString* _tmp8_; 14340 glong _tmp9_; 14341 GString* _tmp10_; 14342 GString* _tmp11_; 14343 TrackerPropertyType _tmp12_ = 0; 14344 TrackerPropertyType _tmp13_; 14345 GString* _tmp14_; 14346 TrackerPropertyType _tmp15_; 14347 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14348 _tmp4_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_AND, &_inner_error_); 14349 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14350 _tmp5_ = _tmp4_; 14351 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14352 if (_inner_error_ != NULL) { 14353 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14354 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14355 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14356 g_propagate_error (error, _inner_error_); 14357 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14358 return 0; 14359 #line 14358 "tracker-sparql-expression.c" 14360 } else { 14361 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14362 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14363 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14364 g_clear_error (&_inner_error_); 14365 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14366 return 0; 14367 #line 14366 "tracker-sparql-expression.c" 14368 } 14369 } 14370 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14371 if (!_tmp5_) { 14372 #line 1409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14373 break; 14374 #line 14373 "tracker-sparql-expression.c" 14375 } 14376 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14377 _tmp6_ = optype; 14378 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14379 if (_tmp6_ != TRACKER_PROPERTY_TYPE_BOOLEAN) { 14380 #line 14379 "tracker-sparql-expression.c" 14381 GError* _tmp7_ = NULL; 14382 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14383 _tmp7_ = tracker_sparql_expression_get_error (self, "expected boolean expression"); 14384 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14385 _inner_error_ = _tmp7_; 14386 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14387 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14388 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14389 g_propagate_error (error, _inner_error_); 14390 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14391 return 0; 14392 #line 14391 "tracker-sparql-expression.c" 14393 } else { 14394 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14395 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14396 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14397 g_clear_error (&_inner_error_); 14398 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14399 return 0; 14400 #line 14399 "tracker-sparql-expression.c" 14401 } 14402 } 14403 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14404 _tmp8_ = sql; 14405 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14406 _tmp9_ = begin; 14407 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14408 g_string_insert (_tmp8_, (gssize) _tmp9_, "("); 14409 #line 1414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14410 _tmp10_ = sql; 14411 #line 1414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14412 g_string_append (_tmp10_, " AND "); 14413 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14414 _tmp11_ = sql; 14415 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14416 _tmp12_ = tracker_sparql_expression_translate_value_logical (self, _tmp11_, &_inner_error_); 14417 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14418 _tmp13_ = _tmp12_; 14419 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14420 if (_inner_error_ != NULL) { 14421 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14422 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14423 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14424 g_propagate_error (error, _inner_error_); 14425 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14426 return 0; 14427 #line 14426 "tracker-sparql-expression.c" 14428 } else { 14429 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14430 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14431 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14432 g_clear_error (&_inner_error_); 14433 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14434 return 0; 14435 #line 14434 "tracker-sparql-expression.c" 14436 } 14437 } 14438 #line 1415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14439 optype = _tmp13_; 14440 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14441 _tmp14_ = sql; 14442 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14443 g_string_append (_tmp14_, ")"); 14444 #line 1417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14445 _tmp15_ = optype; 14446 #line 1417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14447 if (_tmp15_ != TRACKER_PROPERTY_TYPE_BOOLEAN) { 14448 #line 14447 "tracker-sparql-expression.c" 14449 GError* _tmp16_ = NULL; 14450 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14451 _tmp16_ = tracker_sparql_expression_get_error (self, "expected boolean expression"); 14452 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14453 _inner_error_ = _tmp16_; 14454 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14455 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14456 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14457 g_propagate_error (error, _inner_error_); 14458 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14459 return 0; 14460 #line 14459 "tracker-sparql-expression.c" 14461 } else { 14462 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14463 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14464 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14465 g_clear_error (&_inner_error_); 14466 #line 1418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14467 return 0; 14468 #line 14467 "tracker-sparql-expression.c" 14469 } 14470 } 14471 } 14472 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14473 result = optype; 14474 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14475 return result; 14476 #line 14475 "tracker-sparql-expression.c" 14477 } 14478 14479 14480 static TrackerPropertyType tracker_sparql_expression_translate_conditional_or_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 14481 TrackerPropertyType result = 0; 14482 GString* _tmp0_; 14483 gssize _tmp1_; 14484 glong begin; 14485 GString* _tmp2_; 14486 TrackerPropertyType _tmp3_ = 0; 14487 TrackerPropertyType optype; 14488 GError * _inner_error_ = NULL; 14489 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14490 g_return_val_if_fail (self != NULL, 0); 14491 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14492 g_return_val_if_fail (sql != NULL, 0); 14493 #line 1425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14494 _tmp0_ = sql; 14495 #line 1425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14496 _tmp1_ = _tmp0_->len; 14497 #line 1425 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14498 begin = (glong) _tmp1_; 14499 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14500 _tmp2_ = sql; 14501 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14502 _tmp3_ = tracker_sparql_expression_translate_conditional_and_expression (self, _tmp2_, &_inner_error_); 14503 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14504 optype = _tmp3_; 14505 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14506 if (_inner_error_ != NULL) { 14507 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14508 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14509 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14510 g_propagate_error (error, _inner_error_); 14511 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14512 return 0; 14513 #line 14512 "tracker-sparql-expression.c" 14514 } else { 14515 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14516 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14517 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14518 g_clear_error (&_inner_error_); 14519 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14520 return 0; 14521 #line 14520 "tracker-sparql-expression.c" 14522 } 14523 } 14524 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14525 while (TRUE) { 14526 #line 14525 "tracker-sparql-expression.c" 14527 gboolean _tmp4_ = FALSE; 14528 gboolean _tmp5_; 14529 TrackerPropertyType _tmp6_; 14530 GString* _tmp8_; 14531 glong _tmp9_; 14532 GString* _tmp10_; 14533 GString* _tmp11_; 14534 TrackerPropertyType _tmp12_ = 0; 14535 TrackerPropertyType _tmp13_; 14536 GString* _tmp14_; 14537 TrackerPropertyType _tmp15_; 14538 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14539 _tmp4_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OP_OR, &_inner_error_); 14540 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14541 _tmp5_ = _tmp4_; 14542 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14543 if (_inner_error_ != NULL) { 14544 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14545 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14546 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14547 g_propagate_error (error, _inner_error_); 14548 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14549 return 0; 14550 #line 14549 "tracker-sparql-expression.c" 14551 } else { 14552 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14553 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14554 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14555 g_clear_error (&_inner_error_); 14556 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14557 return 0; 14558 #line 14557 "tracker-sparql-expression.c" 14559 } 14560 } 14561 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14562 if (!_tmp5_) { 14563 #line 1427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14564 break; 14565 #line 14564 "tracker-sparql-expression.c" 14566 } 14567 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14568 _tmp6_ = optype; 14569 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14570 if (_tmp6_ != TRACKER_PROPERTY_TYPE_BOOLEAN) { 14571 #line 14570 "tracker-sparql-expression.c" 14572 GError* _tmp7_ = NULL; 14573 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14574 _tmp7_ = tracker_sparql_expression_get_error (self, "expected boolean expression"); 14575 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14576 _inner_error_ = _tmp7_; 14577 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14578 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14579 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14580 g_propagate_error (error, _inner_error_); 14581 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14582 return 0; 14583 #line 14582 "tracker-sparql-expression.c" 14584 } else { 14585 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14586 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14587 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14588 g_clear_error (&_inner_error_); 14589 #line 1429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14590 return 0; 14591 #line 14590 "tracker-sparql-expression.c" 14592 } 14593 } 14594 #line 1431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14595 _tmp8_ = sql; 14596 #line 1431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14597 _tmp9_ = begin; 14598 #line 1431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14599 g_string_insert (_tmp8_, (gssize) _tmp9_, "("); 14600 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14601 _tmp10_ = sql; 14602 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14603 g_string_append (_tmp10_, " OR "); 14604 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14605 _tmp11_ = sql; 14606 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14607 _tmp12_ = tracker_sparql_expression_translate_conditional_and_expression (self, _tmp11_, &_inner_error_); 14608 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14609 _tmp13_ = _tmp12_; 14610 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14611 if (_inner_error_ != NULL) { 14612 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14613 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14614 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14615 g_propagate_error (error, _inner_error_); 14616 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14617 return 0; 14618 #line 14617 "tracker-sparql-expression.c" 14619 } else { 14620 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14621 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14622 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14623 g_clear_error (&_inner_error_); 14624 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14625 return 0; 14626 #line 14625 "tracker-sparql-expression.c" 14627 } 14628 } 14629 #line 1433 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14630 optype = _tmp13_; 14631 #line 1434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14632 _tmp14_ = sql; 14633 #line 1434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14634 g_string_append (_tmp14_, ")"); 14635 #line 1435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14636 _tmp15_ = optype; 14637 #line 1435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14638 if (_tmp15_ != TRACKER_PROPERTY_TYPE_BOOLEAN) { 14639 #line 14638 "tracker-sparql-expression.c" 14640 GError* _tmp16_ = NULL; 14641 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14642 _tmp16_ = tracker_sparql_expression_get_error (self, "expected boolean expression"); 14643 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14644 _inner_error_ = _tmp16_; 14645 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14646 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14647 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14648 g_propagate_error (error, _inner_error_); 14649 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14650 return 0; 14651 #line 14650 "tracker-sparql-expression.c" 14652 } else { 14653 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14654 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14655 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14656 g_clear_error (&_inner_error_); 14657 #line 1436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14658 return 0; 14659 #line 14658 "tracker-sparql-expression.c" 14660 } 14661 } 14662 } 14663 #line 1439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14664 result = optype; 14665 #line 1439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14666 return result; 14667 #line 14666 "tracker-sparql-expression.c" 14668 } 14669 14670 14671 TrackerPropertyType tracker_sparql_expression_translate_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 14672 TrackerPropertyType result = 0; 14673 GString* _tmp0_; 14674 TrackerPropertyType _tmp1_ = 0; 14675 TrackerPropertyType _tmp2_; 14676 GError * _inner_error_ = NULL; 14677 #line 1442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14678 g_return_val_if_fail (self != NULL, 0); 14679 #line 1442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14680 g_return_val_if_fail (sql != NULL, 0); 14681 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14682 _tmp0_ = sql; 14683 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14684 _tmp1_ = tracker_sparql_expression_translate_conditional_or_expression (self, _tmp0_, &_inner_error_); 14685 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14686 _tmp2_ = _tmp1_; 14687 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14688 if (_inner_error_ != NULL) { 14689 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14690 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14691 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14692 g_propagate_error (error, _inner_error_); 14693 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14694 return 0; 14695 #line 14694 "tracker-sparql-expression.c" 14696 } else { 14697 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14698 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14699 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14700 g_clear_error (&_inner_error_); 14701 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14702 return 0; 14703 #line 14702 "tracker-sparql-expression.c" 14704 } 14705 } 14706 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14707 result = _tmp2_; 14708 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14709 return result; 14710 #line 14709 "tracker-sparql-expression.c" 14711 } 14712 14713 14714 static TrackerPropertyType tracker_sparql_expression_translate_bracketted_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 14715 TrackerPropertyType result = 0; 14716 TrackerSparqlTokenType _tmp0_ = 0; 14717 GString* _tmp9_; 14718 TrackerPropertyType _tmp10_ = 0; 14719 TrackerPropertyType optype; 14720 GError * _inner_error_ = NULL; 14721 #line 1446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14722 g_return_val_if_fail (self != NULL, 0); 14723 #line 1446 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14724 g_return_val_if_fail (sql != NULL, 0); 14725 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14726 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 14727 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14728 if (_inner_error_ != NULL) { 14729 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14730 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14731 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14732 g_propagate_error (error, _inner_error_); 14733 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14734 return 0; 14735 #line 14734 "tracker-sparql-expression.c" 14736 } else { 14737 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14738 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14739 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14740 g_clear_error (&_inner_error_); 14741 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14742 return 0; 14743 #line 14742 "tracker-sparql-expression.c" 14744 } 14745 } 14746 #line 1449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14747 _tmp0_ = tracker_sparql_expression_current (self); 14748 #line 1449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14749 if (_tmp0_ == TRACKER_SPARQL_TOKEN_TYPE_SELECT) { 14750 #line 14749 "tracker-sparql-expression.c" 14751 GString* _tmp1_; 14752 TrackerSparqlPattern* _tmp2_; 14753 TrackerSparqlPattern* _tmp3_; 14754 GString* _tmp4_; 14755 TrackerSparqlSelectContext* _tmp5_ = NULL; 14756 TrackerSparqlSelectContext* select_context; 14757 GString* _tmp6_; 14758 TrackerSparqlSelectContext* _tmp7_; 14759 TrackerPropertyType _tmp8_; 14760 #line 1452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14761 _tmp1_ = sql; 14762 #line 1452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14763 g_string_append (_tmp1_, "("); 14764 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14765 _tmp2_ = tracker_sparql_expression_get_pattern (self); 14766 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14767 _tmp3_ = _tmp2_; 14768 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14769 _tmp4_ = sql; 14770 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14771 _tmp5_ = tracker_sparql_pattern_translate_select (_tmp3_, _tmp4_, TRUE, TRUE, &_inner_error_); 14772 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14773 select_context = _tmp5_; 14774 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14775 if (_inner_error_ != NULL) { 14776 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14777 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14778 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14779 g_propagate_error (error, _inner_error_); 14780 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14781 return 0; 14782 #line 14781 "tracker-sparql-expression.c" 14783 } else { 14784 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14785 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14786 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14787 g_clear_error (&_inner_error_); 14788 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14789 return 0; 14790 #line 14789 "tracker-sparql-expression.c" 14791 } 14792 } 14793 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14794 _tmp6_ = sql; 14795 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14796 g_string_append (_tmp6_, ")"); 14797 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14798 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 14799 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14800 if (_inner_error_ != NULL) { 14801 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14802 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14803 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14804 g_propagate_error (error, _inner_error_); 14805 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14806 _tracker_sparql_context_unref0 (select_context); 14807 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14808 return 0; 14809 #line 14808 "tracker-sparql-expression.c" 14810 } else { 14811 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14812 _tracker_sparql_context_unref0 (select_context); 14813 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14814 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14815 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14816 g_clear_error (&_inner_error_); 14817 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14818 return 0; 14819 #line 14818 "tracker-sparql-expression.c" 14820 } 14821 } 14822 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14823 _tmp7_ = select_context; 14824 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14825 _tmp8_ = _tmp7_->type; 14826 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14827 result = _tmp8_; 14828 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14829 _tracker_sparql_context_unref0 (select_context); 14830 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14831 return result; 14832 #line 14831 "tracker-sparql-expression.c" 14833 } 14834 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14835 _tmp9_ = sql; 14836 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14837 _tmp10_ = tracker_sparql_expression_translate_expression (self, _tmp9_, &_inner_error_); 14838 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14839 optype = _tmp10_; 14840 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14841 if (_inner_error_ != NULL) { 14842 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14843 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14844 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14845 g_propagate_error (error, _inner_error_); 14846 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14847 return 0; 14848 #line 14847 "tracker-sparql-expression.c" 14849 } else { 14850 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14851 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14852 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14853 g_clear_error (&_inner_error_); 14854 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14855 return 0; 14856 #line 14855 "tracker-sparql-expression.c" 14857 } 14858 } 14859 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14860 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 14861 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14862 if (_inner_error_ != NULL) { 14863 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14864 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14865 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14866 g_propagate_error (error, _inner_error_); 14867 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14868 return 0; 14869 #line 14868 "tracker-sparql-expression.c" 14870 } else { 14871 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14872 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14873 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14874 g_clear_error (&_inner_error_); 14875 #line 1461 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14876 return 0; 14877 #line 14876 "tracker-sparql-expression.c" 14878 } 14879 } 14880 #line 1462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14881 result = optype; 14882 #line 1462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14883 return result; 14884 #line 14883 "tracker-sparql-expression.c" 14885 } 14886 14887 14888 static TrackerPropertyType tracker_sparql_expression_translate_aggregate_expression (TrackerSparqlExpression* self, GString* sql, GError** error) { 14889 TrackerPropertyType result = 0; 14890 gboolean _tmp0_ = FALSE; 14891 gboolean _tmp1_; 14892 GString* _tmp3_; 14893 TrackerPropertyType _tmp4_ = 0; 14894 TrackerPropertyType optype; 14895 GError * _inner_error_ = NULL; 14896 #line 1465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14897 g_return_val_if_fail (self != NULL, 0); 14898 #line 1465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14899 g_return_val_if_fail (sql != NULL, 0); 14900 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14901 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 14902 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14903 if (_inner_error_ != NULL) { 14904 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14905 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14906 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14907 g_propagate_error (error, _inner_error_); 14908 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14909 return 0; 14910 #line 14909 "tracker-sparql-expression.c" 14911 } else { 14912 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14913 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14914 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14915 g_clear_error (&_inner_error_); 14916 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14917 return 0; 14918 #line 14917 "tracker-sparql-expression.c" 14919 } 14920 } 14921 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14922 _tmp0_ = tracker_sparql_expression_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DISTINCT, &_inner_error_); 14923 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14924 _tmp1_ = _tmp0_; 14925 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14926 if (_inner_error_ != NULL) { 14927 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14928 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14929 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14930 g_propagate_error (error, _inner_error_); 14931 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14932 return 0; 14933 #line 14932 "tracker-sparql-expression.c" 14934 } else { 14935 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14936 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14937 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14938 g_clear_error (&_inner_error_); 14939 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14940 return 0; 14941 #line 14940 "tracker-sparql-expression.c" 14942 } 14943 } 14944 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14945 if (_tmp1_) { 14946 #line 14945 "tracker-sparql-expression.c" 14947 GString* _tmp2_; 14948 #line 1468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14949 _tmp2_ = sql; 14950 #line 1468 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14951 g_string_append (_tmp2_, "DISTINCT "); 14952 #line 14951 "tracker-sparql-expression.c" 14953 } 14954 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14955 _tmp3_ = sql; 14956 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14957 _tmp4_ = tracker_sparql_expression_translate_expression (self, _tmp3_, &_inner_error_); 14958 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14959 optype = _tmp4_; 14960 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14961 if (_inner_error_ != NULL) { 14962 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14963 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14964 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14965 g_propagate_error (error, _inner_error_); 14966 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14967 return 0; 14968 #line 14967 "tracker-sparql-expression.c" 14969 } else { 14970 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14971 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14972 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14973 g_clear_error (&_inner_error_); 14974 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14975 return 0; 14976 #line 14975 "tracker-sparql-expression.c" 14977 } 14978 } 14979 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14980 tracker_sparql_expression_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 14981 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14982 if (_inner_error_ != NULL) { 14983 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14984 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 14985 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14986 g_propagate_error (error, _inner_error_); 14987 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14988 return 0; 14989 #line 14988 "tracker-sparql-expression.c" 14990 } else { 14991 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14992 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 14993 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14994 g_clear_error (&_inner_error_); 14995 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 14996 return 0; 14997 #line 14996 "tracker-sparql-expression.c" 14998 } 14999 } 15000 #line 1472 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15001 result = optype; 15002 #line 1472 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15003 return result; 15004 #line 15003 "tracker-sparql-expression.c" 15005 } 15006 15007 15008 TrackerPropertyType tracker_sparql_expression_translate_constraint (TrackerSparqlExpression* self, GString* sql, GError** error) { 15009 TrackerPropertyType result = 0; 15010 TrackerSparqlTokenType _tmp0_ = 0; 15011 GError * _inner_error_ = NULL; 15012 #line 1475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15013 g_return_val_if_fail (self != NULL, 0); 15014 #line 1475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15015 g_return_val_if_fail (sql != NULL, 0); 15016 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15017 _tmp0_ = tracker_sparql_expression_current (self); 15018 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15019 switch (_tmp0_) { 15020 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15021 case TRACKER_SPARQL_TOKEN_TYPE_STR: 15022 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15023 case TRACKER_SPARQL_TOKEN_TYPE_LANG: 15024 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15025 case TRACKER_SPARQL_TOKEN_TYPE_LANGMATCHES: 15026 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15027 case TRACKER_SPARQL_TOKEN_TYPE_DATATYPE: 15028 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15029 case TRACKER_SPARQL_TOKEN_TYPE_BOUND: 15030 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15031 case TRACKER_SPARQL_TOKEN_TYPE_IF: 15032 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15033 case TRACKER_SPARQL_TOKEN_TYPE_SAMETERM: 15034 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15035 case TRACKER_SPARQL_TOKEN_TYPE_ISIRI: 15036 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15037 case TRACKER_SPARQL_TOKEN_TYPE_ISURI: 15038 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15039 case TRACKER_SPARQL_TOKEN_TYPE_ISBLANK: 15040 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15041 case TRACKER_SPARQL_TOKEN_TYPE_ISLITERAL: 15042 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15043 case TRACKER_SPARQL_TOKEN_TYPE_REGEX: 15044 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15045 case TRACKER_SPARQL_TOKEN_TYPE_EXISTS: 15046 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15047 case TRACKER_SPARQL_TOKEN_TYPE_NOT: 15048 #line 15047 "tracker-sparql-expression.c" 15049 { 15050 GString* _tmp1_; 15051 TrackerPropertyType _tmp2_ = 0; 15052 TrackerPropertyType _tmp3_; 15053 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15054 _tmp1_ = sql; 15055 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15056 _tmp2_ = tracker_sparql_expression_translate_primary_expression (self, _tmp1_, &_inner_error_); 15057 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15058 _tmp3_ = _tmp2_; 15059 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15060 if (_inner_error_ != NULL) { 15061 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15062 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 15063 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15064 g_propagate_error (error, _inner_error_); 15065 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15066 return 0; 15067 #line 15066 "tracker-sparql-expression.c" 15068 } else { 15069 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15070 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 15071 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15072 g_clear_error (&_inner_error_); 15073 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15074 return 0; 15075 #line 15074 "tracker-sparql-expression.c" 15076 } 15077 } 15078 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15079 result = _tmp3_; 15080 #line 1491 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15081 return result; 15082 #line 15081 "tracker-sparql-expression.c" 15083 } 15084 default: 15085 { 15086 GString* _tmp4_; 15087 TrackerPropertyType _tmp5_ = 0; 15088 TrackerPropertyType _tmp6_; 15089 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15090 _tmp4_ = sql; 15091 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15092 _tmp5_ = tracker_sparql_expression_translate_bracketted_expression (self, _tmp4_, &_inner_error_); 15093 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15094 _tmp6_ = _tmp5_; 15095 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15096 if (_inner_error_ != NULL) { 15097 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15098 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 15099 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15100 g_propagate_error (error, _inner_error_); 15101 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15102 return 0; 15103 #line 15102 "tracker-sparql-expression.c" 15104 } else { 15105 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15106 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 15107 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15108 g_clear_error (&_inner_error_); 15109 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15110 return 0; 15111 #line 15110 "tracker-sparql-expression.c" 15112 } 15113 } 15114 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15115 result = _tmp6_; 15116 #line 1493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15117 return result; 15118 #line 15117 "tracker-sparql-expression.c" 15119 } 15120 } 15121 } 15122 15123 15124 static TrackerSparqlContext* tracker_sparql_expression_get_context (TrackerSparqlExpression* self) { 15125 TrackerSparqlContext* result; 15126 TrackerSparqlQuery* _tmp0_; 15127 TrackerSparqlContext* _tmp1_; 15128 #line 36 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15129 g_return_val_if_fail (self != NULL, NULL); 15130 #line 36 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15131 _tmp0_ = self->priv->query; 15132 #line 36 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15133 _tmp1_ = _tmp0_->context; 15134 #line 36 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15135 result = _tmp1_; 15136 #line 36 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15137 return result; 15138 #line 15137 "tracker-sparql-expression.c" 15139 } 15140 15141 15142 static TrackerSparqlPattern* tracker_sparql_expression_get_pattern (TrackerSparqlExpression* self) { 15143 TrackerSparqlPattern* result; 15144 TrackerSparqlQuery* _tmp0_; 15145 TrackerSparqlPattern* _tmp1_; 15146 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15147 g_return_val_if_fail (self != NULL, NULL); 15148 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15149 _tmp0_ = self->priv->query; 15150 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15151 _tmp1_ = _tmp0_->pattern; 15152 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15153 result = _tmp1_; 15154 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15155 return result; 15156 #line 15155 "tracker-sparql-expression.c" 15157 } 15158 15159 15160 static void tracker_sparql_expression_class_init (TrackerSparqlExpressionClass * klass) { 15161 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15162 tracker_sparql_expression_parent_class = g_type_class_peek_parent (klass); 15163 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15164 g_type_class_add_private (klass, sizeof (TrackerSparqlExpressionPrivate)); 15165 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15166 G_OBJECT_CLASS (klass)->get_property = _vala_tracker_sparql_expression_get_property; 15167 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15168 G_OBJECT_CLASS (klass)->finalize = tracker_sparql_expression_finalize; 15169 #line 15168 "tracker-sparql-expression.c" 15170 } 15171 15172 15173 static void tracker_sparql_expression_instance_init (TrackerSparqlExpression * self) { 15174 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15175 self->priv = TRACKER_SPARQL_EXPRESSION_GET_PRIVATE (self); 15176 #line 15175 "tracker-sparql-expression.c" 15177 } 15178 15179 15180 static void tracker_sparql_expression_finalize (GObject* obj) { 15181 TrackerSparqlExpression * self; 15182 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15183 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpression); 15184 #line 29 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15185 _g_free0 (self->priv->fts_sql); 15186 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15187 G_OBJECT_CLASS (tracker_sparql_expression_parent_class)->finalize (obj); 15188 #line 15187 "tracker-sparql-expression.c" 15189 } 15190 15191 15192 GType tracker_sparql_expression_get_type (void) { 15193 static volatile gsize tracker_sparql_expression_type_id__volatile = 0; 15194 if (g_once_init_enter (&tracker_sparql_expression_type_id__volatile)) { 15195 static const GTypeInfo g_define_type_info = { sizeof (TrackerSparqlExpressionClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_sparql_expression_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerSparqlExpression), 0, (GInstanceInitFunc) tracker_sparql_expression_instance_init, NULL }; 15196 GType tracker_sparql_expression_type_id; 15197 tracker_sparql_expression_type_id = g_type_register_static (G_TYPE_OBJECT, "TrackerSparqlExpression", &g_define_type_info, 0); 15198 g_once_init_leave (&tracker_sparql_expression_type_id__volatile, tracker_sparql_expression_type_id); 15199 } 15200 return tracker_sparql_expression_type_id__volatile; 15201 } 15202 15203
variable 'self' set but not used
(emitted by gcc)
15204 static void _vala_tracker_sparql_expression_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { 15205 TrackerSparqlExpression * self; 15206 self = G_TYPE_CHECK_INSTANCE_CAST (object, TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpression);
Value stored to 'self' is never read
(emitted by clang-analyzer)

TODO: a detailed trace is available in the data model (not yet rendered in this report)

15207 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15208 switch (property_id) { 15209 #line 15208 "tracker-sparql-expression.c" 15210 default: 15211 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15212 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); 15213 #line 20 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-expression.vala" 15214 break; 15215 #line 15214 "tracker-sparql-expression.c" 15216 } 15217 } 15218 15219 15220 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { 15221 if ((array != NULL) && (destroy_func != NULL)) { 15222 int i; 15223 for (i = 0; i < array_length; i = i + 1) { 15224 if (((gpointer*) array)[i] != NULL) { 15225 destroy_func (((gpointer*) array)[i]); 15226 } 15227 } 15228 } 15229 } 15230 15231 15232 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { 15233 _vala_array_destroy (array, array_length, destroy_func); 15234 g_free (array); 15235 } 15236 15237 15238 static gint _vala_array_length (gpointer array) { 15239 int length; 15240 length = 0; 15241 if (array) { 15242 while (((gpointer*) array)[length]) { 15243 length++; 15244 } 15245 } 15246 return length; 15247 }