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

Location Tool Test ID Function Issue
tracker-sparql-pattern.c:799:7 clang-analyzer Value stored to 'prop_collection_length1' is never read
tracker-sparql-pattern.c:1139:8 clang-analyzer Value stored to 'prop_collection_length1' is never read
tracker-sparql-pattern.c:1325:7 clang-analyzer Value stored to 'prop_collection_length1' is never read
tracker-sparql-pattern.c:1393:0 cppcheck syntaxError syntax error
tracker-sparql-pattern.c:2636:11 gcc unused-but-set-variable tracker_sparql_pattern_translate_select variable '_tmp84__length1' set but not used
tracker-sparql-pattern.c:2727:6 clang-analyzer Value stored to '_tmp78_' is never read
tracker-sparql-pattern.c:2729:6 clang-analyzer Value stored to '_tmp78__length1' is never read
tracker-sparql-pattern.c:2743:6 clang-analyzer Value stored to '_tmp84_' is never read
tracker-sparql-pattern.c:2745:6 clang-analyzer Value stored to '_tmp84__length1' is never read
tracker-sparql-pattern.c:2876:6 clang-analyzer Value stored to '_tmp102_' is never read
tracker-sparql-pattern.c:2878:6 clang-analyzer Value stored to '_tmp102__length1' is never read
tracker-sparql-pattern.c:4343:4 clang-analyzer Value stored to 'fts_var_collection_length1' is never read
tracker-sparql-pattern.c:7950:8 gcc unused-variable tracker_sparql_pattern_is_subclass unused variable '_superclass_collection_size_'
tracker-sparql-pattern.c:7960:3 clang-analyzer Value stored to 'superclass_collection_length1' is never read
tracker-sparql-pattern.c:9057:2 gcc _tracker_sparql_variable_hash_ghash_func passing argument 1 of 'tracker_sparql_variable_hash' discards 'const' qualifier from pointer target type [enabled by default]
tracker-sparql-pattern.c:9066:2 gcc _tracker_sparql_variable_equal_gequal_func passing argument 1 of 'tracker_sparql_variable_equal' discards 'const' qualifier from pointer target type [enabled by default]
tracker-sparql-pattern.c:10932:12 gcc unused-but-set-variable tracker_sparql_pattern_translate_group_graph_pattern variable '_tmp273__length1' set but not used
tracker-sparql-pattern.c:10940:7 clang-analyzer Value stored to '_tmp273_' is never read
tracker-sparql-pattern.c:10942:7 clang-analyzer Value stored to '_tmp273__length1' is never read
tracker-sparql-pattern.c:11161:2 clang-analyzer Value stored to '_tmp287_' is never read
tracker-sparql-pattern.c:11189:4 clang-analyzer Value stored to 'filter_location_collection_length1' is never read
tracker-sparql-pattern.c:11193:27 clang-analyzer Value stored to 'filter_location' during its initialization is never read
tracker-sparql-pattern.c:11405:9 gcc unused-but-set-variable tracker_sparql_pattern_translate_group_or_union_graph_pattern variable '_tmp15__length1' set but not used
tracker-sparql-pattern.c:11467:4 clang-analyzer Value stored to '_tmp9_' is never read
tracker-sparql-pattern.c:11469:4 clang-analyzer Value stored to '_tmp9__length1' is never read
tracker-sparql-pattern.c:11518:4 clang-analyzer Value stored to '_tmp15_' is never read
tracker-sparql-pattern.c:11520:4 clang-analyzer Value stored to '_tmp15__length1' is never read
tracker-sparql-pattern.c:11527:2 clang-analyzer Value stored to '_tmp16_' is never read
tracker-sparql-pattern.c:11550:4 clang-analyzer Value stored to 'sub_context_collection_length1' is never read
tracker-sparql-pattern.c:11610:10 clang-analyzer Value stored to '_tmp25_' is never read
tracker-sparql-pattern.c:11612:10 clang-analyzer Value stored to '_tmp25__length1' is never read
tracker-sparql-pattern.c:11710:6 clang-analyzer Value stored to '_tmp40_' is never read
tracker-sparql-pattern.c:11752:7 clang-analyzer Value stored to 'v_collection_length1' is never read
tracker-sparql-pattern.c:11778:9 clang-analyzer Value stored to '_tmp47__length1' is never read
tracker-sparql-pattern.c:11832:6 clang-analyzer Value stored to '_tmp63__length1' is never read
tracker-sparql-pattern.c:11873:3 clang-analyzer Value stored to '_tmp73__length1' is never read
tracker-sparql-pattern.c:13140:13 gcc unused-variable tracker_sparql_pattern_parse_object unused variable '_cl_collection_size_'
tracker-sparql-pattern.c:13150:8 clang-analyzer Value stored to 'cl_collection_length1' is never read
tracker-sparql-pattern.c:15056:25 gcc unused-but-set-variable _vala_tracker_sparql_pattern_get_property variable 'self' set but not used
tracker-sparql-pattern.c:15062:2 clang-analyzer Value stored to 'self' is never read
tracker-sparql-pattern.c:15072:25 gcc unused-but-set-variable _vala_tracker_sparql_pattern_set_property variable 'self' set but not used
tracker-sparql-pattern.c:15078:2 clang-analyzer Value stored to 'self' is never read
    1 /* tracker-sparql-pattern.c generated by valac 0.18.1, the Vala compiler
    2  * generated from tracker-sparql-pattern.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-data/tracker-class.h"
   28 #include "libtracker-sparql/tracker-sparql.h"
   29 #include "libtracker-data/tracker-data-query.h"
   30 #include "libtracker-data/tracker-data-update.h"
   31 #include "libtracker-data/tracker-data-backup.h"
   32 #include "libtracker-data/tracker-db-interface.h"
   33 #include "libtracker-data/tracker-db-manager.h"
   34 #include "libtracker-data/tracker-ontologies.h"
   35 #include "libtracker-data/tracker-property.h"
   36 
   37 
   38 #define TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE (tracker_sparql_predicate_variable_get_type ())
   39 #define TRACKER_SPARQL_PREDICATE_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariable))
   40 #define TRACKER_SPARQL_PREDICATE_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariableClass))
   41 #define TRACKER_SPARQL_IS_PREDICATE_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE))
   42 #define TRACKER_SPARQL_IS_PREDICATE_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE))
   43 #define TRACKER_SPARQL_PREDICATE_VARIABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariableClass))
   44 
   45 typedef struct _TrackerSparqlPredicateVariable TrackerSparqlPredicateVariable;
   46 typedef struct _TrackerSparqlPredicateVariableClass TrackerSparqlPredicateVariableClass;
   47 typedef struct _TrackerSparqlPredicateVariablePrivate TrackerSparqlPredicateVariablePrivate;
   48 #define _g_free0(var) (var = (g_free (var), NULL))
   49 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
   50 
   51 #define TRACKER_SPARQL_TYPE_QUERY (tracker_sparql_query_get_type ())
   52 #define TRACKER_SPARQL_QUERY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQuery))
   53 #define TRACKER_SPARQL_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQueryClass))
   54 #define TRACKER_SPARQL_IS_QUERY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_QUERY))
   55 #define TRACKER_SPARQL_IS_QUERY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_QUERY))
   56 #define TRACKER_SPARQL_QUERY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_QUERY, TrackerSparqlQueryClass))
   57 
   58 typedef struct _TrackerSparqlQuery TrackerSparqlQuery;
   59 typedef struct _TrackerSparqlQueryClass TrackerSparqlQueryClass;
   60 #define _g_string_free0(var) ((var == NULL) ? NULL : (var = (g_string_free (var, TRUE), NULL)))
   61 
   62 #define TRACKER_SPARQL_TYPE_DATA_BINDING (tracker_sparql_data_binding_get_type ())
   63 #define TRACKER_SPARQL_DATA_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBinding))
   64 #define TRACKER_SPARQL_DATA_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBindingClass))
   65 #define TRACKER_SPARQL_IS_DATA_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING))
   66 #define TRACKER_SPARQL_IS_DATA_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_DATA_BINDING))
   67 #define TRACKER_SPARQL_DATA_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_DATA_BINDING, TrackerSparqlDataBindingClass))
   68 
   69 typedef struct _TrackerSparqlDataBinding TrackerSparqlDataBinding;
   70 typedef struct _TrackerSparqlDataBindingClass TrackerSparqlDataBindingClass;
   71 
   72 #define TRACKER_SPARQL_TYPE_LITERAL_BINDING (tracker_sparql_literal_binding_get_type ())
   73 #define TRACKER_SPARQL_LITERAL_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBinding))
   74 #define TRACKER_SPARQL_LITERAL_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBindingClass))
   75 #define TRACKER_SPARQL_IS_LITERAL_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING))
   76 #define TRACKER_SPARQL_IS_LITERAL_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_LITERAL_BINDING))
   77 #define TRACKER_SPARQL_LITERAL_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_LITERAL_BINDING, TrackerSparqlLiteralBindingClass))
   78 
   79 typedef struct _TrackerSparqlLiteralBinding TrackerSparqlLiteralBinding;
   80 typedef struct _TrackerSparqlLiteralBindingClass TrackerSparqlLiteralBindingClass;
   81 typedef struct _TrackerSparqlDataBindingPrivate TrackerSparqlDataBindingPrivate;
   82 
   83 #define TRACKER_SPARQL_TYPE_DATA_TABLE (tracker_sparql_data_table_get_type ())
   84 #define TRACKER_SPARQL_DATA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTable))
   85 #define TRACKER_SPARQL_DATA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTableClass))
   86 #define TRACKER_SPARQL_IS_DATA_TABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE))
   87 #define TRACKER_SPARQL_IS_DATA_TABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_DATA_TABLE))
   88 #define TRACKER_SPARQL_DATA_TABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_DATA_TABLE, TrackerSparqlDataTableClass))
   89 
   90 typedef struct _TrackerSparqlDataTable TrackerSparqlDataTable;
   91 typedef struct _TrackerSparqlDataTableClass TrackerSparqlDataTableClass;
   92 typedef struct _TrackerSparqlLiteralBindingPrivate TrackerSparqlLiteralBindingPrivate;
   93 typedef struct _TrackerSparqlQueryPrivate TrackerSparqlQueryPrivate;
   94 
   95 #define TRACKER_SPARQL_TYPE_EXPRESSION (tracker_sparql_expression_get_type ())
   96 #define TRACKER_SPARQL_EXPRESSION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpression))
   97 #define TRACKER_SPARQL_EXPRESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpressionClass))
   98 #define TRACKER_SPARQL_IS_EXPRESSION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_EXPRESSION))
   99 #define TRACKER_SPARQL_IS_EXPRESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_EXPRESSION))
  100 #define TRACKER_SPARQL_EXPRESSION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_EXPRESSION, TrackerSparqlExpressionClass))
  101 
  102 typedef struct _TrackerSparqlExpression TrackerSparqlExpression;
  103 typedef struct _TrackerSparqlExpressionClass TrackerSparqlExpressionClass;
  104 
  105 #define TRACKER_SPARQL_TYPE_PATTERN (tracker_sparql_pattern_get_type ())
  106 #define TRACKER_SPARQL_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPattern))
  107 #define TRACKER_SPARQL_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPatternClass))
  108 #define TRACKER_SPARQL_IS_PATTERN(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_PATTERN))
  109 #define TRACKER_SPARQL_IS_PATTERN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_PATTERN))
  110 #define TRACKER_SPARQL_PATTERN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPatternClass))
  111 
  112 typedef struct _TrackerSparqlPattern TrackerSparqlPattern;
  113 typedef struct _TrackerSparqlPatternClass TrackerSparqlPatternClass;
  114 
  115 #define TRACKER_SPARQL_TYPE_CONTEXT (tracker_sparql_context_get_type ())
  116 #define TRACKER_SPARQL_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContext))
  117 #define TRACKER_SPARQL_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContextClass))
  118 #define TRACKER_SPARQL_IS_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_CONTEXT))
  119 #define TRACKER_SPARQL_IS_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_CONTEXT))
  120 #define TRACKER_SPARQL_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_CONTEXT, TrackerSparqlContextClass))
  121 
  122 typedef struct _TrackerSparqlContext TrackerSparqlContext;
  123 typedef struct _TrackerSparqlContextClass TrackerSparqlContextClass;
  124 #define _g_error_free0(var) ((var == NULL) ? NULL : (var = (g_error_free (var), NULL)))
  125 typedef struct _TrackerSparqlPatternPrivate TrackerSparqlPatternPrivate;
  126 
  127 #define TRACKER_SPARQL_TYPE_VARIABLE (tracker_sparql_variable_get_type ())
  128 #define TRACKER_SPARQL_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariable))
  129 #define TRACKER_SPARQL_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariableClass))
  130 #define TRACKER_SPARQL_IS_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_VARIABLE))
  131 #define TRACKER_SPARQL_IS_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_VARIABLE))
  132 #define TRACKER_SPARQL_VARIABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_VARIABLE, TrackerSparqlVariableClass))
  133 
  134 typedef struct _TrackerSparqlVariable TrackerSparqlVariable;
  135 typedef struct _TrackerSparqlVariableClass TrackerSparqlVariableClass;
  136 
  137 #define TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT (tracker_sparql_pattern_triple_context_get_type ())
  138 #define TRACKER_SPARQL_PATTERN_TRIPLE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT, TrackerSparqlPatternTripleContext))
  139 #define TRACKER_SPARQL_PATTERN_TRIPLE_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT, TrackerSparqlPatternTripleContextClass))
  140 #define TRACKER_SPARQL_PATTERN_IS_TRIPLE_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT))
  141 #define TRACKER_SPARQL_PATTERN_IS_TRIPLE_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT))
  142 #define TRACKER_SPARQL_PATTERN_TRIPLE_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT, TrackerSparqlPatternTripleContextClass))
  143 
  144 typedef struct _TrackerSparqlPatternTripleContext TrackerSparqlPatternTripleContext;
  145 typedef struct _TrackerSparqlPatternTripleContextClass TrackerSparqlPatternTripleContextClass;
  146 #define _tracker_sparql_context_unref0(var) ((var == NULL) ? NULL : (var = (tracker_sparql_context_unref (var), NULL)))
  147 
  148 #define TRACKER_TYPE_SPARQL_TOKEN_TYPE (tracker_sparql_token_type_get_type ())
  149 
  150 #define TRACKER_TYPE_SOURCE_LOCATION (tracker_source_location_get_type ())
  151 typedef struct _TrackerSourceLocation TrackerSourceLocation;
  152 
  153 #define TRACKER_SPARQL_TYPE_SELECT_CONTEXT (tracker_sparql_select_context_get_type ())
  154 #define TRACKER_SPARQL_SELECT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContext))
  155 #define TRACKER_SPARQL_SELECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContextClass))
  156 #define TRACKER_SPARQL_IS_SELECT_CONTEXT(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT))
  157 #define TRACKER_SPARQL_IS_SELECT_CONTEXT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_SELECT_CONTEXT))
  158 #define TRACKER_SPARQL_SELECT_CONTEXT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_SELECT_CONTEXT, TrackerSparqlSelectContextClass))
  159 
  160 typedef struct _TrackerSparqlSelectContext TrackerSparqlSelectContext;
  161 typedef struct _TrackerSparqlSelectContextClass TrackerSparqlSelectContextClass;
  162 #define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))
  163 typedef struct _TrackerSparqlContextPrivate TrackerSparqlContextPrivate;
  164 
  165 #define TRACKER_SPARQL_TYPE_VARIABLE_STATE (tracker_sparql_variable_state_get_type ())
  166 #define _g_list_free0(var) ((var == NULL) ? NULL : (var = (g_list_free (var), NULL)))
  167 typedef struct _TrackerSparqlVariablePrivate TrackerSparqlVariablePrivate;
  168 
  169 #define TRACKER_SPARQL_TYPE_VARIABLE_BINDING (tracker_sparql_variable_binding_get_type ())
  170 #define TRACKER_SPARQL_VARIABLE_BINDING(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBinding))
  171 #define TRACKER_SPARQL_VARIABLE_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBindingClass))
  172 #define TRACKER_SPARQL_IS_VARIABLE_BINDING(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING))
  173 #define TRACKER_SPARQL_IS_VARIABLE_BINDING_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING))
  174 #define TRACKER_SPARQL_VARIABLE_BINDING_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING, TrackerSparqlVariableBindingClass))
  175 
  176 typedef struct _TrackerSparqlVariableBinding TrackerSparqlVariableBinding;
  177 typedef struct _TrackerSparqlVariableBindingClass TrackerSparqlVariableBindingClass;
  178 typedef struct _TrackerSparqlSelectContextPrivate TrackerSparqlSelectContextPrivate;
  179 typedef struct _TrackerSparqlPatternTripleContextPrivate TrackerSparqlPatternTripleContextPrivate;
  180 
  181 #define TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST (tracker_sparql_variable_binding_list_get_type ())
  182 #define TRACKER_SPARQL_VARIABLE_BINDING_LIST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST, TrackerSparqlVariableBindingList))
  183 #define TRACKER_SPARQL_VARIABLE_BINDING_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST, TrackerSparqlVariableBindingListClass))
  184 #define TRACKER_SPARQL_IS_VARIABLE_BINDING_LIST(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST))
  185 #define TRACKER_SPARQL_IS_VARIABLE_BINDING_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST))
  186 #define TRACKER_SPARQL_VARIABLE_BINDING_LIST_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TRACKER_SPARQL_TYPE_VARIABLE_BINDING_LIST, TrackerSparqlVariableBindingListClass))
  187 
  188 typedef struct _TrackerSparqlVariableBindingList TrackerSparqlVariableBindingList;
  189 typedef struct _TrackerSparqlVariableBindingListClass TrackerSparqlVariableBindingListClass;
  190 typedef struct _TrackerSparqlDataTablePrivate TrackerSparqlDataTablePrivate;
  191 typedef struct _TrackerSparqlVariableBindingListPrivate TrackerSparqlVariableBindingListPrivate;
  192 typedef struct _TrackerSparqlVariableBindingPrivate TrackerSparqlVariableBindingPrivate;
  193 #define _g_hash_table_unref0(var) ((var == NULL) ? NULL : (var = (g_hash_table_unref (var), NULL)))
  194 #define _vala_assert(expr, msg) if G_LIKELY (expr) ; else g_assertion_message_expr (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, msg);
  195 
  196 struct _TrackerSparqlPredicateVariable {
  197 	GObject parent_instance;
  198 	TrackerSparqlPredicateVariablePrivate * priv;
  199 	gchar* subject;
  200 	gchar* object;
  201 	gboolean return_graph;
  202 	TrackerClass* domain;
  203 };
  204 
  205 struct _TrackerSparqlPredicateVariableClass {
  206 	GObjectClass parent_class;
  207 };
  208 
  209 struct _TrackerSparqlDataBinding {
  210 	GObject parent_instance;
  211 	TrackerSparqlDataBindingPrivate * priv;
  212 	TrackerPropertyType data_type;
  213 	TrackerSparqlDataTable* table;
  214 	gchar* sql_db_column_name;
  215 };
  216 
  217 struct _TrackerSparqlDataBindingClass {
  218 	GObjectClass parent_class;
  219 };
  220 
  221 struct _TrackerSparqlLiteralBinding {
  222 	TrackerSparqlDataBinding parent_instance;
  223 	TrackerSparqlLiteralBindingPrivate * priv;
  224 	gboolean is_fts_match;
  225 	gchar* literal;
  226 };
  227 
  228 struct _TrackerSparqlLiteralBindingClass {
  229 	TrackerSparqlDataBindingClass parent_class;
  230 };
  231 
  232 struct _TrackerSparqlQuery {
  233 	GObject parent_instance;
  234 	TrackerSparqlQueryPrivate * priv;
  235 	TrackerSparqlExpression* expression;
  236 	TrackerSparqlPattern* pattern;
  237 	GList* bindings;
  238 	TrackerSparqlContext* context;
  239 	gint last_var_index;
  240 };
  241 
  242 struct _TrackerSparqlQueryClass {
  243 	GObjectClass parent_class;
  244 };
  245 
  246 struct _TrackerSparqlPattern {
  247 	GObject parent_instance;
  248 	TrackerSparqlPatternPrivate * priv;
  249 	gchar* current_graph;
  250 	TrackerSparqlVariable* fts_subject;
  251 	gchar** fts_variables;
  252 	gint fts_variables_length1;
  253 	gint _fts_variables_size_;
  254 	GString* match_str;
  255 	gboolean queries_fts_data;
  256 };
  257 
  258 struct _TrackerSparqlPatternClass {
  259 	GObjectClass parent_class;
  260 };
  261 
  262 struct _TrackerSparqlPatternPrivate {
  263 	TrackerSparqlQuery* query;
  264 	TrackerSparqlExpression* expression;
  265 	gint counter;
  266 	gint next_table_index;
  267 	gboolean current_graph_is_var;
  268 	gchar* current_subject;
  269 	gboolean current_subject_is_var;
  270 	gchar* current_predicate;
  271 	gboolean current_predicate_is_var;
  272 	TrackerSparqlPatternTripleContext* triple_context;
  273 };
  274 
  275 typedef enum  {
  276 	TRACKER_SPARQL_TOKEN_TYPE_NONE,
  277 	TRACKER_SPARQL_TOKEN_TYPE_A,
  278 	TRACKER_SPARQL_TOKEN_TYPE_AS,
  279 	TRACKER_SPARQL_TOKEN_TYPE_ASC,
  280 	TRACKER_SPARQL_TOKEN_TYPE_ASK,
  281 	TRACKER_SPARQL_TOKEN_TYPE_ATBASE,
  282 	TRACKER_SPARQL_TOKEN_TYPE_ATPREFIX,
  283 	TRACKER_SPARQL_TOKEN_TYPE_AVG,
  284 	TRACKER_SPARQL_TOKEN_TYPE_BASE,
  285 	TRACKER_SPARQL_TOKEN_TYPE_BLANK_NODE,
  286 	TRACKER_SPARQL_TOKEN_TYPE_BOUND,
  287 	TRACKER_SPARQL_TOKEN_TYPE_BY,
  288 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE,
  289 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACKET,
  290 	TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS,
  291 	TRACKER_SPARQL_TOKEN_TYPE_COALESCE,
  292 	TRACKER_SPARQL_TOKEN_TYPE_COLON,
  293 	TRACKER_SPARQL_TOKEN_TYPE_COMMA,
  294 	TRACKER_SPARQL_TOKEN_TYPE_CONSTRUCT,
  295 	TRACKER_SPARQL_TOKEN_TYPE_COUNT,
  296 	TRACKER_SPARQL_TOKEN_TYPE_DATA,
  297 	TRACKER_SPARQL_TOKEN_TYPE_DATATYPE,
  298 	TRACKER_SPARQL_TOKEN_TYPE_DECIMAL,
  299 	TRACKER_SPARQL_TOKEN_TYPE_DELETE,
  300 	TRACKER_SPARQL_TOKEN_TYPE_DESC,
  301 	TRACKER_SPARQL_TOKEN_TYPE_DESCRIBE,
  302 	TRACKER_SPARQL_TOKEN_TYPE_DISTINCT,
  303 	TRACKER_SPARQL_TOKEN_TYPE_DIV,
  304 	TRACKER_SPARQL_TOKEN_TYPE_DOT,
  305 	TRACKER_SPARQL_TOKEN_TYPE_DOUBLE,
  306 	TRACKER_SPARQL_TOKEN_TYPE_DOUBLE_CIRCUMFLEX,
  307 	TRACKER_SPARQL_TOKEN_TYPE_DROP,
  308 	TRACKER_SPARQL_TOKEN_TYPE_EOF,
  309 	TRACKER_SPARQL_TOKEN_TYPE_EXISTS,
  310 	TRACKER_SPARQL_TOKEN_TYPE_FALSE,
  311 	TRACKER_SPARQL_TOKEN_TYPE_FILTER,
  312 	TRACKER_SPARQL_TOKEN_TYPE_FROM,
  313 	TRACKER_SPARQL_TOKEN_TYPE_GRAPH,
  314 	TRACKER_SPARQL_TOKEN_TYPE_GROUP,
  315 	TRACKER_SPARQL_TOKEN_TYPE_GROUP_CONCAT,
  316 	TRACKER_SPARQL_TOKEN_TYPE_HAVING,
  317 	TRACKER_SPARQL_TOKEN_TYPE_IF,
  318 	TRACKER_SPARQL_TOKEN_TYPE_INSERT,
  319 	TRACKER_SPARQL_TOKEN_TYPE_INTEGER,
  320 	TRACKER_SPARQL_TOKEN_TYPE_INTO,
  321 	TRACKER_SPARQL_TOKEN_TYPE_IRI_REF,
  322 	TRACKER_SPARQL_TOKEN_TYPE_ISBLANK,
  323 	TRACKER_SPARQL_TOKEN_TYPE_ISIRI,
  324 	TRACKER_SPARQL_TOKEN_TYPE_ISLITERAL,
  325 	TRACKER_SPARQL_TOKEN_TYPE_ISURI,
  326 	TRACKER_SPARQL_TOKEN_TYPE_LANG,
  327 	TRACKER_SPARQL_TOKEN_TYPE_LANGMATCHES,
  328 	TRACKER_SPARQL_TOKEN_TYPE_LIMIT,
  329 	TRACKER_SPARQL_TOKEN_TYPE_MAX,
  330 	TRACKER_SPARQL_TOKEN_TYPE_MIN,
  331 	TRACKER_SPARQL_TOKEN_TYPE_MINUS,
  332 	TRACKER_SPARQL_TOKEN_TYPE_NAMED,
  333 	TRACKER_SPARQL_TOKEN_TYPE_NOT,
  334 	TRACKER_SPARQL_TOKEN_TYPE_NULL,
  335 	TRACKER_SPARQL_TOKEN_TYPE_OFFSET,
  336 	TRACKER_SPARQL_TOKEN_TYPE_OP_AND,
  337 	TRACKER_SPARQL_TOKEN_TYPE_OP_EQ,
  338 	TRACKER_SPARQL_TOKEN_TYPE_OP_GE,
  339 	TRACKER_SPARQL_TOKEN_TYPE_OP_GT,
  340 	TRACKER_SPARQL_TOKEN_TYPE_OP_LE,
  341 	TRACKER_SPARQL_TOKEN_TYPE_OP_LT,
  342 	TRACKER_SPARQL_TOKEN_TYPE_OP_NE,
  343 	TRACKER_SPARQL_TOKEN_TYPE_OP_NEG,
  344 	TRACKER_SPARQL_TOKEN_TYPE_OP_OR,
  345 	TRACKER_SPARQL_TOKEN_TYPE_OP_IN,
  346 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE,
  347 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACKET,
  348 	TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS,
  349 	TRACKER_SPARQL_TOKEN_TYPE_OPTIONAL,
  350 	TRACKER_SPARQL_TOKEN_TYPE_OR,
  351 	TRACKER_SPARQL_TOKEN_TYPE_ORDER,
  352 	TRACKER_SPARQL_TOKEN_TYPE_PLUS,
  353 	TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX,
  354 	TRACKER_SPARQL_TOKEN_TYPE_PREFIX,
  355 	TRACKER_SPARQL_TOKEN_TYPE_REDUCED,
  356 	TRACKER_SPARQL_TOKEN_TYPE_REGEX,
  357 	TRACKER_SPARQL_TOKEN_TYPE_REPLACE,
  358 	TRACKER_SPARQL_TOKEN_TYPE_SAMETERM,
  359 	TRACKER_SPARQL_TOKEN_TYPE_SELECT,
  360 	TRACKER_SPARQL_TOKEN_TYPE_SEMICOLON,
  361 	TRACKER_SPARQL_TOKEN_TYPE_SILENT,
  362 	TRACKER_SPARQL_TOKEN_TYPE_STAR,
  363 	TRACKER_SPARQL_TOKEN_TYPE_STR,
  364 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL1,
  365 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL2,
  366 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG1,
  367 	TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG2,
  368 	TRACKER_SPARQL_TOKEN_TYPE_SUM,
  369 	TRACKER_SPARQL_TOKEN_TYPE_TRUE,
  370 	TRACKER_SPARQL_TOKEN_TYPE_UNION,
  371 	TRACKER_SPARQL_TOKEN_TYPE_VAR,
  372 	TRACKER_SPARQL_TOKEN_TYPE_WHERE,
  373 	TRACKER_SPARQL_TOKEN_TYPE_WITH
  374 } TrackerSparqlTokenType;
  375 
  376 struct _TrackerSourceLocation {
  377 	gchar* pos;
  378 	gint line;
  379 	gint column;
  380 };
  381 
  382 struct _TrackerSparqlContext {
  383 	GTypeInstance parent_instance;
  384 	volatile int ref_count;
  385 	TrackerSparqlContextPrivate * priv;
  386 	TrackerSparqlQuery* query;
  387 	TrackerSparqlContext* parent_context;
  388 	GHashTable* var_set;
  389 	GHashTable* var_map;
  390 	GHashTable* select_var_set;
  391 	GHashTable* predicate_variable_map;
  392 	gboolean scalar_subquery;
  393 };
  394 
  395 struct _TrackerSparqlContextClass {
  396 	GTypeClass parent_class;
  397 	void (*finalize) (TrackerSparqlContext *self);
  398 };
  399 
  400 typedef enum  {
  401 	TRACKER_SPARQL_VARIABLE_STATE_NONE,
  402 	TRACKER_SPARQL_VARIABLE_STATE_BOUND,
  403 	TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL
  404 } TrackerSparqlVariableState;
  405 
  406 struct _TrackerSparqlVariable {
  407 	GObject parent_instance;
  408 	TrackerSparqlVariablePrivate * priv;
  409 	TrackerSparqlVariableBinding* binding;
  410 };
  411 
  412 struct _TrackerSparqlVariableClass {
  413 	GObjectClass parent_class;
  414 };
  415 
  416 struct _TrackerSparqlSelectContext {
  417 	TrackerSparqlContext parent_instance;
  418 	TrackerSparqlSelectContextPrivate * priv;
  419 	TrackerPropertyType type;
  420 	TrackerPropertyType* types;
  421 	gint types_length1;
  422 	gint _types_size_;
  423 	gchar** variable_names;
  424 	gint variable_names_length1;
  425 	gint _variable_names_size_;
  426 };
  427 
  428 struct _TrackerSparqlSelectContextClass {
  429 	TrackerSparqlContextClass parent_class;
  430 };
  431 
  432 struct _TrackerSparqlPatternTripleContext {
  433 	TrackerSparqlContext parent_instance;
  434 	TrackerSparqlPatternTripleContextPrivate * priv;
  435 	GList* tables;
  436 	GHashTable* table_map;
  437 	GList* bindings;
  438 	GList* variables;
  439 	GHashTable* var_bindings;
  440 };
  441 
  442 struct _TrackerSparqlPatternTripleContextClass {
  443 	TrackerSparqlContextClass parent_class;
  444 };
  445 
  446 struct _TrackerSparqlDataTable {
  447 	GObject parent_instance;
  448 	TrackerSparqlDataTablePrivate * priv;
  449 	gchar* sql_db_tablename;
  450 	gchar* sql_query_tablename;
  451 	TrackerSparqlPredicateVariable* predicate_variable;
  452 };
  453 
  454 struct _TrackerSparqlDataTableClass {
  455 	GObjectClass parent_class;
  456 };
  457 
  458 struct _TrackerSparqlVariableBindingList {
  459 	GObject parent_instance;
  460 	TrackerSparqlVariableBindingListPrivate * priv;
  461 	GList* list;
  462 };
  463 
  464 struct _TrackerSparqlVariableBindingListClass {
  465 	GObjectClass parent_class;
  466 };
  467 
  468 struct _TrackerSparqlVariableBinding {
  469 	TrackerSparqlDataBinding parent_instance;
  470 	TrackerSparqlVariableBindingPrivate * priv;
  471 	TrackerSparqlVariable* variable;
  472 	gboolean maybe_null;
  473 	gboolean in_simple_optional;
  474 	TrackerClass* type;
  475 };
  476 
  477 struct _TrackerSparqlVariableBindingClass {
  478 	TrackerSparqlDataBindingClass parent_class;
  479 };
  480 
  481 
  482 static gpointer tracker_sparql_predicate_variable_parent_class = NULL;
  483 static gpointer tracker_sparql_pattern_parent_class = NULL;
  484 static gpointer tracker_sparql_pattern_triple_context_parent_class = NULL;
  485 
  486 GType tracker_sparql_predicate_variable_get_type (void) G_GNUC_CONST;
  487 enum  {
  488 	TRACKER_SPARQL_PREDICATE_VARIABLE_DUMMY_PROPERTY
  489 };
  490 GType tracker_sparql_query_get_type (void) G_GNUC_CONST;
  491 gchar* tracker_sparql_predicate_variable_get_sql_query (TrackerSparqlPredicateVariable* self, TrackerSparqlQuery* query, GError** error);
  492 void tracker_sparql_expression_append_expression_as_string (GString* sql, const gchar* expression, TrackerPropertyType type);
  493 TrackerSparqlLiteralBinding* tracker_sparql_literal_binding_new (void);
  494 TrackerSparqlLiteralBinding* tracker_sparql_literal_binding_construct (GType object_type);
  495 GType tracker_sparql_data_binding_get_type (void) G_GNUC_CONST;
  496 GType tracker_sparql_literal_binding_get_type (void) G_GNUC_CONST;
  497 GType tracker_sparql_data_table_get_type (void) G_GNUC_CONST;
  498 GType tracker_sparql_expression_get_type (void) G_GNUC_CONST;
  499 GType tracker_sparql_pattern_get_type (void) G_GNUC_CONST;
  500 gpointer tracker_sparql_context_ref (gpointer instance);
  501 void tracker_sparql_context_unref (gpointer instance);
  502 GParamSpec* tracker_sparql_param_spec_context (const gchar* name, const gchar* nick, const gchar* blurb, GType object_type, GParamFlags flags);
  503 void tracker_sparql_value_set_context (GValue* value, gpointer v_object);
  504 void tracker_sparql_value_take_context (GValue* value, gpointer v_object);
  505 gpointer tracker_sparql_value_get_context (const GValue* value);
  506 GType tracker_sparql_context_get_type (void) G_GNUC_CONST;
  507 GError* tracker_sparql_query_get_internal_error (TrackerSparqlQuery* self, const gchar* msg);
  508 TrackerSparqlPredicateVariable* tracker_sparql_predicate_variable_new (void);
  509 TrackerSparqlPredicateVariable* tracker_sparql_predicate_variable_construct (GType object_type);
  510 static void tracker_sparql_predicate_variable_finalize (GObject* obj);
  511 GType tracker_sparql_variable_get_type (void) G_GNUC_CONST;
  512 static GType tracker_sparql_pattern_triple_context_get_type (void) G_GNUC_CONST G_GNUC_UNUSED;
  513 #define TRACKER_SPARQL_PATTERN_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPatternPrivate))
  514 enum  {
  515 	TRACKER_SPARQL_PATTERN_DUMMY_PROPERTY
  516 };
  517 TrackerSparqlPattern* tracker_sparql_pattern_new (TrackerSparqlQuery* query);
  518 TrackerSparqlPattern* tracker_sparql_pattern_construct (GType object_type, TrackerSparqlQuery* query);
  519 static inline gboolean tracker_sparql_pattern_next (TrackerSparqlPattern* self, GError** error);
  520 gboolean tracker_sparql_query_next (TrackerSparqlQuery* self, GError** error);
  521 GType tracker_sparql_token_type_get_type (void) G_GNUC_CONST;
  522 static inline TrackerSparqlTokenType tracker_sparql_pattern_current (TrackerSparqlPattern* self);
  523 TrackerSparqlTokenType tracker_sparql_query_current (TrackerSparqlQuery* self);
  524 static inline gboolean tracker_sparql_pattern_accept (TrackerSparqlPattern* self, TrackerSparqlTokenType type, GError** error);
  525 gboolean tracker_sparql_query_accept (TrackerSparqlQuery* self, TrackerSparqlTokenType type, GError** error);
  526 static GError* tracker_sparql_pattern_get_error (TrackerSparqlPattern* self, const gchar* msg);
  527 GError* tracker_sparql_query_get_error (TrackerSparqlQuery* self, const gchar* msg);
  528 static gboolean tracker_sparql_pattern_expect (TrackerSparqlPattern* self, TrackerSparqlTokenType type, GError** error);
  529 gboolean tracker_sparql_query_expect (TrackerSparqlQuery* self, TrackerSparqlTokenType type, GError** error);
  530 GType tracker_source_location_get_type (void) G_GNUC_CONST;
  531 TrackerSourceLocation* tracker_source_location_dup (const TrackerSourceLocation* self);
  532 void tracker_source_location_free (TrackerSourceLocation* self);
  533 static void tracker_sparql_pattern_get_location (TrackerSparqlPattern* self, TrackerSourceLocation* result);
  534 void tracker_sparql_query_get_location (TrackerSparqlQuery* self, TrackerSourceLocation* result);
  535 static void tracker_sparql_pattern_set_location (TrackerSparqlPattern* self, TrackerSourceLocation* location);
  536 void tracker_sparql_query_set_location (TrackerSparqlQuery* self, TrackerSourceLocation* location);
  537 static gchar* tracker_sparql_pattern_get_last_string (TrackerSparqlPattern* self, gint strip);
  538 gchar* tracker_sparql_query_get_last_string (TrackerSparqlQuery* self, gint strip);
  539 GType tracker_sparql_select_context_get_type (void) G_GNUC_CONST;
  540 TrackerSparqlSelectContext* tracker_sparql_pattern_translate_select (TrackerSparqlPattern* self, GString* sql, gboolean subquery, gboolean scalar_subquery, GError** error);
  541 static TrackerSparqlContext* tracker_sparql_pattern_get_context (TrackerSparqlPattern* self);
  542 TrackerSparqlSelectContext* tracker_sparql_select_context_new_subquery (TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  543 TrackerSparqlSelectContext* tracker_sparql_select_context_construct_subquery (GType object_type, TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  544 TrackerSparqlSelectContext* tracker_sparql_select_context_new (TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  545 TrackerSparqlSelectContext* tracker_sparql_select_context_construct (GType object_type, TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  546 static void tracker_sparql_pattern_set_context (TrackerSparqlPattern* self, TrackerSparqlContext* value);
  547 static void _g_object_unref0_ (gpointer var);
  548 static void _g_list_free__g_object_unref0_ (GList* self);
  549 void tracker_sparql_expression_skip_select_variables (TrackerSparqlExpression* self, GError** error);
  550 TrackerSparqlContext* tracker_sparql_pattern_translate_group_graph_pattern (TrackerSparqlPattern* self, GString* sql, GError** error);
  551 GType tracker_sparql_variable_state_get_type (void) G_GNUC_CONST;
  552 GType tracker_sparql_variable_binding_get_type (void) G_GNUC_CONST;
  553 const gchar* tracker_sparql_variable_get_name (TrackerSparqlVariable* self);
  554 const gchar* tracker_sparql_variable_get_sql_expression (TrackerSparqlVariable* self);
  555 static void _vala_array_add5 (TrackerPropertyType** array, int* length, int* size, TrackerPropertyType value);
  556 static void _vala_array_add6 (gchar*** array, int* length, int* size, gchar* value);
  557 TrackerPropertyType tracker_sparql_expression_translate_select_expression (TrackerSparqlExpression* self, GString* sql, gboolean subquery, gint variable_index, GError** error);
  558 static void _vala_array_add7 (TrackerPropertyType** array, int* length, int* size, TrackerPropertyType value);
  559 TrackerPropertyType tracker_sparql_expression_translate_expression (TrackerSparqlExpression* self, GString* sql, GError** error);
  560 TrackerPropertyType tracker_sparql_expression_translate_constraint (TrackerSparqlExpression* self, GString* sql, GError** error);
  561 void tracker_sparql_expression_translate_order_condition (TrackerSparqlExpression* self, GString* sql, GError** error);
  562 void tracker_sparql_pattern_translate_exists (TrackerSparqlPattern* self, GString* sql, GError** error);
  563 gchar* tracker_sparql_pattern_parse_var_or_term (TrackerSparqlPattern* self, GString* sql, gboolean* is_var, GError** error);
  564 gchar* tracker_sparql_query_resolve_prefixed_name (TrackerSparqlQuery* self, const gchar* prefix, const gchar* local_name, GError** error);
  565 gchar* tracker_sparql_query_generate_bnodeid (TrackerSparqlQuery* self, const gchar* user_bnodeid);
  566 gchar* tracker_sparql_expression_parse_string_literal (TrackerSparqlExpression* self, TrackerPropertyType* type, GError** error);
  567 static void tracker_sparql_pattern_parse_property_list_not_empty (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error);
  568 static void tracker_sparql_pattern_parse_object_list (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error);
  569 static void tracker_sparql_pattern_parse_object (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error);
  570 static void tracker_sparql_pattern_translate_filter (TrackerSparqlPattern* self, GString* sql, GError** error);
  571 static void tracker_sparql_pattern_skip_filter (TrackerSparqlPattern* self, GError** error);
  572 static void tracker_sparql_pattern_start_triples_block (TrackerSparqlPattern* self, GString* sql, GError** error);
  573 static TrackerSparqlPatternTripleContext* tracker_sparql_pattern_triple_context_new (TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  574 static TrackerSparqlPatternTripleContext* tracker_sparql_pattern_triple_context_construct (GType object_type, TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  575 static void tracker_sparql_pattern_end_triples_block (TrackerSparqlPattern* self, GString* sql, gboolean* first_where, gboolean in_group_graph_pattern, GError** error);
  576 GType tracker_sparql_variable_binding_list_get_type (void) G_GNUC_CONST;
  577 const gchar* tracker_sparql_data_binding_get_sql_expression (TrackerSparqlDataBinding* self);
  578 static void tracker_sparql_pattern_parse_triples (TrackerSparqlPattern* self, GString* sql, glong group_graph_pattern_start, gboolean* in_triples_block, gboolean* first_where, gboolean* in_group_graph_pattern, gboolean found_simple_optional, GError** error);
  579 static gboolean tracker_sparql_pattern_is_subclass (TrackerSparqlPattern* self, TrackerClass* class1, TrackerClass* class2);
  580 static gboolean tracker_sparql_pattern_is_simple_optional (TrackerSparqlPattern* self);
  581 TrackerSparqlVariable* tracker_sparql_context_get_variable (TrackerSparqlContext* self, const gchar* name);
  582 guint tracker_sparql_variable_hash (TrackerSparqlVariable* variable);
  583 static guint _tracker_sparql_variable_hash_ghash_func (gconstpointer key);
  584 gboolean tracker_sparql_variable_equal (TrackerSparqlVariable* a, TrackerSparqlVariable* b);
  585 static gboolean _tracker_sparql_variable_equal_gequal_func (gconstpointer a, gconstpointer b);
  586 TrackerSparqlContext* tracker_sparql_context_new (TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  587 TrackerSparqlContext* tracker_sparql_context_construct (GType object_type, TrackerSparqlQuery* query, TrackerSparqlContext* parent_context);
  588 gchar* tracker_sparql_variable_get_extra_sql_expression (TrackerSparqlVariable* self, const gchar* suffix);
  589 static void tracker_sparql_pattern_translate_group_or_union_graph_pattern (TrackerSparqlPattern* self, GString* sql, GError** error);
  590 static void _vala_array_add8 (TrackerSourceLocation** array, int* length, int* size, const TrackerSourceLocation* value);
  591 static void _vala_array_add9 (glong** array, int* length, int* size, glong value);
  592 static void _vala_array_add10 (TrackerSparqlContext*** array, int* length, int* size, TrackerSparqlContext* value);
  593 static void _vala_array_add11 (TrackerSparqlVariable*** array, int* length, int* size, TrackerSparqlVariable* value);
  594 static TrackerSparqlVariableBindingList* tracker_sparql_pattern_get_variable_binding_list (TrackerSparqlPattern* self, TrackerSparqlVariable* variable);
  595 TrackerSparqlVariableBinding* tracker_sparql_variable_binding_new (void);
  596 TrackerSparqlVariableBinding* tracker_sparql_variable_binding_construct (GType object_type);
  597 void tracker_sparql_data_binding_set_sql_expression (TrackerSparqlDataBinding* self, const gchar* value);
  598 TrackerSparqlVariableBindingList* tracker_sparql_variable_binding_list_new (void);
  599 TrackerSparqlVariableBindingList* tracker_sparql_variable_binding_list_construct (GType object_type);
  600 void tracker_sparql_pattern_add_variable_binding (TrackerSparqlPattern* self, GString* sql, TrackerSparqlVariableBinding* binding, TrackerSparqlVariableState variable_state);
  601 gchar* tracker_sparql_data_binding_get_extra_sql_expression (TrackerSparqlDataBinding* self, const gchar* suffix);
  602 static TrackerSparqlDataTable* tracker_sparql_pattern_get_table (TrackerSparqlPattern* self, const gchar* subject, const gchar* db_table, gboolean share_table, gboolean* newtable);
  603 TrackerSparqlDataTable* tracker_sparql_data_table_new (void);
  604 TrackerSparqlDataTable* tracker_sparql_data_table_construct (GType object_type);
  605 enum  {
  606 	TRACKER_SPARQL_PATTERN_TRIPLE_CONTEXT_DUMMY_PROPERTY
  607 };
  608 static void tracker_sparql_pattern_triple_context_finalize (TrackerSparqlContext* obj);
  609 static void tracker_sparql_pattern_finalize (GObject* obj);
  610 static void _vala_tracker_sparql_pattern_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
  611 static void _vala_tracker_sparql_pattern_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
  612 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func);
  613 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func);
  614 static gint _vala_array_length (gpointer array);
  615 
  616 
  617 static gpointer _g_object_ref0 (gpointer self) {
  618 #line 39 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  619 	return self ? g_object_ref (self) : NULL;
  620 #line 621 "tracker-sparql-pattern.c"
  621 }
  622 
  623 
  624 gchar* tracker_sparql_predicate_variable_get_sql_query (TrackerSparqlPredicateVariable* self, TrackerSparqlQuery* query, GError** error) {
  625 	gchar* result = NULL;
  626 	GError * _inner_error_ = NULL;
  627 #line 29 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  628 	g_return_val_if_fail (self != NULL, NULL);
  629 #line 29 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  630 	g_return_val_if_fail (query != NULL, NULL);
  631 #line 632 "tracker-sparql-pattern.c"
  632 	{
  633 		GString* _tmp0_;
  634 		GString* sql;
  635 		const gchar* _tmp1_;
  636 		GString* _tmp153_;
  637 		const gchar* _tmp154_;
  638 		gchar* _tmp155_;
  639 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  640 		_tmp0_ = g_string_new ("");
  641 #line 31 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  642 		sql = _tmp0_;
  643 #line 33 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  644 		_tmp1_ = self->subject;
  645 #line 33 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  646 		if (_tmp1_ != NULL) {
  647 #line 648 "tracker-sparql-pattern.c"
  648 			const gchar* _tmp2_;
  649 			gint _tmp3_ = 0;
  650 			gint subject_id;
  651 			TrackerDBCursor* cursor;
  652 			gint _tmp4_;
  653 			gboolean first;
  654 			TrackerDBCursor* _tmp14_;
  655 			gboolean _tmp63_;
  656 #line 35 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  657 			_tmp2_ = self->subject;
  658 #line 35 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  659 			_tmp3_ = tracker_data_query_resource_id (_tmp2_);
  660 #line 35 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  661 			subject_id = _tmp3_;
  662 #line 37 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  663 			cursor = NULL;
  664 #line 38 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  665 			_tmp4_ = subject_id;
  666 #line 38 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  667 			if (_tmp4_ > 0) {
  668 #line 669 "tracker-sparql-pattern.c"
  669 				TrackerDBInterface* _tmp5_ = NULL;
  670 				TrackerDBInterface* _tmp6_;
  671 				TrackerDBInterface* iface;
  672 				TrackerDBInterface* _tmp7_;
  673 				TrackerDBStatement* _tmp8_ = NULL;
  674 				TrackerDBStatement* stmt;
  675 				TrackerDBStatement* _tmp9_;
  676 				gint _tmp10_;
  677 				TrackerDBStatement* _tmp11_;
  678 				TrackerDBCursor* _tmp12_ = NULL;
  679 				TrackerDBCursor* _tmp13_;
  680 #line 39 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  681 				_tmp5_ = tracker_db_manager_get_db_interface ();
  682 #line 39 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  683 				_tmp6_ = _g_object_ref0 (_tmp5_);
  684 #line 39 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  685 				iface = _tmp6_;
  686 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  687 				_tmp7_ = iface;
  688 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  689 				_tmp8_ = tracker_db_interface_create_statement (_tmp7_, TRACKER_DB_STATEMENT_CACHE_TYPE_SELECT, &_inner_error_, "SELECT (SELECT Uri FROM Resource WHERE ID = \"rdf:type\") " "FROM \"rdfs:Resource_rdf:type\" WHERE ID = ?");
  690 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  691 				stmt = _tmp8_;
  692 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  693 				if (_inner_error_ != NULL) {
  694 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  695 					_g_object_unref0 (iface);
  696 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  697 					_g_object_unref0 (cursor);
  698 #line 40 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  699 					_g_string_free0 (sql);
  700 #line 701 "tracker-sparql-pattern.c"
  701 					goto __catch0_g_error;
  702 				}
  703 #line 43 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  704 				_tmp9_ = stmt;
  705 #line 43 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  706 				_tmp10_ = subject_id;
  707 #line 43 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  708 				tracker_db_statement_bind_int (_tmp9_, 0, _tmp10_);
  709 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  710 				_tmp11_ = stmt;
  711 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  712 				_tmp12_ = tracker_db_statement_start_cursor (_tmp11_, &_inner_error_);
  713 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  714 				_tmp13_ = _tmp12_;
  715 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  716 				if (_inner_error_ != NULL) {
  717 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  718 					_g_object_unref0 (stmt);
  719 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  720 					_g_object_unref0 (iface);
  721 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  722 					_g_object_unref0 (cursor);
  723 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  724 					_g_string_free0 (sql);
  725 #line 726 "tracker-sparql-pattern.c"
  726 					goto __catch0_g_error;
  727 				}
  728 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  729 				_g_object_unref0 (cursor);
  730 #line 44 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  731 				cursor = _tmp13_;
  732 #line 38 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  733 				_g_object_unref0 (stmt);
  734 #line 38 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  735 				_g_object_unref0 (iface);
  736 #line 737 "tracker-sparql-pattern.c"
  737 			}
  738 #line 47 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  739 			first = TRUE;
  740 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  741 			_tmp14_ = cursor;
  742 #line 48 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  743 			if (_tmp14_ != NULL) {
  744 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  745 				while (TRUE) {
  746 #line 747 "tracker-sparql-pattern.c"
  747 					TrackerDBCursor* _tmp15_;
  748 					gboolean _tmp16_ = FALSE;
  749 					gboolean _tmp17_;
  750 					TrackerDBCursor* _tmp18_;
  751 					const gchar* _tmp19_ = NULL;
  752 					TrackerClass* _tmp20_ = NULL;
  753 					TrackerClass* _tmp21_;
  754 					TrackerClass* domain;
  755 					gint _tmp22_ = 0;
  756 					TrackerProperty** _tmp23_ = NULL;
  757 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  758 					_tmp15_ = cursor;
  759 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  760 					_tmp16_ = tracker_sparql_cursor_next ((TrackerSparqlCursor*) _tmp15_, NULL, &_inner_error_);
  761 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  762 					_tmp17_ = _tmp16_;
  763 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  764 					if (_inner_error_ != NULL) {
  765 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  766 						_g_object_unref0 (cursor);
  767 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  768 						_g_string_free0 (sql);
  769 #line 770 "tracker-sparql-pattern.c"
  770 						goto __catch0_g_error;
  771 					}
  772 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  773 					if (!_tmp17_) {
  774 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  775 						break;
  776 #line 777 "tracker-sparql-pattern.c"
  777 					}
  778 #line 50 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  779 					_tmp18_ = cursor;
  780 #line 50 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  781 					_tmp19_ = tracker_sparql_cursor_get_string ((TrackerSparqlCursor*) _tmp18_, 0, NULL);
  782 #line 50 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  783 					_tmp20_ = tracker_ontologies_get_class_by_uri (_tmp19_);
  784 #line 50 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  785 					_tmp21_ = _g_object_ref0 (_tmp20_);
  786 #line 50 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  787 					domain = _tmp21_;
  788 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  789 					_tmp23_ = tracker_ontologies_get_properties (&_tmp22_);
  790 #line 791 "tracker-sparql-pattern.c"
  791 					{
  792 						TrackerProperty** prop_collection = NULL;
  793 						gint prop_collection_length1 = 0;
  794 						gint _prop_collection_size_ = 0;
  795 						gint prop_it = 0;
  796 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  797 						prop_collection = _tmp23_;
  798 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
  799 						prop_collection_length1 = _tmp22_;
Value stored to 'prop_collection_length1' is never read
(emitted by clang-analyzer)

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

800 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 801 for (prop_it = 0; prop_it < _tmp22_; prop_it = prop_it + 1) { 802 #line 803 "tracker-sparql-pattern.c" 803 TrackerProperty* _tmp24_; 804 TrackerProperty* prop = NULL; 805 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 806 _tmp24_ = _g_object_ref0 (prop_collection[prop_it]); 807 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 808 prop = _tmp24_; 809 #line 810 "tracker-sparql-pattern.c" 810 { 811 TrackerProperty* _tmp25_; 812 TrackerClass* _tmp26_; 813 TrackerClass* _tmp27_; 814 TrackerClass* _tmp28_; 815 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 816 _tmp25_ = prop; 817 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 818 _tmp26_ = tracker_property_get_domain (_tmp25_); 819 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 820 _tmp27_ = _tmp26_; 821 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 822 _tmp28_ = domain; 823 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 824 if (_tmp27_ == _tmp28_) { 825 #line 826 "tracker-sparql-pattern.c" 826 gboolean _tmp29_; 827 GString* _tmp31_; 828 TrackerProperty* _tmp32_; 829 const gchar* _tmp33_; 830 const gchar* _tmp34_; 831 GString* _tmp35_; 832 TrackerProperty* _tmp36_; 833 const gchar* _tmp37_; 834 const gchar* _tmp38_; 835 gchar* _tmp39_ = NULL; 836 gchar* _tmp40_; 837 TrackerProperty* _tmp41_; 838 TrackerPropertyType _tmp42_; 839 TrackerPropertyType _tmp43_; 840 GString* _tmp44_; 841 gboolean _tmp45_; 842 GString* _tmp50_; 843 TrackerProperty* _tmp51_; 844 const gchar* _tmp52_; 845 const gchar* _tmp53_; 846 GString* _tmp54_; 847 TrackerSparqlLiteralBinding* _tmp55_; 848 TrackerSparqlLiteralBinding* binding; 849 TrackerSparqlLiteralBinding* _tmp56_; 850 gint _tmp57_; 851 gchar* _tmp58_ = NULL; 852 TrackerSparqlLiteralBinding* _tmp59_; 853 TrackerSparqlQuery* _tmp60_; 854 TrackerSparqlLiteralBinding* _tmp61_; 855 TrackerSparqlLiteralBinding* _tmp62_; 856 #line 54 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 857 _tmp29_ = first; 858 #line 54 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 859 if (_tmp29_) { 860 #line 55 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 861 first = FALSE; 862 #line 863 "tracker-sparql-pattern.c" 863 } else { 864 GString* _tmp30_; 865 #line 57 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 866 _tmp30_ = sql; 867 #line 57 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 868 g_string_append (_tmp30_, " UNION ALL "); 869 #line 870 "tracker-sparql-pattern.c" 870 } 871 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 872 _tmp31_ = sql; 873 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 874 _tmp32_ = prop; 875 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 876 _tmp33_ = tracker_property_get_uri (_tmp32_); 877 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 878 _tmp34_ = _tmp33_; 879 #line 59 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 880 g_string_append_printf (_tmp31_, "SELECT ID, (SELECT ID FROM Resource WHERE Uri = '%s') AS \"predicate\"" \ 881 ", ", _tmp34_); 882 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 883 _tmp35_ = sql; 884 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 885 _tmp36_ = prop; 886 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 887 _tmp37_ = tracker_property_get_name (_tmp36_); 888 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 889 _tmp38_ = _tmp37_; 890 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 891 _tmp39_ = g_strdup_printf ("\"%s\"", _tmp38_); 892 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 893 _tmp40_ = _tmp39_; 894 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 895 _tmp41_ = prop; 896 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 897 _tmp42_ = tracker_property_get_data_type (_tmp41_); 898 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 899 _tmp43_ = _tmp42_; 900 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 901 tracker_sparql_expression_append_expression_as_string (_tmp35_, _tmp40_, _tmp43_); 902 #line 61 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 903 _g_free0 (_tmp40_); 904 #line 63 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 905 _tmp44_ = sql; 906 #line 63 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 907 g_string_append (_tmp44_, " AS \"object\""); 908 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 909 _tmp45_ = self->return_graph; 910 #line 64 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 911 if (_tmp45_) { 912 #line 912 "tracker-sparql-pattern.c" 913 GString* _tmp46_; 914 TrackerProperty* _tmp47_; 915 const gchar* _tmp48_; 916 const gchar* _tmp49_; 917 #line 65 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 918 _tmp46_ = sql; 919 #line 65 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 920 _tmp47_ = prop; 921 #line 65 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 922 _tmp48_ = tracker_property_get_name (_tmp47_); 923 #line 65 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 924 _tmp49_ = _tmp48_; 925 #line 65 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 926 g_string_append_printf (_tmp46_, ", \"%s:graph\" AS \"graph\"", _tmp49_); 927 #line 927 "tracker-sparql-pattern.c" 928 } 929 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 930 _tmp50_ = sql; 931 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 932 _tmp51_ = prop; 933 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 934 _tmp52_ = tracker_property_get_table_name (_tmp51_); 935 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 936 _tmp53_ = _tmp52_; 937 #line 67 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 938 g_string_append_printf (_tmp50_, " FROM \"%s\"", _tmp53_); 939 #line 69 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 940 _tmp54_ = sql; 941 #line 69 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 942 g_string_append (_tmp54_, " WHERE ID = ?"); 943 #line 71 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 944 _tmp55_ = tracker_sparql_literal_binding_new (); 945 #line 71 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 946 binding = _tmp55_; 947 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 948 _tmp56_ = binding; 949 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 950 _tmp57_ = subject_id; 951 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 952 _tmp58_ = g_strdup_printf ("%i", _tmp57_); 953 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 954 _g_free0 (_tmp56_->literal); 955 #line 72 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 956 _tmp56_->literal = _tmp58_; 957 #line 73 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 958 _tmp59_ = binding; 959 #line 73 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 960 ((TrackerSparqlDataBinding*) _tmp59_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 961 #line 74 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 962 _tmp60_ = query; 963 #line 74 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 964 _tmp61_ = binding; 965 #line 74 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 966 _tmp62_ = _g_object_ref0 (_tmp61_); 967 #line 74 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 968 _tmp60_->bindings = g_list_append (_tmp60_->bindings, _tmp62_); 969 #line 53 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 970 _g_object_unref0 (binding); 971 #line 971 "tracker-sparql-pattern.c" 972 } 973 #line 52 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 974 _g_object_unref0 (prop); 975 #line 975 "tracker-sparql-pattern.c" 976 } 977 } 978 } 979 #line 49 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 980 _g_object_unref0 (domain); 981 #line 981 "tracker-sparql-pattern.c" 982 } 983 } 984 #line 80 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 985 _tmp63_ = first; 986 #line 80 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 987 if (_tmp63_) { 988 #line 988 "tracker-sparql-pattern.c" 989 GString* _tmp64_; 990 #line 82 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 991 _tmp64_ = sql; 992 #line 82 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 993 g_string_append (_tmp64_, "SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\", NULL AS " \ 994 "\"graph\""); 995 #line 994 "tracker-sparql-pattern.c" 996 } 997 #line 33 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 998 _g_object_unref0 (cursor); 999 #line 998 "tracker-sparql-pattern.c" 1000 } else { 1001 const gchar* _tmp65_; 1002 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1003 _tmp65_ = self->object; 1004 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1005 if (_tmp65_ != NULL) { 1006 #line 1005 "tracker-sparql-pattern.c" 1007 const gchar* _tmp66_; 1008 gint _tmp67_ = 0; 1009 gint object_id; 1010 TrackerDBInterface* _tmp68_ = NULL; 1011 TrackerDBInterface* _tmp69_; 1012 TrackerDBInterface* iface; 1013 TrackerDBInterface* _tmp70_; 1014 TrackerDBStatement* _tmp71_ = NULL; 1015 TrackerDBStatement* stmt; 1016 TrackerDBStatement* _tmp72_; 1017 gint _tmp73_; 1018 TrackerDBStatement* _tmp74_; 1019 TrackerDBCursor* _tmp75_ = NULL; 1020 TrackerDBCursor* cursor; 1021 gboolean first; 1022 TrackerDBCursor* _tmp76_; 1023 gboolean _tmp116_; 1024 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1025 _tmp66_ = self->object; 1026 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1027 _tmp67_ = tracker_data_query_resource_id (_tmp66_); 1028 #line 86 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1029 object_id = _tmp67_; 1030 #line 88 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1031 _tmp68_ = tracker_db_manager_get_db_interface (); 1032 #line 88 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1033 _tmp69_ = _g_object_ref0 (_tmp68_); 1034 #line 88 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1035 iface = _tmp69_; 1036 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1037 _tmp70_ = iface; 1038 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1039 _tmp71_ = tracker_db_interface_create_statement (_tmp70_, TRACKER_DB_STATEMENT_CACHE_TYPE_SELECT, &_inner_error_, "SELECT (SELECT Uri FROM Resource WHERE ID = \"rdf:type\") " "FROM \"rdfs:Resource_rdf:type\" WHERE ID = ?"); 1040 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1041 stmt = _tmp71_; 1042 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1043 if (_inner_error_ != NULL) { 1044 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1045 _g_object_unref0 (iface); 1046 #line 89 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1047 _g_string_free0 (sql); 1048 #line 1047 "tracker-sparql-pattern.c" 1049 goto __catch0_g_error; 1050 } 1051 #line 92 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1052 _tmp72_ = stmt; 1053 #line 92 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1054 _tmp73_ = object_id; 1055 #line 92 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1056 tracker_db_statement_bind_int (_tmp72_, 0, _tmp73_); 1057 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1058 _tmp74_ = stmt; 1059 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1060 _tmp75_ = tracker_db_statement_start_cursor (_tmp74_, &_inner_error_); 1061 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1062 cursor = _tmp75_; 1063 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1064 if (_inner_error_ != NULL) { 1065 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1066 _g_object_unref0 (stmt); 1067 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1068 _g_object_unref0 (iface); 1069 #line 93 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1070 _g_string_free0 (sql); 1071 #line 1070 "tracker-sparql-pattern.c" 1072 goto __catch0_g_error; 1073 } 1074 #line 95 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1075 first = TRUE; 1076 #line 96 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1077 _tmp76_ = cursor; 1078 #line 96 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1079 if (_tmp76_ != NULL) { 1080 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1081 while (TRUE) { 1082 #line 1081 "tracker-sparql-pattern.c" 1083 TrackerDBCursor* _tmp77_; 1084 gboolean _tmp78_ = FALSE; 1085 gboolean _tmp79_; 1086 TrackerDBCursor* _tmp80_; 1087 const gchar* _tmp81_ = NULL; 1088 TrackerClass* _tmp82_ = NULL; 1089 TrackerClass* _tmp83_; 1090 TrackerClass* range; 1091 gint _tmp84_ = 0; 1092 TrackerProperty** _tmp85_ = NULL; 1093 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1094 _tmp77_ = cursor; 1095 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1096 _tmp78_ = tracker_sparql_cursor_next ((TrackerSparqlCursor*) _tmp77_, NULL, &_inner_error_); 1097 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1098 _tmp79_ = _tmp78_; 1099 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1100 if (_inner_error_ != NULL) { 1101 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1102 _g_object_unref0 (cursor); 1103 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1104 _g_object_unref0 (stmt); 1105 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1106 _g_object_unref0 (iface); 1107 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1108 _g_string_free0 (sql); 1109 #line 1108 "tracker-sparql-pattern.c" 1110 goto __catch0_g_error; 1111 } 1112 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1113 if (!_tmp79_) { 1114 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1115 break; 1116 #line 1115 "tracker-sparql-pattern.c" 1117 } 1118 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1119 _tmp80_ = cursor; 1120 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1121 _tmp81_ = tracker_sparql_cursor_get_string ((TrackerSparqlCursor*) _tmp80_, 0, NULL); 1122 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1123 _tmp82_ = tracker_ontologies_get_class_by_uri (_tmp81_); 1124 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1125 _tmp83_ = _g_object_ref0 (_tmp82_); 1126 #line 98 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1127 range = _tmp83_; 1128 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1129 _tmp85_ = tracker_ontologies_get_properties (&_tmp84_); 1130 #line 1129 "tracker-sparql-pattern.c" 1131 { 1132 TrackerProperty** prop_collection = NULL; 1133 gint prop_collection_length1 = 0; 1134 gint _prop_collection_size_ = 0; 1135 gint prop_it = 0; 1136 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1137 prop_collection = _tmp85_; 1138 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1139 prop_collection_length1 = _tmp84_;
Value stored to 'prop_collection_length1' is never read
(emitted by clang-analyzer)

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

1140 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1141 for (prop_it = 0; prop_it < _tmp84_; prop_it = prop_it + 1) { 1142 #line 1141 "tracker-sparql-pattern.c" 1143 TrackerProperty* _tmp86_; 1144 TrackerProperty* prop = NULL; 1145 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1146 _tmp86_ = _g_object_ref0 (prop_collection[prop_it]); 1147 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1148 prop = _tmp86_; 1149 #line 1148 "tracker-sparql-pattern.c" 1150 { 1151 TrackerProperty* _tmp87_; 1152 TrackerClass* _tmp88_; 1153 TrackerClass* _tmp89_; 1154 TrackerClass* _tmp90_; 1155 #line 101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1156 _tmp87_ = prop; 1157 #line 101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1158 _tmp88_ = tracker_property_get_range (_tmp87_); 1159 #line 101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1160 _tmp89_ = _tmp88_; 1161 #line 101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1162 _tmp90_ = range; 1163 #line 101 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1164 if (_tmp89_ == _tmp90_) { 1165 #line 1164 "tracker-sparql-pattern.c" 1166 gboolean _tmp91_; 1167 GString* _tmp93_; 1168 TrackerProperty* _tmp94_; 1169 const gchar* _tmp95_; 1170 const gchar* _tmp96_; 1171 GString* _tmp97_; 1172 TrackerProperty* _tmp98_; 1173 const gchar* _tmp99_; 1174 const gchar* _tmp100_; 1175 gchar* _tmp101_ = NULL; 1176 gchar* _tmp102_; 1177 TrackerProperty* _tmp103_; 1178 TrackerPropertyType _tmp104_; 1179 TrackerPropertyType _tmp105_; 1180 GString* _tmp106_; 1181 gboolean _tmp107_; 1182 GString* _tmp112_; 1183 TrackerProperty* _tmp113_; 1184 const gchar* _tmp114_; 1185 const gchar* _tmp115_; 1186 #line 102 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1187 _tmp91_ = first; 1188 #line 102 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1189 if (_tmp91_) { 1190 #line 103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1191 first = FALSE; 1192 #line 1191 "tracker-sparql-pattern.c" 1193 } else { 1194 GString* _tmp92_; 1195 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1196 _tmp92_ = sql; 1197 #line 105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1198 g_string_append (_tmp92_, " UNION ALL "); 1199 #line 1198 "tracker-sparql-pattern.c" 1200 } 1201 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1202 _tmp93_ = sql; 1203 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1204 _tmp94_ = prop; 1205 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1206 _tmp95_ = tracker_property_get_uri (_tmp94_); 1207 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1208 _tmp96_ = _tmp95_; 1209 #line 107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1210 g_string_append_printf (_tmp93_, "SELECT ID, (SELECT ID FROM Resource WHERE Uri = '%s') AS \"predicate\"" \ 1211 ", ", _tmp96_); 1212 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1213 _tmp97_ = sql; 1214 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1215 _tmp98_ = prop; 1216 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1217 _tmp99_ = tracker_property_get_name (_tmp98_); 1218 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1219 _tmp100_ = _tmp99_; 1220 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1221 _tmp101_ = g_strdup_printf ("\"%s\"", _tmp100_); 1222 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1223 _tmp102_ = _tmp101_; 1224 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1225 _tmp103_ = prop; 1226 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1227 _tmp104_ = tracker_property_get_data_type (_tmp103_); 1228 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1229 _tmp105_ = _tmp104_; 1230 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1231 tracker_sparql_expression_append_expression_as_string (_tmp97_, _tmp102_, _tmp105_); 1232 #line 109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1233 _g_free0 (_tmp102_); 1234 #line 111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1235 _tmp106_ = sql; 1236 #line 111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1237 g_string_append (_tmp106_, " AS \"object\""); 1238 #line 112 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1239 _tmp107_ = self->return_graph; 1240 #line 112 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1241 if (_tmp107_) { 1242 #line 1240 "tracker-sparql-pattern.c" 1243 GString* _tmp108_; 1244 TrackerProperty* _tmp109_; 1245 const gchar* _tmp110_; 1246 const gchar* _tmp111_; 1247 #line 113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1248 _tmp108_ = sql; 1249 #line 113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1250 _tmp109_ = prop; 1251 #line 113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1252 _tmp110_ = tracker_property_get_name (_tmp109_); 1253 #line 113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1254 _tmp111_ = _tmp110_; 1255 #line 113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1256 g_string_append_printf (_tmp108_, ", \"%s:graph\" AS \"graph\"", _tmp111_); 1257 #line 1255 "tracker-sparql-pattern.c" 1258 } 1259 #line 115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1260 _tmp112_ = sql; 1261 #line 115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1262 _tmp113_ = prop; 1263 #line 115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1264 _tmp114_ = tracker_property_get_table_name (_tmp113_); 1265 #line 115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1266 _tmp115_ = _tmp114_; 1267 #line 115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1268 g_string_append_printf (_tmp112_, " FROM \"%s\"", _tmp115_); 1269 #line 1267 "tracker-sparql-pattern.c" 1270 } 1271 #line 100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1272 _g_object_unref0 (prop); 1273 #line 1271 "tracker-sparql-pattern.c" 1274 } 1275 } 1276 } 1277 #line 97 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1278 _g_object_unref0 (range); 1279 #line 1277 "tracker-sparql-pattern.c" 1280 } 1281 } 1282 #line 121 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1283 _tmp116_ = first; 1284 #line 121 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1285 if (_tmp116_) { 1286 #line 1284 "tracker-sparql-pattern.c" 1287 GString* _tmp117_; 1288 #line 123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1289 _tmp117_ = sql; 1290 #line 123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1291 g_string_append (_tmp117_, "SELECT NULL AS ID, NULL AS \"predicate\", NULL AS \"object\", NULL AS " \ 1292 "\"graph\""); 1293 #line 1290 "tracker-sparql-pattern.c" 1294 } 1295 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1296 _g_object_unref0 (cursor); 1297 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1298 _g_object_unref0 (stmt); 1299 #line 84 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1300 _g_object_unref0 (iface); 1301 #line 1298 "tracker-sparql-pattern.c" 1302 } else { 1303 TrackerClass* _tmp118_; 1304 #line 125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1305 _tmp118_ = self->domain; 1306 #line 125 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1307 if (_tmp118_ != NULL) { 1308 #line 1305 "tracker-sparql-pattern.c" 1309 gboolean first; 1310 gint _tmp119_ = 0; 1311 TrackerProperty** _tmp120_ = NULL; 1312 #line 127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1313 first = TRUE; 1314 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1315 _tmp120_ = tracker_ontologies_get_properties (&_tmp119_); 1316 #line 1313 "tracker-sparql-pattern.c" 1317 { 1318 TrackerProperty** prop_collection = NULL; 1319 gint prop_collection_length1 = 0; 1320 gint _prop_collection_size_ = 0; 1321 gint prop_it = 0; 1322 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1323 prop_collection = _tmp120_; 1324 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1325 prop_collection_length1 = _tmp119_;
Value stored to 'prop_collection_length1' is never read
(emitted by clang-analyzer)

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

1326 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1327 for (prop_it = 0; prop_it < _tmp119_; prop_it = prop_it + 1) { 1328 #line 1325 "tracker-sparql-pattern.c" 1329 TrackerProperty* _tmp121_; 1330 TrackerProperty* prop = NULL; 1331 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1332 _tmp121_ = _g_object_ref0 (prop_collection[prop_it]); 1333 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1334 prop = _tmp121_; 1335 #line 1332 "tracker-sparql-pattern.c" 1336 { 1337 TrackerProperty* _tmp122_; 1338 TrackerClass* _tmp123_; 1339 TrackerClass* _tmp124_; 1340 TrackerClass* _tmp125_; 1341 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1342 _tmp122_ = prop; 1343 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1344 _tmp123_ = tracker_property_get_domain (_tmp122_); 1345 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1346 _tmp124_ = _tmp123_; 1347 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1348 _tmp125_ = self->domain; 1349 #line 129 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1350 if (_tmp124_ == _tmp125_) { 1351 #line 1348 "tracker-sparql-pattern.c" 1352 gboolean _tmp126_; 1353 GString* _tmp128_; 1354 TrackerProperty* _tmp129_; 1355 const gchar* _tmp130_; 1356 const gchar* _tmp131_; 1357 GString* _tmp132_; 1358 TrackerProperty* _tmp133_; 1359 const gchar* _tmp134_; 1360 const gchar* _tmp135_; 1361 gchar* _tmp136_ = NULL; 1362 gchar* _tmp137_; 1363 TrackerProperty* _tmp138_; 1364 TrackerPropertyType _tmp139_; 1365 TrackerPropertyType _tmp140_; 1366 GString* _tmp141_; 1367 gboolean _tmp142_; 1368 GString* _tmp147_; 1369 TrackerProperty* _tmp148_; 1370 const gchar* _tmp149_; 1371 const gchar* _tmp150_; 1372 #line 130 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1373 _tmp126_ = first; 1374 #line 130 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1375 if (_tmp126_) { 1376 #line 131 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1377 first = FALSE; 1378 #line 1375 "tracker-sparql-pattern.c" 1379 } else { 1380 GString* _tmp127_; 1381 #line 133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1382 _tmp127_ = sql; 1383 #line 133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1384 g_string_append (_tmp127_, " UNION ALL "); 1385 #line 1382 "tracker-sparql-pattern.c" 1386 } 1387 #line 135 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1388 _tmp128_ = sql; 1389 #line 135 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1390 _tmp129_ = prop; 1391 #line 135 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1392 _tmp130_ = tracker_property_get_uri (_tmp129_); 1393 #line 135 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala"
syntax error
(emitted by cppcheck)
1394 _tmp131_ = _tmp130_; 1395 #line 135 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1396 g_string_append_printf (_tmp128_, "SELECT ID, (SELECT ID FROM Resource WHERE Uri = '%s') AS \"predicate\"" \ 1397 ", ", _tmp131_); 1398 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1399 _tmp132_ = sql; 1400 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1401 _tmp133_ = prop; 1402 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1403 _tmp134_ = tracker_property_get_name (_tmp133_); 1404 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1405 _tmp135_ = _tmp134_; 1406 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1407 _tmp136_ = g_strdup_printf ("\"%s\"", _tmp135_); 1408 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1409 _tmp137_ = _tmp136_; 1410 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1411 _tmp138_ = prop; 1412 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1413 _tmp139_ = tracker_property_get_data_type (_tmp138_); 1414 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1415 _tmp140_ = _tmp139_; 1416 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1417 tracker_sparql_expression_append_expression_as_string (_tmp132_, _tmp137_, _tmp140_); 1418 #line 137 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1419 _g_free0 (_tmp137_); 1420 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1421 _tmp141_ = sql; 1422 #line 139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1423 g_string_append (_tmp141_, " AS \"object\""); 1424 #line 140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1425 _tmp142_ = self->return_graph; 1426 #line 140 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1427 if (_tmp142_) { 1428 #line 1424 "tracker-sparql-pattern.c" 1429 GString* _tmp143_; 1430 TrackerProperty* _tmp144_; 1431 const gchar* _tmp145_; 1432 const gchar* _tmp146_; 1433 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1434 _tmp143_ = sql; 1435 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1436 _tmp144_ = prop; 1437 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1438 _tmp145_ = tracker_property_get_name (_tmp144_); 1439 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1440 _tmp146_ = _tmp145_; 1441 #line 141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1442 g_string_append_printf (_tmp143_, ", \"%s:graph\" AS \"graph\"", _tmp146_); 1443 #line 1439 "tracker-sparql-pattern.c" 1444 } 1445 #line 143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1446 _tmp147_ = sql; 1447 #line 143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1448 _tmp148_ = prop; 1449 #line 143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1450 _tmp149_ = tracker_property_get_table_name (_tmp148_); 1451 #line 143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1452 _tmp150_ = _tmp149_; 1453 #line 143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1454 g_string_append_printf (_tmp147_, " FROM \"%s\"", _tmp150_); 1455 #line 1451 "tracker-sparql-pattern.c" 1456 } 1457 #line 128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1458 _g_object_unref0 (prop); 1459 #line 1455 "tracker-sparql-pattern.c" 1460 } 1461 } 1462 } 1463 } else { 1464 TrackerSparqlQuery* _tmp151_; 1465 GError* _tmp152_ = NULL; 1466 #line 148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1467 _tmp151_ = query; 1468 #line 148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1469 _tmp152_ = tracker_sparql_query_get_internal_error (_tmp151_, "Unrestricted predicate variables not supported"); 1470 #line 148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1471 _inner_error_ = _tmp152_; 1472 #line 148 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1473 _g_string_free0 (sql); 1474 #line 1470 "tracker-sparql-pattern.c" 1475 goto __catch0_g_error; 1476 } 1477 } 1478 } 1479 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1480 _tmp153_ = sql; 1481 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1482 _tmp154_ = _tmp153_->str; 1483 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1484 _tmp155_ = g_strdup (_tmp154_); 1485 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1486 result = _tmp155_; 1487 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1488 _g_string_free0 (sql); 1489 #line 150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1490 return result; 1491 #line 1487 "tracker-sparql-pattern.c" 1492 } 1493 goto __finally0; 1494 __catch0_g_error: 1495 { 1496 GError* e = NULL; 1497 GError* _tmp156_; 1498 const gchar* _tmp157_; 1499 GError* _tmp158_; 1500 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1501 e = _inner_error_; 1502 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1503 _inner_error_ = NULL; 1504 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1505 _tmp156_ = e; 1506 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1507 _tmp157_ = _tmp156_->message; 1508 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1509 _tmp158_ = g_error_new_literal (TRACKER_SPARQL_ERROR, TRACKER_SPARQL_ERROR_INTERNAL, _tmp157_); 1510 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1511 _inner_error_ = _tmp158_; 1512 #line 152 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1513 _g_error_free0 (e); 1514 #line 1510 "tracker-sparql-pattern.c" 1515 goto __finally0; 1516 } 1517 __finally0: 1518 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1519 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1520 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1521 g_propagate_error (error, _inner_error_); 1522 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1523 return NULL; 1524 #line 1520 "tracker-sparql-pattern.c" 1525 } else { 1526 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1527 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1528 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1529 g_clear_error (&_inner_error_); 1530 #line 30 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1531 return NULL; 1532 #line 1528 "tracker-sparql-pattern.c" 1533 } 1534 } 1535 1536 1537 TrackerSparqlPredicateVariable* tracker_sparql_predicate_variable_construct (GType object_type) { 1538 TrackerSparqlPredicateVariable * self = NULL; 1539 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1540 self = (TrackerSparqlPredicateVariable*) g_object_new (object_type, NULL); 1541 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1542 return self; 1543 #line 1539 "tracker-sparql-pattern.c" 1544 } 1545 1546 1547 TrackerSparqlPredicateVariable* tracker_sparql_predicate_variable_new (void) { 1548 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1549 return tracker_sparql_predicate_variable_construct (TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE); 1550 #line 1546 "tracker-sparql-pattern.c" 1551 } 1552 1553 1554 static void tracker_sparql_predicate_variable_class_init (TrackerSparqlPredicateVariableClass * klass) { 1555 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1556 tracker_sparql_predicate_variable_parent_class = g_type_class_peek_parent (klass); 1557 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1558 G_OBJECT_CLASS (klass)->finalize = tracker_sparql_predicate_variable_finalize; 1559 #line 1555 "tracker-sparql-pattern.c" 1560 } 1561 1562 1563 static void tracker_sparql_predicate_variable_instance_init (TrackerSparqlPredicateVariable * self) { 1564 } 1565 1566 1567 static void tracker_sparql_predicate_variable_finalize (GObject* obj) { 1568 TrackerSparqlPredicateVariable * self; 1569 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1570 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_SPARQL_TYPE_PREDICATE_VARIABLE, TrackerSparqlPredicateVariable); 1571 #line 23 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1572 _g_free0 (self->subject); 1573 #line 24 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1574 _g_free0 (self->object); 1575 #line 27 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1576 _g_object_unref0 (self->domain); 1577 #line 22 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1578 G_OBJECT_CLASS (tracker_sparql_predicate_variable_parent_class)->finalize (obj); 1579 #line 1575 "tracker-sparql-pattern.c" 1580 } 1581 1582 1583 GType tracker_sparql_predicate_variable_get_type (void) { 1584 static volatile gsize tracker_sparql_predicate_variable_type_id__volatile = 0; 1585 if (g_once_init_enter (&tracker_sparql_predicate_variable_type_id__volatile)) { 1586 static const GTypeInfo g_define_type_info = { sizeof (TrackerSparqlPredicateVariableClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_sparql_predicate_variable_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerSparqlPredicateVariable), 0, (GInstanceInitFunc) tracker_sparql_predicate_variable_instance_init, NULL }; 1587 GType tracker_sparql_predicate_variable_type_id; 1588 tracker_sparql_predicate_variable_type_id = g_type_register_static (G_TYPE_OBJECT, "TrackerSparqlPredicateVariable", &g_define_type_info, 0); 1589 g_once_init_leave (&tracker_sparql_predicate_variable_type_id__volatile, tracker_sparql_predicate_variable_type_id); 1590 } 1591 return tracker_sparql_predicate_variable_type_id__volatile; 1592 } 1593 1594 1595 TrackerSparqlPattern* tracker_sparql_pattern_construct (GType object_type, TrackerSparqlQuery* query) { 1596 TrackerSparqlPattern * self = NULL; 1597 TrackerSparqlQuery* _tmp0_; 1598 TrackerSparqlQuery* _tmp1_; 1599 TrackerSparqlExpression* _tmp2_; 1600 #line 177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1601 g_return_val_if_fail (query != NULL, NULL); 1602 #line 177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1603 self = (TrackerSparqlPattern*) g_object_new (object_type, NULL); 1604 #line 178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1605 _tmp0_ = query; 1606 #line 178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1607 self->priv->query = _tmp0_; 1608 #line 179 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1609 _tmp1_ = query; 1610 #line 179 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1611 _tmp2_ = _tmp1_->expression; 1612 #line 179 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1613 self->priv->expression = _tmp2_; 1614 #line 177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1615 return self; 1616 #line 1612 "tracker-sparql-pattern.c" 1617 } 1618 1619 1620 TrackerSparqlPattern* tracker_sparql_pattern_new (TrackerSparqlQuery* query) { 1621 #line 177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1622 return tracker_sparql_pattern_construct (TRACKER_SPARQL_TYPE_PATTERN, query); 1623 #line 1619 "tracker-sparql-pattern.c" 1624 } 1625 1626 1627 static inline gboolean tracker_sparql_pattern_next (TrackerSparqlPattern* self, GError** error) { 1628 gboolean result = FALSE; 1629 TrackerSparqlQuery* _tmp0_; 1630 gboolean _tmp1_ = FALSE; 1631 gboolean _tmp2_; 1632 GError * _inner_error_ = NULL; 1633 #line 187 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1634 g_return_val_if_fail (self != NULL, FALSE); 1635 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1636 _tmp0_ = self->priv->query; 1637 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1638 _tmp1_ = tracker_sparql_query_next (_tmp0_, &_inner_error_); 1639 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1640 _tmp2_ = _tmp1_; 1641 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1642 if (_inner_error_ != NULL) { 1643 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1644 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1645 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1646 g_propagate_error (error, _inner_error_); 1647 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1648 return FALSE; 1649 #line 1645 "tracker-sparql-pattern.c" 1650 } else { 1651 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1652 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1653 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1654 g_clear_error (&_inner_error_); 1655 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1656 return FALSE; 1657 #line 1653 "tracker-sparql-pattern.c" 1658 } 1659 } 1660 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1661 result = _tmp2_; 1662 #line 188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1663 return result; 1664 #line 1660 "tracker-sparql-pattern.c" 1665 } 1666 1667 1668 static inline TrackerSparqlTokenType tracker_sparql_pattern_current (TrackerSparqlPattern* self) { 1669 TrackerSparqlTokenType result = 0; 1670 TrackerSparqlQuery* _tmp0_; 1671 TrackerSparqlTokenType _tmp1_ = 0; 1672 #line 191 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1673 g_return_val_if_fail (self != NULL, 0); 1674 #line 192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1675 _tmp0_ = self->priv->query; 1676 #line 192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1677 _tmp1_ = tracker_sparql_query_current (_tmp0_); 1678 #line 192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1679 result = _tmp1_; 1680 #line 192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1681 return result; 1682 #line 1678 "tracker-sparql-pattern.c" 1683 } 1684 1685 1686 static inline gboolean tracker_sparql_pattern_accept (TrackerSparqlPattern* self, TrackerSparqlTokenType type, GError** error) { 1687 gboolean result = FALSE; 1688 TrackerSparqlQuery* _tmp0_; 1689 TrackerSparqlTokenType _tmp1_; 1690 gboolean _tmp2_ = FALSE; 1691 gboolean _tmp3_; 1692 GError * _inner_error_ = NULL; 1693 #line 195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1694 g_return_val_if_fail (self != NULL, FALSE); 1695 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1696 _tmp0_ = self->priv->query; 1697 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1698 _tmp1_ = type; 1699 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1700 _tmp2_ = tracker_sparql_query_accept (_tmp0_, _tmp1_, &_inner_error_); 1701 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1702 _tmp3_ = _tmp2_; 1703 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1704 if (_inner_error_ != NULL) { 1705 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1706 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1707 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1708 g_propagate_error (error, _inner_error_); 1709 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1710 return FALSE; 1711 #line 1707 "tracker-sparql-pattern.c" 1712 } else { 1713 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1714 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1715 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1716 g_clear_error (&_inner_error_); 1717 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1718 return FALSE; 1719 #line 1715 "tracker-sparql-pattern.c" 1720 } 1721 } 1722 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1723 result = _tmp3_; 1724 #line 196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1725 return result; 1726 #line 1722 "tracker-sparql-pattern.c" 1727 } 1728 1729 1730 static GError* tracker_sparql_pattern_get_error (TrackerSparqlPattern* self, const gchar* msg) { 1731 GError* result = NULL; 1732 TrackerSparqlQuery* _tmp0_; 1733 const gchar* _tmp1_; 1734 GError* _tmp2_ = NULL; 1735 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1736 g_return_val_if_fail (self != NULL, NULL); 1737 #line 199 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1738 g_return_val_if_fail (msg != NULL, NULL); 1739 #line 200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1740 _tmp0_ = self->priv->query; 1741 #line 200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1742 _tmp1_ = msg; 1743 #line 200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1744 _tmp2_ = tracker_sparql_query_get_error (_tmp0_, _tmp1_); 1745 #line 200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1746 result = _tmp2_; 1747 #line 200 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1748 return result; 1749 #line 1745 "tracker-sparql-pattern.c" 1750 } 1751 1752 1753 static gboolean tracker_sparql_pattern_expect (TrackerSparqlPattern* self, TrackerSparqlTokenType type, GError** error) { 1754 gboolean result = FALSE; 1755 TrackerSparqlQuery* _tmp0_; 1756 TrackerSparqlTokenType _tmp1_; 1757 gboolean _tmp2_ = FALSE; 1758 gboolean _tmp3_; 1759 GError * _inner_error_ = NULL; 1760 #line 203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1761 g_return_val_if_fail (self != NULL, FALSE); 1762 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1763 _tmp0_ = self->priv->query; 1764 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1765 _tmp1_ = type; 1766 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1767 _tmp2_ = tracker_sparql_query_expect (_tmp0_, _tmp1_, &_inner_error_); 1768 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1769 _tmp3_ = _tmp2_; 1770 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1771 if (_inner_error_ != NULL) { 1772 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1773 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 1774 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1775 g_propagate_error (error, _inner_error_); 1776 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1777 return FALSE; 1778 #line 1774 "tracker-sparql-pattern.c" 1779 } else { 1780 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1781 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 1782 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1783 g_clear_error (&_inner_error_); 1784 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1785 return FALSE; 1786 #line 1782 "tracker-sparql-pattern.c" 1787 } 1788 } 1789 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1790 result = _tmp3_; 1791 #line 204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1792 return result; 1793 #line 1789 "tracker-sparql-pattern.c" 1794 } 1795 1796 1797 static void tracker_sparql_pattern_get_location (TrackerSparqlPattern* self, TrackerSourceLocation* result) { 1798 TrackerSparqlQuery* _tmp0_; 1799 TrackerSourceLocation _tmp1_ = {0}; 1800 #line 207 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1801 g_return_if_fail (self != NULL); 1802 #line 208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1803 _tmp0_ = self->priv->query; 1804 #line 208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1805 tracker_sparql_query_get_location (_tmp0_, &_tmp1_); 1806 #line 208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1807 *result = _tmp1_; 1808 #line 208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1809 return; 1810 #line 1806 "tracker-sparql-pattern.c" 1811 } 1812 1813 1814 static void tracker_sparql_pattern_set_location (TrackerSparqlPattern* self, TrackerSourceLocation* location) { 1815 TrackerSparqlQuery* _tmp0_; 1816 TrackerSourceLocation _tmp1_; 1817 #line 211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1818 g_return_if_fail (self != NULL); 1819 #line 211 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1820 g_return_if_fail (location != NULL); 1821 #line 212 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1822 _tmp0_ = self->priv->query; 1823 #line 212 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1824 _tmp1_ = *location; 1825 #line 212 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1826 tracker_sparql_query_set_location (_tmp0_, &_tmp1_); 1827 #line 1823 "tracker-sparql-pattern.c" 1828 } 1829 1830 1831 static gchar* tracker_sparql_pattern_get_last_string (TrackerSparqlPattern* self, gint strip) { 1832 gchar* result = NULL; 1833 TrackerSparqlQuery* _tmp0_; 1834 gint _tmp1_; 1835 gchar* _tmp2_ = NULL; 1836 #line 215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1837 g_return_val_if_fail (self != NULL, NULL); 1838 #line 216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1839 _tmp0_ = self->priv->query; 1840 #line 216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1841 _tmp1_ = strip; 1842 #line 216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1843 _tmp2_ = tracker_sparql_query_get_last_string (_tmp0_, _tmp1_); 1844 #line 216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1845 result = _tmp2_; 1846 #line 216 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1847 return result; 1848 #line 1844 "tracker-sparql-pattern.c" 1849 } 1850 1851 1852 static void _g_object_unref0_ (gpointer var) { 1853 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1854 (var == NULL) ? NULL : (var = (g_object_unref (var), NULL)); 1855 #line 1851 "tracker-sparql-pattern.c" 1856 } 1857 1858 1859 static void _g_list_free__g_object_unref0_ (GList* self) { 1860 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1861 g_list_foreach (self, (GFunc) _g_object_unref0_, NULL); 1862 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1863 g_list_free (self); 1864 #line 1860 "tracker-sparql-pattern.c" 1865 } 1866 1867 1868 static void _vala_array_add5 (TrackerPropertyType** array, int* length, int* size, TrackerPropertyType value) { 1869 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1870 if ((*length) == (*size)) { 1871 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1872 *size = (*size) ? (2 * (*size)) : 4; 1873 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1874 *array = g_renew (TrackerPropertyType, *array, *size); 1875 #line 1871 "tracker-sparql-pattern.c" 1876 } 1877 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1878 (*array)[(*length)++] = value; 1879 #line 1875 "tracker-sparql-pattern.c" 1880 } 1881 1882 1883 static void _vala_array_add6 (gchar*** array, int* length, int* size, gchar* value) { 1884 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1885 if ((*length) == (*size)) { 1886 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1887 *size = (*size) ? (2 * (*size)) : 4; 1888 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1889 *array = g_renew (gchar*, *array, (*size) + 1); 1890 #line 1886 "tracker-sparql-pattern.c" 1891 } 1892 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1893 (*array)[(*length)++] = value; 1894 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1895 (*array)[*length] = NULL; 1896 #line 1892 "tracker-sparql-pattern.c" 1897 } 1898 1899 1900 static void _vala_array_add7 (TrackerPropertyType** array, int* length, int* size, TrackerPropertyType value) { 1901 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1902 if ((*length) == (*size)) { 1903 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1904 *size = (*size) ? (2 * (*size)) : 4; 1905 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1906 *array = g_renew (TrackerPropertyType, *array, *size); 1907 #line 1903 "tracker-sparql-pattern.c" 1908 } 1909 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1910 (*array)[(*length)++] = value; 1911 #line 1907 "tracker-sparql-pattern.c" 1912 } 1913 1914 1915 TrackerSparqlSelectContext* tracker_sparql_pattern_translate_select (TrackerSparqlPattern* self, GString* sql, gboolean subquery, gboolean scalar_subquery, GError** error) { 1916 TrackerSparqlSelectContext* result = NULL; 1917 TrackerSparqlSelectContext* _result_ = NULL; 1918 gboolean _tmp0_; 1919 TrackerSparqlSelectContext* _tmp9_; 1920 TrackerPropertyType type; 1921 GString* _tmp10_; 1922 GString* pattern_sql; 1923 TrackerSparqlQuery* _tmp11_; 1924 GList* _tmp12_; 1925 GList* old_bindings; 1926 GString* _tmp13_; 1927 gboolean _tmp14_ = FALSE; 1928 gboolean _tmp15_; 1929 TrackerSourceLocation _tmp19_ = {0}; 1930 TrackerSourceLocation select_variables_location; 1931 TrackerSparqlExpression* _tmp20_; 1932 gboolean _tmp21_ = FALSE; 1933 gboolean _tmp22_; 1934 GString* _tmp23_; 1935 TrackerSparqlContext* _tmp24_ = NULL; 1936 TrackerSparqlContext* pattern; 1937 TrackerSparqlContext* _tmp25_; 1938 GHashTable* _tmp26_; 1939 GList* _tmp27_ = NULL; 1940 TrackerSourceLocation _tmp33_ = {0}; 1941 TrackerSourceLocation after_where; 1942 TrackerSourceLocation _tmp34_; 1943 TrackerSparqlContext* _tmp35_; 1944 TrackerSparqlContext* _tmp36_; 1945 GHashTable* _tmp37_; 1946 GList* _tmp38_ = NULL; 1947 TrackerSparqlQuery* _tmp48_; 1948 GList* _tmp49_; 1949 GList* where_bindings; 1950 TrackerSparqlQuery* _tmp50_; 1951 GList* _tmp51_; 1952 gboolean first; 1953 gboolean _tmp52_ = FALSE; 1954 gboolean _tmp53_; 1955 gboolean _tmp105_ = FALSE; 1956 gboolean _tmp106_; 1957 gboolean _tmp108_; 1958 GList* _tmp117_; 1959 gboolean _tmp122_; 1960 GString* _tmp124_; 1961 GString* _tmp125_; 1962 GString* _tmp126_; 1963 const gchar* _tmp127_; 1964 GString* _tmp128_; 1965 TrackerSourceLocation _tmp129_; 1966 gboolean _tmp130_ = FALSE; 1967 gboolean _tmp131_; 1968 gboolean _tmp163_ = FALSE; 1969 gboolean _tmp164_; 1970 gint limit; 1971 gint offset; 1972 gboolean _tmp185_ = FALSE; 1973 gboolean _tmp186_; 1974 gint _tmp205_; 1975 gboolean _tmp235_ = FALSE; 1976 gboolean _tmp236_ = FALSE; 1977 gboolean _tmp237_; 1978 gboolean _tmp239_; 1979 gboolean _tmp241_; 1980 TrackerSparqlContext* _tmp258_; 1981 TrackerSparqlContext* _tmp259_; 1982 TrackerSparqlContext* _tmp260_; 1983 TrackerSparqlSelectContext* _tmp261_; 1984 TrackerPropertyType _tmp262_; 1985 GError * _inner_error_ = NULL; 1986 #line 244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1987 g_return_val_if_fail (self != NULL, NULL); 1988 #line 244 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1989 g_return_val_if_fail (sql != NULL, NULL); 1990 #line 247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1991 _tmp0_ = scalar_subquery; 1992 #line 247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 1993 if (_tmp0_) { 1994 #line 1990 "tracker-sparql-pattern.c" 1995 TrackerSparqlQuery* _tmp1_; 1996 TrackerSparqlContext* _tmp2_; 1997 TrackerSparqlContext* _tmp3_; 1998 TrackerSparqlSelectContext* _tmp4_; 1999 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2000 _tmp1_ = self->priv->query; 2001 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2002 _tmp2_ = tracker_sparql_pattern_get_context (self); 2003 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2004 _tmp3_ = _tmp2_; 2005 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2006 _tmp4_ = tracker_sparql_select_context_new_subquery (_tmp1_, _tmp3_); 2007 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2008 _tracker_sparql_context_unref0 (_result_); 2009 #line 248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2010 _result_ = _tmp4_; 2011 #line 2007 "tracker-sparql-pattern.c" 2012 } else { 2013 TrackerSparqlQuery* _tmp5_; 2014 TrackerSparqlContext* _tmp6_; 2015 TrackerSparqlContext* _tmp7_; 2016 TrackerSparqlSelectContext* _tmp8_; 2017 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2018 _tmp5_ = self->priv->query; 2019 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2020 _tmp6_ = tracker_sparql_pattern_get_context (self); 2021 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2022 _tmp7_ = _tmp6_; 2023 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2024 _tmp8_ = tracker_sparql_select_context_new (_tmp5_, _tmp7_); 2025 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2026 _tracker_sparql_context_unref0 (_result_); 2027 #line 250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2028 _result_ = _tmp8_; 2029 #line 2025 "tracker-sparql-pattern.c" 2030 } 2031 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2032 _tmp9_ = _result_; 2033 #line 252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2034 tracker_sparql_pattern_set_context (self, (TrackerSparqlContext*) _tmp9_); 2035 #line 253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2036 type = TRACKER_PROPERTY_TYPE_UNKNOWN; 2037 #line 255 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2038 _tmp10_ = g_string_new (""); 2039 #line 255 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2040 pattern_sql = _tmp10_; 2041 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2042 _tmp11_ = self->priv->query; 2043 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2044 _tmp12_ = _tmp11_->bindings; 2045 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2046 _tmp11_->bindings = NULL; 2047 #line 256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2048 old_bindings = _tmp12_; 2049 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2050 _tmp13_ = sql; 2051 #line 258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2052 g_string_append (_tmp13_, "SELECT "); 2053 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2054 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_SELECT, &_inner_error_); 2055 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2056 if (_inner_error_ != NULL) { 2057 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2058 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2059 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2060 g_propagate_error (error, _inner_error_); 2061 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2062 __g_list_free__g_object_unref0_0 (old_bindings); 2063 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2064 _g_string_free0 (pattern_sql); 2065 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2066 _tracker_sparql_context_unref0 (_result_); 2067 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2068 return NULL; 2069 #line 2065 "tracker-sparql-pattern.c" 2070 } else { 2071 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2072 __g_list_free__g_object_unref0_0 (old_bindings); 2073 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2074 _g_string_free0 (pattern_sql); 2075 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2076 _tracker_sparql_context_unref0 (_result_); 2077 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2078 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2079 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2080 g_clear_error (&_inner_error_); 2081 #line 260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2082 return NULL; 2083 #line 2079 "tracker-sparql-pattern.c" 2084 } 2085 } 2086 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2087 _tmp14_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DISTINCT, &_inner_error_); 2088 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2089 _tmp15_ = _tmp14_; 2090 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2091 if (_inner_error_ != NULL) { 2092 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2093 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2094 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2095 g_propagate_error (error, _inner_error_); 2096 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2097 __g_list_free__g_object_unref0_0 (old_bindings); 2098 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2099 _g_string_free0 (pattern_sql); 2100 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2101 _tracker_sparql_context_unref0 (_result_); 2102 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2103 return NULL; 2104 #line 2100 "tracker-sparql-pattern.c" 2105 } else { 2106 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2107 __g_list_free__g_object_unref0_0 (old_bindings); 2108 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2109 _g_string_free0 (pattern_sql); 2110 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2111 _tracker_sparql_context_unref0 (_result_); 2112 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2113 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2114 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2115 g_clear_error (&_inner_error_); 2116 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2117 return NULL; 2118 #line 2114 "tracker-sparql-pattern.c" 2119 } 2120 } 2121 #line 262 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2122 if (_tmp15_) { 2123 #line 2119 "tracker-sparql-pattern.c" 2124 GString* _tmp16_; 2125 #line 263 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2126 _tmp16_ = sql; 2127 #line 263 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2128 g_string_append (_tmp16_, "DISTINCT "); 2129 #line 2125 "tracker-sparql-pattern.c" 2130 } else { 2131 gboolean _tmp17_ = FALSE; 2132 gboolean _tmp18_; 2133 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2134 _tmp17_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_REDUCED, &_inner_error_); 2135 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2136 _tmp18_ = _tmp17_; 2137 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2138 if (_inner_error_ != NULL) { 2139 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2140 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2141 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2142 g_propagate_error (error, _inner_error_); 2143 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2144 __g_list_free__g_object_unref0_0 (old_bindings); 2145 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2146 _g_string_free0 (pattern_sql); 2147 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2148 _tracker_sparql_context_unref0 (_result_); 2149 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2150 return NULL; 2151 #line 2147 "tracker-sparql-pattern.c" 2152 } else { 2153 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2154 __g_list_free__g_object_unref0_0 (old_bindings); 2155 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2156 _g_string_free0 (pattern_sql); 2157 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2158 _tracker_sparql_context_unref0 (_result_); 2159 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2160 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2161 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2162 g_clear_error (&_inner_error_); 2163 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2164 return NULL; 2165 #line 2161 "tracker-sparql-pattern.c" 2166 } 2167 } 2168 #line 264 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2169 if (_tmp18_) { 2170 #line 2166 "tracker-sparql-pattern.c" 2171 } 2172 } 2173 #line 268 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2174 tracker_sparql_pattern_get_location (self, &_tmp19_); 2175 #line 268 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2176 select_variables_location = _tmp19_; 2177 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2178 _tmp20_ = self->priv->expression; 2179 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2180 tracker_sparql_expression_skip_select_variables (_tmp20_, &_inner_error_); 2181 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2182 if (_inner_error_ != NULL) { 2183 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2184 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2185 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2186 g_propagate_error (error, _inner_error_); 2187 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2188 __g_list_free__g_object_unref0_0 (old_bindings); 2189 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2190 _g_string_free0 (pattern_sql); 2191 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2192 _tracker_sparql_context_unref0 (_result_); 2193 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2194 return NULL; 2195 #line 2191 "tracker-sparql-pattern.c" 2196 } else { 2197 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2198 __g_list_free__g_object_unref0_0 (old_bindings); 2199 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2200 _g_string_free0 (pattern_sql); 2201 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2202 _tracker_sparql_context_unref0 (_result_); 2203 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2204 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2205 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2206 g_clear_error (&_inner_error_); 2207 #line 269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2208 return NULL; 2209 #line 2205 "tracker-sparql-pattern.c" 2210 } 2211 } 2212 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2213 _tmp21_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_FROM, &_inner_error_); 2214 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2215 _tmp22_ = _tmp21_; 2216 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2217 if (_inner_error_ != NULL) { 2218 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2219 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2220 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2221 g_propagate_error (error, _inner_error_); 2222 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2223 __g_list_free__g_object_unref0_0 (old_bindings); 2224 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2225 _g_string_free0 (pattern_sql); 2226 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2227 _tracker_sparql_context_unref0 (_result_); 2228 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2229 return NULL; 2230 #line 2226 "tracker-sparql-pattern.c" 2231 } else { 2232 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2233 __g_list_free__g_object_unref0_0 (old_bindings); 2234 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2235 _g_string_free0 (pattern_sql); 2236 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2237 _tracker_sparql_context_unref0 (_result_); 2238 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2239 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2240 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2241 g_clear_error (&_inner_error_); 2242 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2243 return NULL; 2244 #line 2240 "tracker-sparql-pattern.c" 2245 } 2246 } 2247 #line 271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2248 if (_tmp22_) { 2249 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2250 tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_NAMED, &_inner_error_); 2251 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2252 if (_inner_error_ != NULL) { 2253 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2254 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2255 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2256 g_propagate_error (error, _inner_error_); 2257 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2258 __g_list_free__g_object_unref0_0 (old_bindings); 2259 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2260 _g_string_free0 (pattern_sql); 2261 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2262 _tracker_sparql_context_unref0 (_result_); 2263 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2264 return NULL; 2265 #line 2261 "tracker-sparql-pattern.c" 2266 } else { 2267 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2268 __g_list_free__g_object_unref0_0 (old_bindings); 2269 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2270 _g_string_free0 (pattern_sql); 2271 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2272 _tracker_sparql_context_unref0 (_result_); 2273 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2274 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2275 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2276 g_clear_error (&_inner_error_); 2277 #line 272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2278 return NULL; 2279 #line 2275 "tracker-sparql-pattern.c" 2280 } 2281 } 2282 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2283 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_IRI_REF, &_inner_error_); 2284 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2285 if (_inner_error_ != NULL) { 2286 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2287 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2288 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2289 g_propagate_error (error, _inner_error_); 2290 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2291 __g_list_free__g_object_unref0_0 (old_bindings); 2292 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2293 _g_string_free0 (pattern_sql); 2294 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2295 _tracker_sparql_context_unref0 (_result_); 2296 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2297 return NULL; 2298 #line 2294 "tracker-sparql-pattern.c" 2299 } else { 2300 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2301 __g_list_free__g_object_unref0_0 (old_bindings); 2302 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2303 _g_string_free0 (pattern_sql); 2304 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2305 _tracker_sparql_context_unref0 (_result_); 2306 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2307 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2308 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2309 g_clear_error (&_inner_error_); 2310 #line 273 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2311 return NULL; 2312 #line 2308 "tracker-sparql-pattern.c" 2313 } 2314 } 2315 } 2316 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2317 tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_WHERE, &_inner_error_); 2318 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2319 if (_inner_error_ != NULL) { 2320 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2321 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2322 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2323 g_propagate_error (error, _inner_error_); 2324 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2325 __g_list_free__g_object_unref0_0 (old_bindings); 2326 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2327 _g_string_free0 (pattern_sql); 2328 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2329 _tracker_sparql_context_unref0 (_result_); 2330 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2331 return NULL; 2332 #line 2328 "tracker-sparql-pattern.c" 2333 } else { 2334 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2335 __g_list_free__g_object_unref0_0 (old_bindings); 2336 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2337 _g_string_free0 (pattern_sql); 2338 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2339 _tracker_sparql_context_unref0 (_result_); 2340 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2341 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2342 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2343 g_clear_error (&_inner_error_); 2344 #line 276 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2345 return NULL; 2346 #line 2342 "tracker-sparql-pattern.c" 2347 } 2348 } 2349 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2350 _tmp23_ = pattern_sql; 2351 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2352 _tmp24_ = tracker_sparql_pattern_translate_group_graph_pattern (self, _tmp23_, &_inner_error_); 2353 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2354 pattern = _tmp24_; 2355 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2356 if (_inner_error_ != NULL) { 2357 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2358 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2359 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2360 g_propagate_error (error, _inner_error_); 2361 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2362 __g_list_free__g_object_unref0_0 (old_bindings); 2363 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2364 _g_string_free0 (pattern_sql); 2365 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2366 _tracker_sparql_context_unref0 (_result_); 2367 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2368 return NULL; 2369 #line 2365 "tracker-sparql-pattern.c" 2370 } else { 2371 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2372 __g_list_free__g_object_unref0_0 (old_bindings); 2373 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2374 _g_string_free0 (pattern_sql); 2375 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2376 _tracker_sparql_context_unref0 (_result_); 2377 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2378 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2379 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2380 g_clear_error (&_inner_error_); 2381 #line 278 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2382 return NULL; 2383 #line 2379 "tracker-sparql-pattern.c" 2384 } 2385 } 2386 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2387 _tmp25_ = pattern; 2388 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2389 _tmp26_ = _tmp25_->var_set; 2390 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2391 _tmp27_ = g_hash_table_get_keys (_tmp26_); 2392 #line 2388 "tracker-sparql-pattern.c" 2393 { 2394 GList* key_collection = NULL; 2395 GList* key_it = NULL; 2396 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2397 key_collection = _tmp27_; 2398 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2399 for (key_it = key_collection; key_it != NULL; key_it = key_it->next) { 2400 #line 2396 "tracker-sparql-pattern.c" 2401 TrackerSparqlVariable* key = NULL; 2402 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2403 key = (TrackerSparqlVariable*) key_it->data; 2404 #line 2400 "tracker-sparql-pattern.c" 2405 { 2406 TrackerSparqlContext* _tmp28_; 2407 TrackerSparqlContext* _tmp29_; 2408 GHashTable* _tmp30_; 2409 TrackerSparqlVariable* _tmp31_; 2410 TrackerSparqlVariable* _tmp32_; 2411 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2412 _tmp28_ = tracker_sparql_pattern_get_context (self); 2413 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2414 _tmp29_ = _tmp28_; 2415 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2416 _tmp30_ = _tmp29_->var_set; 2417 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2418 _tmp31_ = key; 2419 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2420 _tmp32_ = _g_object_ref0 (_tmp31_); 2421 #line 280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2422 g_hash_table_insert (_tmp30_, _tmp32_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 2423 #line 2419 "tracker-sparql-pattern.c" 2424 } 2425 } 2426 #line 279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2427 _g_list_free0 (key_collection); 2428 #line 2424 "tracker-sparql-pattern.c" 2429 } 2430 #line 284 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2431 tracker_sparql_pattern_get_location (self, &_tmp33_); 2432 #line 284 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2433 after_where = _tmp33_; 2434 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2435 _tmp34_ = select_variables_location; 2436 #line 285 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2437 tracker_sparql_pattern_set_location (self, &_tmp34_); 2438 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2439 _tmp35_ = tracker_sparql_pattern_get_context (self); 2440 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2441 _tmp36_ = _tmp35_; 2442 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2443 _tmp37_ = _tmp36_->var_set; 2444 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2445 _tmp38_ = g_hash_table_get_keys (_tmp37_); 2446 #line 2442 "tracker-sparql-pattern.c" 2447 { 2448 GList* variable_collection = NULL; 2449 GList* variable_it = NULL; 2450 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2451 variable_collection = _tmp38_; 2452 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2453 for (variable_it = variable_collection; variable_it != NULL; variable_it = variable_it->next) { 2454 #line 2450 "tracker-sparql-pattern.c" 2455 TrackerSparqlVariable* variable = NULL; 2456 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2457 variable = (TrackerSparqlVariable*) variable_it->data; 2458 #line 2454 "tracker-sparql-pattern.c" 2459 { 2460 TrackerSparqlVariable* _tmp39_; 2461 TrackerSparqlVariableBinding* _tmp40_; 2462 #line 289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2463 _tmp39_ = variable; 2464 #line 289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2465 _tmp40_ = _tmp39_->binding; 2466 #line 289 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2467 if (_tmp40_ == NULL) { 2468 #line 2464 "tracker-sparql-pattern.c" 2469 TrackerSparqlVariable* _tmp41_; 2470 const gchar* _tmp42_; 2471 const gchar* _tmp43_; 2472 gchar* _tmp44_ = NULL; 2473 gchar* _tmp45_; 2474 GError* _tmp46_ = NULL; 2475 GError* _tmp47_; 2476 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2477 _tmp41_ = variable; 2478 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2479 _tmp42_ = tracker_sparql_variable_get_name (_tmp41_); 2480 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2481 _tmp43_ = _tmp42_; 2482 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2483 _tmp44_ = g_strdup_printf ("use of undefined variable `%s'", _tmp43_); 2484 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2485 _tmp45_ = _tmp44_; 2486 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2487 _tmp46_ = tracker_sparql_pattern_get_error (self, _tmp45_); 2488 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2489 _tmp47_ = _tmp46_; 2490 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2491 _g_free0 (_tmp45_); 2492 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2493 _inner_error_ = _tmp47_; 2494 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2495 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2496 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2497 g_propagate_error (error, _inner_error_); 2498 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2499 _g_list_free0 (variable_collection); 2500 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2501 _tracker_sparql_context_unref0 (pattern); 2502 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2503 __g_list_free__g_object_unref0_0 (old_bindings); 2504 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2505 _g_string_free0 (pattern_sql); 2506 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2507 _tracker_sparql_context_unref0 (_result_); 2508 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2509 return NULL; 2510 #line 2506 "tracker-sparql-pattern.c" 2511 } else { 2512 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2513 _g_list_free0 (variable_collection); 2514 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2515 _tracker_sparql_context_unref0 (pattern); 2516 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2517 __g_list_free__g_object_unref0_0 (old_bindings); 2518 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2519 _g_string_free0 (pattern_sql); 2520 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2521 _tracker_sparql_context_unref0 (_result_); 2522 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2523 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2524 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2525 g_clear_error (&_inner_error_); 2526 #line 290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2527 return NULL; 2528 #line 2524 "tracker-sparql-pattern.c" 2529 } 2530 } 2531 } 2532 } 2533 #line 288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2534 _g_list_free0 (variable_collection); 2535 #line 2531 "tracker-sparql-pattern.c" 2536 } 2537 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2538 _tmp48_ = self->priv->query; 2539 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2540 _tmp49_ = _tmp48_->bindings; 2541 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2542 _tmp48_->bindings = NULL; 2543 #line 294 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2544 where_bindings = _tmp49_; 2545 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2546 _tmp50_ = self->priv->query; 2547 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2548 _tmp51_ = old_bindings; 2549 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2550 old_bindings = NULL; 2551 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2552 __g_list_free__g_object_unref0_0 (_tmp50_->bindings); 2553 #line 295 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2554 _tmp50_->bindings = _tmp51_; 2555 #line 297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2556 first = TRUE; 2557 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2558 _tmp52_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_STAR, &_inner_error_); 2559 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2560 _tmp53_ = _tmp52_; 2561 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2562 if (_inner_error_ != NULL) { 2563 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2564 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2565 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2566 g_propagate_error (error, _inner_error_); 2567 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2568 __g_list_free__g_object_unref0_0 (where_bindings); 2569 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2570 _tracker_sparql_context_unref0 (pattern); 2571 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2572 __g_list_free__g_object_unref0_0 (old_bindings); 2573 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2574 _g_string_free0 (pattern_sql); 2575 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2576 _tracker_sparql_context_unref0 (_result_); 2577 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2578 return NULL; 2579 #line 2575 "tracker-sparql-pattern.c" 2580 } else { 2581 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2582 __g_list_free__g_object_unref0_0 (where_bindings); 2583 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2584 _tracker_sparql_context_unref0 (pattern); 2585 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2586 __g_list_free__g_object_unref0_0 (old_bindings); 2587 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2588 _g_string_free0 (pattern_sql); 2589 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2590 _tracker_sparql_context_unref0 (_result_); 2591 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2592 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2593 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2594 g_clear_error (&_inner_error_); 2595 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2596 return NULL; 2597 #line 2593 "tracker-sparql-pattern.c" 2598 } 2599 } 2600 #line 298 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2601 if (_tmp53_) { 2602 #line 2598 "tracker-sparql-pattern.c" 2603 TrackerSparqlContext* _tmp54_; 2604 TrackerSparqlContext* _tmp55_; 2605 GHashTable* _tmp56_; 2606 GList* _tmp57_ = NULL; 2607 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2608 _tmp54_ = tracker_sparql_pattern_get_context (self); 2609 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2610 _tmp55_ = _tmp54_; 2611 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2612 _tmp56_ = _tmp55_->var_set; 2613 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2614 _tmp57_ = g_hash_table_get_keys (_tmp56_); 2615 #line 2611 "tracker-sparql-pattern.c" 2616 { 2617 GList* variable_collection = NULL; 2618 GList* variable_it = NULL; 2619 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2620 variable_collection = _tmp57_; 2621 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2622 for (variable_it = variable_collection; variable_it != NULL; variable_it = variable_it->next) { 2623 #line 2619 "tracker-sparql-pattern.c" 2624 TrackerSparqlVariable* variable = NULL; 2625 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2626 variable = (TrackerSparqlVariable*) variable_it->data; 2627 #line 2623 "tracker-sparql-pattern.c" 2628 { 2629 gboolean _tmp58_; 2630 gboolean _tmp60_; 2631 TrackerSparqlSelectContext* _tmp76_; 2632 TrackerSparqlSelectContext* _tmp77_; 2633 TrackerPropertyType* _tmp78_; 2634 gint _tmp78__length1; 2635 TrackerSparqlVariable* _tmp79_; 2636 TrackerSparqlVariableBinding* _tmp80_;
variable '_tmp84__length1' set but not used
(emitted by gcc)
2637 TrackerPropertyType _tmp81_; 2638 TrackerSparqlSelectContext* _tmp82_; 2639 TrackerSparqlSelectContext* _tmp83_; 2640 gchar** _tmp84_; 2641 gint _tmp84__length1; 2642 TrackerSparqlVariable* _tmp85_; 2643 const gchar* _tmp86_; 2644 const gchar* _tmp87_; 2645 gchar* _tmp88_; 2646 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2647 _tmp58_ = first; 2648 #line 300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2649 if (!_tmp58_) { 2650 #line 2646 "tracker-sparql-pattern.c" 2651 GString* _tmp59_; 2652 #line 301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2653 _tmp59_ = sql; 2654 #line 301 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2655 g_string_append (_tmp59_, ", "); 2656 #line 2652 "tracker-sparql-pattern.c" 2657 } else { 2658 #line 303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2659 first = FALSE; 2660 #line 2656 "tracker-sparql-pattern.c" 2661 } 2662 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2663 _tmp60_ = subquery; 2664 #line 305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2665 if (_tmp60_) { 2666 #line 2662 "tracker-sparql-pattern.c" 2667 GString* _tmp61_; 2668 TrackerSparqlVariable* _tmp62_; 2669 const gchar* _tmp63_; 2670 const gchar* _tmp64_; 2671 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2672 _tmp61_ = sql; 2673 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2674 _tmp62_ = variable; 2675 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2676 _tmp63_ = tracker_sparql_variable_get_sql_expression (_tmp62_); 2677 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2678 _tmp64_ = _tmp63_; 2679 #line 307 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2680 g_string_append (_tmp61_, _tmp64_); 2681 #line 2677 "tracker-sparql-pattern.c" 2682 } else { 2683 GString* _tmp65_; 2684 TrackerSparqlVariable* _tmp66_; 2685 const gchar* _tmp67_; 2686 const gchar* _tmp68_; 2687 TrackerSparqlVariable* _tmp69_; 2688 TrackerSparqlVariableBinding* _tmp70_; 2689 TrackerPropertyType _tmp71_; 2690 GString* _tmp72_; 2691 TrackerSparqlVariable* _tmp73_; 2692 const gchar* _tmp74_; 2693 const gchar* _tmp75_; 2694 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2695 _tmp65_ = sql; 2696 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2697 _tmp66_ = variable; 2698 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2699 _tmp67_ = tracker_sparql_variable_get_sql_expression (_tmp66_); 2700 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2701 _tmp68_ = _tmp67_; 2702 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2703 _tmp69_ = variable; 2704 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2705 _tmp70_ = _tmp69_->binding; 2706 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2707 _tmp71_ = ((TrackerSparqlDataBinding*) _tmp70_)->data_type; 2708 #line 309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2709 tracker_sparql_expression_append_expression_as_string (_tmp65_, _tmp68_, _tmp71_); 2710 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2711 _tmp72_ = sql; 2712 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2713 _tmp73_ = variable; 2714 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2715 _tmp74_ = tracker_sparql_variable_get_name (_tmp73_); 2716 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2717 _tmp75_ = _tmp74_; 2718 #line 310 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2719 g_string_append_printf (_tmp72_, " AS \"%s\"", _tmp75_); 2720 #line 2716 "tracker-sparql-pattern.c" 2721 } 2722 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2723 _tmp76_ = _result_; 2724 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2725 _tmp77_ = _result_; 2726 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2727 _tmp78_ = _tmp77_->types;
Value stored to '_tmp78_' is never read
(emitted by clang-analyzer)

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

2728 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2729 _tmp78__length1 = _tmp77_->types_length1;
Value stored to '_tmp78__length1' is never read
(emitted by clang-analyzer)

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

2730 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2731 _tmp79_ = variable; 2732 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2733 _tmp80_ = _tmp79_->binding; 2734 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2735 _tmp81_ = ((TrackerSparqlDataBinding*) _tmp80_)->data_type; 2736 #line 312 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2737 _vala_array_add5 (&_tmp76_->types, &_tmp76_->types_length1, &_tmp76_->_types_size_, _tmp81_); 2738 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2739 _tmp82_ = _result_; 2740 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2741 _tmp83_ = _result_; 2742 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2743 _tmp84_ = _tmp83_->variable_names;
Value stored to '_tmp84_' is never read
(emitted by clang-analyzer)

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

2744 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2745 _tmp84__length1 = _tmp83_->variable_names_length1;
Value stored to '_tmp84__length1' is never read
(emitted by clang-analyzer)

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

2746 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2747 _tmp85_ = variable; 2748 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2749 _tmp86_ = tracker_sparql_variable_get_name (_tmp85_); 2750 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2751 _tmp87_ = _tmp86_; 2752 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2753 _tmp88_ = g_strdup (_tmp87_); 2754 #line 313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2755 _vala_array_add6 (&_tmp82_->variable_names, &_tmp82_->variable_names_length1, &_tmp82_->_variable_names_size_, _tmp88_); 2756 #line 2752 "tracker-sparql-pattern.c" 2757 } 2758 } 2759 #line 299 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2760 _g_list_free0 (variable_collection); 2761 #line 2757 "tracker-sparql-pattern.c" 2762 } 2763 } else { 2764 { 2765 gint i; 2766 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2767 i = 0; 2768 #line 2764 "tracker-sparql-pattern.c" 2769 { 2770 gboolean _tmp89_; 2771 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2772 _tmp89_ = TRUE; 2773 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2774 while (TRUE) { 2775 #line 2771 "tracker-sparql-pattern.c" 2776 gboolean _tmp90_; 2777 gint _tmp92_; 2778 TrackerSparqlExpression* _tmp94_; 2779 GString* _tmp95_; 2780 gboolean _tmp96_; 2781 gint _tmp97_; 2782 TrackerPropertyType _tmp98_ = 0; 2783 TrackerPropertyType _tmp99_; 2784 TrackerSparqlSelectContext* _tmp100_; 2785 TrackerSparqlSelectContext* _tmp101_; 2786 TrackerPropertyType* _tmp102_; 2787 gint _tmp102__length1; 2788 TrackerPropertyType _tmp103_; 2789 TrackerSparqlTokenType _tmp104_ = 0; 2790 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2791 _tmp90_ = _tmp89_; 2792 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2793 if (!_tmp90_) { 2794 #line 2790 "tracker-sparql-pattern.c" 2795 gint _tmp91_; 2796 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2797 _tmp91_ = i; 2798 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2799 i = _tmp91_ + 1; 2800 #line 2796 "tracker-sparql-pattern.c" 2801 } 2802 #line 316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2803 _tmp89_ = FALSE; 2804 #line 317 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2805 first = FALSE; 2806 #line 319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2807 _tmp92_ = i; 2808 #line 319 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2809 if (_tmp92_ > 0) { 2810 #line 2806 "tracker-sparql-pattern.c" 2811 GString* _tmp93_; 2812 #line 320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2813 _tmp93_ = sql; 2814 #line 320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2815 g_string_append (_tmp93_, ", "); 2816 #line 2812 "tracker-sparql-pattern.c" 2817 } 2818 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2819 _tmp94_ = self->priv->expression; 2820 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2821 _tmp95_ = sql; 2822 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2823 _tmp96_ = subquery; 2824 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2825 _tmp97_ = i; 2826 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2827 _tmp98_ = tracker_sparql_expression_translate_select_expression (_tmp94_, _tmp95_, _tmp96_, _tmp97_, &_inner_error_); 2828 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2829 _tmp99_ = _tmp98_; 2830 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2831 if (_inner_error_ != NULL) { 2832 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2833 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 2834 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2835 g_propagate_error (error, _inner_error_); 2836 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2837 __g_list_free__g_object_unref0_0 (where_bindings); 2838 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2839 _tracker_sparql_context_unref0 (pattern); 2840 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2841 __g_list_free__g_object_unref0_0 (old_bindings); 2842 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2843 _g_string_free0 (pattern_sql); 2844 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2845 _tracker_sparql_context_unref0 (_result_); 2846 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2847 return NULL; 2848 #line 2844 "tracker-sparql-pattern.c" 2849 } else { 2850 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2851 __g_list_free__g_object_unref0_0 (where_bindings); 2852 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2853 _tracker_sparql_context_unref0 (pattern); 2854 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2855 __g_list_free__g_object_unref0_0 (old_bindings); 2856 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2857 _g_string_free0 (pattern_sql); 2858 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2859 _tracker_sparql_context_unref0 (_result_); 2860 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2861 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 2862 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2863 g_clear_error (&_inner_error_); 2864 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2865 return NULL; 2866 #line 2862 "tracker-sparql-pattern.c" 2867 } 2868 } 2869 #line 323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2870 type = _tmp99_; 2871 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2872 _tmp100_ = _result_; 2873 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2874 _tmp101_ = _result_; 2875 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2876 _tmp102_ = _tmp101_->types;
Value stored to '_tmp102_' is never read
(emitted by clang-analyzer)

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

2877 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2878 _tmp102__length1 = _tmp101_->types_length1;
Value stored to '_tmp102__length1' is never read
(emitted by clang-analyzer)

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

2879 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2880 _tmp103_ = type; 2881 #line 324 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2882 _vala_array_add7 (&_tmp100_->types, &_tmp100_->types_length1, &_tmp100_->_types_size_, _tmp103_); 2883 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2884 _tmp104_ = tracker_sparql_pattern_current (self); 2885 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2886 switch (_tmp104_) { 2887 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2888 case TRACKER_SPARQL_TOKEN_TYPE_FROM: 2889 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2890 case TRACKER_SPARQL_TOKEN_TYPE_WHERE: 2891 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2892 case TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE: 2893 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2894 case TRACKER_SPARQL_TOKEN_TYPE_GROUP: 2895 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2896 case TRACKER_SPARQL_TOKEN_TYPE_ORDER: 2897 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2898 case TRACKER_SPARQL_TOKEN_TYPE_LIMIT: 2899 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2900 case TRACKER_SPARQL_TOKEN_TYPE_OFFSET: 2901 #line 326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2902 case TRACKER_SPARQL_TOKEN_TYPE_EOF: 2903 #line 2899 "tracker-sparql-pattern.c" 2904 { 2905 #line 335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2906 break; 2907 #line 2903 "tracker-sparql-pattern.c" 2908 } 2909 default: 2910 { 2911 #line 337 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2912 continue; 2913 #line 2909 "tracker-sparql-pattern.c" 2914 } 2915 } 2916 #line 339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2917 break; 2918 #line 2914 "tracker-sparql-pattern.c" 2919 } 2920 } 2921 } 2922 } 2923 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2924 _tmp106_ = self->queries_fts_data; 2925 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2926 if (_tmp106_) { 2927 #line 2923 "tracker-sparql-pattern.c" 2928 TrackerSparqlVariable* _tmp107_; 2929 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2930 _tmp107_ = self->fts_subject; 2931 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2932 _tmp105_ = _tmp107_ != NULL; 2933 #line 2929 "tracker-sparql-pattern.c" 2934 } else { 2935 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2936 _tmp105_ = FALSE; 2937 #line 2933 "tracker-sparql-pattern.c" 2938 } 2939 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2940 _tmp108_ = _tmp105_; 2941 #line 343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2942 if (_tmp108_) { 2943 #line 2939 "tracker-sparql-pattern.c" 2944 gboolean _tmp109_; 2945 GString* _tmp111_; 2946 TrackerSparqlVariable* _tmp112_; 2947 const gchar* _tmp113_; 2948 const gchar* _tmp114_; 2949 gchar* _tmp115_ = NULL; 2950 gchar* _tmp116_; 2951 #line 345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2952 _tmp109_ = first; 2953 #line 345 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2954 if (!_tmp109_) { 2955 #line 2951 "tracker-sparql-pattern.c" 2956 GString* _tmp110_; 2957 #line 346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2958 _tmp110_ = sql; 2959 #line 346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2960 g_string_append (_tmp110_, ", "); 2961 #line 2957 "tracker-sparql-pattern.c" 2962 } else { 2963 #line 348 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2964 first = FALSE; 2965 #line 2961 "tracker-sparql-pattern.c" 2966 } 2967 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2968 _tmp111_ = sql; 2969 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2970 _tmp112_ = self->fts_subject; 2971 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2972 _tmp113_ = tracker_sparql_variable_get_sql_expression (_tmp112_); 2973 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2974 _tmp114_ = _tmp113_; 2975 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2976 _tmp115_ = g_strdup_printf ("%s AS docid ", _tmp114_); 2977 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2978 _tmp116_ = _tmp115_; 2979 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2980 g_string_append (_tmp111_, _tmp116_); 2981 #line 351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2982 _g_free0 (_tmp116_); 2983 #line 2979 "tracker-sparql-pattern.c" 2984 } 2985 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2986 _tmp117_ = where_bindings; 2987 #line 2983 "tracker-sparql-pattern.c" 2988 { 2989 GList* binding_collection = NULL; 2990 GList* binding_it = NULL; 2991 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2992 binding_collection = _tmp117_; 2993 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2994 for (binding_it = binding_collection; binding_it != NULL; binding_it = binding_it->next) { 2995 #line 2991 "tracker-sparql-pattern.c" 2996 TrackerSparqlLiteralBinding* _tmp118_; 2997 TrackerSparqlLiteralBinding* binding = NULL; 2998 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 2999 _tmp118_ = _g_object_ref0 ((TrackerSparqlLiteralBinding*) binding_it->data); 3000 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3001 binding = _tmp118_; 3002 #line 2998 "tracker-sparql-pattern.c" 3003 { 3004 TrackerSparqlQuery* _tmp119_; 3005 TrackerSparqlLiteralBinding* _tmp120_; 3006 TrackerSparqlLiteralBinding* _tmp121_; 3007 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3008 _tmp119_ = self->priv->query; 3009 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3010 _tmp120_ = binding; 3011 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3012 _tmp121_ = _g_object_ref0 (_tmp120_); 3013 #line 356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3014 _tmp119_->bindings = g_list_append (_tmp119_->bindings, _tmp121_); 3015 #line 355 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3016 _g_object_unref0 (binding); 3017 #line 3013 "tracker-sparql-pattern.c" 3018 } 3019 } 3020 } 3021 #line 359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3022 _tmp122_ = first; 3023 #line 359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3024 if (_tmp122_) { 3025 #line 3021 "tracker-sparql-pattern.c" 3026 GString* _tmp123_; 3027 #line 360 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3028 _tmp123_ = sql; 3029 #line 360 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3030 g_string_append (_tmp123_, "NULL"); 3031 #line 3027 "tracker-sparql-pattern.c" 3032 } 3033 #line 364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3034 _tmp124_ = sql; 3035 #line 364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3036 g_string_append (_tmp124_, " FROM ("); 3037 #line 365 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3038 _tmp125_ = sql; 3039 #line 365 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3040 _tmp126_ = pattern_sql; 3041 #line 365 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3042 _tmp127_ = _tmp126_->str; 3043 #line 365 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3044 g_string_append (_tmp125_, _tmp127_); 3045 #line 366 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3046 _tmp128_ = sql; 3047 #line 366 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3048 g_string_append (_tmp128_, ")"); 3049 #line 368 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3050 _tmp129_ = after_where; 3051 #line 368 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3052 tracker_sparql_pattern_set_location (self, &_tmp129_); 3053 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3054 _tmp130_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_GROUP, &_inner_error_); 3055 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3056 _tmp131_ = _tmp130_; 3057 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3058 if (_inner_error_ != NULL) { 3059 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3060 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3061 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3062 g_propagate_error (error, _inner_error_); 3063 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3064 __g_list_free__g_object_unref0_0 (where_bindings); 3065 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3066 _tracker_sparql_context_unref0 (pattern); 3067 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3068 __g_list_free__g_object_unref0_0 (old_bindings); 3069 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3070 _g_string_free0 (pattern_sql); 3071 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3072 _tracker_sparql_context_unref0 (_result_); 3073 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3074 return NULL; 3075 #line 3071 "tracker-sparql-pattern.c" 3076 } else { 3077 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3078 __g_list_free__g_object_unref0_0 (where_bindings); 3079 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3080 _tracker_sparql_context_unref0 (pattern); 3081 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3082 __g_list_free__g_object_unref0_0 (old_bindings); 3083 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3084 _g_string_free0 (pattern_sql); 3085 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3086 _tracker_sparql_context_unref0 (_result_); 3087 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3088 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3089 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3090 g_clear_error (&_inner_error_); 3091 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3092 return NULL; 3093 #line 3089 "tracker-sparql-pattern.c" 3094 } 3095 } 3096 #line 370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3097 if (_tmp131_) { 3098 #line 3094 "tracker-sparql-pattern.c" 3099 GString* _tmp132_; 3100 gboolean first_group; 3101 gboolean _tmp158_ = FALSE; 3102 gboolean _tmp159_; 3103 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3104 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_BY, &_inner_error_); 3105 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3106 if (_inner_error_ != NULL) { 3107 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3108 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3109 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3110 g_propagate_error (error, _inner_error_); 3111 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3112 __g_list_free__g_object_unref0_0 (where_bindings); 3113 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3114 _tracker_sparql_context_unref0 (pattern); 3115 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3116 __g_list_free__g_object_unref0_0 (old_bindings); 3117 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3118 _g_string_free0 (pattern_sql); 3119 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3120 _tracker_sparql_context_unref0 (_result_); 3121 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3122 return NULL; 3123 #line 3119 "tracker-sparql-pattern.c" 3124 } else { 3125 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3126 __g_list_free__g_object_unref0_0 (where_bindings); 3127 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3128 _tracker_sparql_context_unref0 (pattern); 3129 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3130 __g_list_free__g_object_unref0_0 (old_bindings); 3131 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3132 _g_string_free0 (pattern_sql); 3133 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3134 _tracker_sparql_context_unref0 (_result_); 3135 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3136 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3137 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3138 g_clear_error (&_inner_error_); 3139 #line 371 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3140 return NULL; 3141 #line 3137 "tracker-sparql-pattern.c" 3142 } 3143 } 3144 #line 372 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3145 _tmp132_ = sql; 3146 #line 372 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3147 g_string_append (_tmp132_, " GROUP BY "); 3148 #line 373 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3149 first_group = TRUE; 3150 #line 3146 "tracker-sparql-pattern.c" 3151 { 3152 gboolean _tmp133_; 3153 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3154 _tmp133_ = TRUE; 3155 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3156 while (TRUE) { 3157 #line 3153 "tracker-sparql-pattern.c" 3158 gboolean _tmp134_; 3159 gboolean _tmp154_; 3160 TrackerSparqlExpression* _tmp156_; 3161 GString* _tmp157_; 3162 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3163 _tmp134_ = _tmp133_; 3164 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3165 if (!_tmp134_) { 3166 #line 3162 "tracker-sparql-pattern.c" 3167 gboolean _tmp135_ = FALSE; 3168 gboolean _tmp136_ = FALSE; 3169 gboolean _tmp137_ = FALSE; 3170 gboolean _tmp138_ = FALSE; 3171 gboolean _tmp139_ = FALSE; 3172 gboolean _tmp140_ = FALSE; 3173 TrackerSparqlTokenType _tmp141_ = 0; 3174 gboolean _tmp143_; 3175 gboolean _tmp145_; 3176 gboolean _tmp147_; 3177 gboolean _tmp149_; 3178 gboolean _tmp151_; 3179 gboolean _tmp153_; 3180 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3181 _tmp141_ = tracker_sparql_pattern_current (self); 3182 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3183 if (_tmp141_ != TRACKER_SPARQL_TOKEN_TYPE_HAVING) { 3184 #line 3180 "tracker-sparql-pattern.c" 3185 TrackerSparqlTokenType _tmp142_ = 0; 3186 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3187 _tmp142_ = tracker_sparql_pattern_current (self); 3188 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3189 _tmp140_ = _tmp142_ != TRACKER_SPARQL_TOKEN_TYPE_ORDER; 3190 #line 3186 "tracker-sparql-pattern.c" 3191 } else { 3192 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3193 _tmp140_ = FALSE; 3194 #line 3190 "tracker-sparql-pattern.c" 3195 } 3196 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3197 _tmp143_ = _tmp140_; 3198 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3199 if (_tmp143_) { 3200 #line 3196 "tracker-sparql-pattern.c" 3201 TrackerSparqlTokenType _tmp144_ = 0; 3202 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3203 _tmp144_ = tracker_sparql_pattern_current (self); 3204 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3205 _tmp139_ = _tmp144_ != TRACKER_SPARQL_TOKEN_TYPE_LIMIT; 3206 #line 3202 "tracker-sparql-pattern.c" 3207 } else { 3208 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3209 _tmp139_ = FALSE; 3210 #line 3206 "tracker-sparql-pattern.c" 3211 } 3212 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3213 _tmp145_ = _tmp139_; 3214 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3215 if (_tmp145_) { 3216 #line 3212 "tracker-sparql-pattern.c" 3217 TrackerSparqlTokenType _tmp146_ = 0; 3218 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3219 _tmp146_ = tracker_sparql_pattern_current (self); 3220 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3221 _tmp138_ = _tmp146_ != TRACKER_SPARQL_TOKEN_TYPE_OFFSET; 3222 #line 3218 "tracker-sparql-pattern.c" 3223 } else { 3224 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3225 _tmp138_ = FALSE; 3226 #line 3222 "tracker-sparql-pattern.c" 3227 } 3228 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3229 _tmp147_ = _tmp138_; 3230 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3231 if (_tmp147_) { 3232 #line 3228 "tracker-sparql-pattern.c" 3233 TrackerSparqlTokenType _tmp148_ = 0; 3234 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3235 _tmp148_ = tracker_sparql_pattern_current (self); 3236 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3237 _tmp137_ = _tmp148_ != TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE; 3238 #line 3234 "tracker-sparql-pattern.c" 3239 } else { 3240 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3241 _tmp137_ = FALSE; 3242 #line 3238 "tracker-sparql-pattern.c" 3243 } 3244 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3245 _tmp149_ = _tmp137_; 3246 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3247 if (_tmp149_) { 3248 #line 3244 "tracker-sparql-pattern.c" 3249 TrackerSparqlTokenType _tmp150_ = 0; 3250 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3251 _tmp150_ = tracker_sparql_pattern_current (self); 3252 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3253 _tmp136_ = _tmp150_ != TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS; 3254 #line 3250 "tracker-sparql-pattern.c" 3255 } else { 3256 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3257 _tmp136_ = FALSE; 3258 #line 3254 "tracker-sparql-pattern.c" 3259 } 3260 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3261 _tmp151_ = _tmp136_; 3262 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3263 if (_tmp151_) { 3264 #line 3260 "tracker-sparql-pattern.c" 3265 TrackerSparqlTokenType _tmp152_ = 0; 3266 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3267 _tmp152_ = tracker_sparql_pattern_current (self); 3268 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3269 _tmp135_ = _tmp152_ != TRACKER_SPARQL_TOKEN_TYPE_EOF; 3270 #line 3266 "tracker-sparql-pattern.c" 3271 } else { 3272 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3273 _tmp135_ = FALSE; 3274 #line 3270 "tracker-sparql-pattern.c" 3275 } 3276 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3277 _tmp153_ = _tmp135_; 3278 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3279 if (!_tmp153_) { 3280 #line 381 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3281 break; 3282 #line 3278 "tracker-sparql-pattern.c" 3283 } 3284 } 3285 #line 374 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3286 _tmp133_ = FALSE; 3287 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3288 _tmp154_ = first_group; 3289 #line 375 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3290 if (_tmp154_) { 3291 #line 376 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3292 first_group = FALSE; 3293 #line 3289 "tracker-sparql-pattern.c" 3294 } else { 3295 GString* _tmp155_; 3296 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3297 _tmp155_ = sql; 3298 #line 378 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3299 g_string_append (_tmp155_, ", "); 3300 #line 3296 "tracker-sparql-pattern.c" 3301 } 3302 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3303 _tmp156_ = self->priv->expression; 3304 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3305 _tmp157_ = sql; 3306 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3307 tracker_sparql_expression_translate_expression (_tmp156_, _tmp157_, &_inner_error_); 3308 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3309 if (_inner_error_ != NULL) { 3310 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3311 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3312 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3313 g_propagate_error (error, _inner_error_); 3314 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3315 __g_list_free__g_object_unref0_0 (where_bindings); 3316 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3317 _tracker_sparql_context_unref0 (pattern); 3318 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3319 __g_list_free__g_object_unref0_0 (old_bindings); 3320 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3321 _g_string_free0 (pattern_sql); 3322 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3323 _tracker_sparql_context_unref0 (_result_); 3324 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3325 return NULL; 3326 #line 3322 "tracker-sparql-pattern.c" 3327 } else { 3328 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3329 __g_list_free__g_object_unref0_0 (where_bindings); 3330 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3331 _tracker_sparql_context_unref0 (pattern); 3332 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3333 __g_list_free__g_object_unref0_0 (old_bindings); 3334 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3335 _g_string_free0 (pattern_sql); 3336 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3337 _tracker_sparql_context_unref0 (_result_); 3338 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3339 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3340 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3341 g_clear_error (&_inner_error_); 3342 #line 380 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3343 return NULL; 3344 #line 3340 "tracker-sparql-pattern.c" 3345 } 3346 } 3347 } 3348 } 3349 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3350 _tmp158_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_HAVING, &_inner_error_); 3351 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3352 _tmp159_ = _tmp158_; 3353 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3354 if (_inner_error_ != NULL) { 3355 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3356 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3357 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3358 g_propagate_error (error, _inner_error_); 3359 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3360 __g_list_free__g_object_unref0_0 (where_bindings); 3361 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3362 _tracker_sparql_context_unref0 (pattern); 3363 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3364 __g_list_free__g_object_unref0_0 (old_bindings); 3365 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3366 _g_string_free0 (pattern_sql); 3367 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3368 _tracker_sparql_context_unref0 (_result_); 3369 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3370 return NULL; 3371 #line 3367 "tracker-sparql-pattern.c" 3372 } else { 3373 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3374 __g_list_free__g_object_unref0_0 (where_bindings); 3375 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3376 _tracker_sparql_context_unref0 (pattern); 3377 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3378 __g_list_free__g_object_unref0_0 (old_bindings); 3379 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3380 _g_string_free0 (pattern_sql); 3381 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3382 _tracker_sparql_context_unref0 (_result_); 3383 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3384 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3385 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3386 g_clear_error (&_inner_error_); 3387 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3388 return NULL; 3389 #line 3385 "tracker-sparql-pattern.c" 3390 } 3391 } 3392 #line 383 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3393 if (_tmp159_) { 3394 #line 3390 "tracker-sparql-pattern.c" 3395 GString* _tmp160_; 3396 TrackerSparqlExpression* _tmp161_; 3397 GString* _tmp162_; 3398 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3399 _tmp160_ = sql; 3400 #line 384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3401 g_string_append (_tmp160_, " HAVING "); 3402 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3403 _tmp161_ = self->priv->expression; 3404 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3405 _tmp162_ = sql; 3406 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3407 tracker_sparql_expression_translate_constraint (_tmp161_, _tmp162_, &_inner_error_); 3408 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3409 if (_inner_error_ != NULL) { 3410 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3411 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3412 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3413 g_propagate_error (error, _inner_error_); 3414 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3415 __g_list_free__g_object_unref0_0 (where_bindings); 3416 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3417 _tracker_sparql_context_unref0 (pattern); 3418 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3419 __g_list_free__g_object_unref0_0 (old_bindings); 3420 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3421 _g_string_free0 (pattern_sql); 3422 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3423 _tracker_sparql_context_unref0 (_result_); 3424 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3425 return NULL; 3426 #line 3422 "tracker-sparql-pattern.c" 3427 } else { 3428 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3429 __g_list_free__g_object_unref0_0 (where_bindings); 3430 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3431 _tracker_sparql_context_unref0 (pattern); 3432 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3433 __g_list_free__g_object_unref0_0 (old_bindings); 3434 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3435 _g_string_free0 (pattern_sql); 3436 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3437 _tracker_sparql_context_unref0 (_result_); 3438 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3439 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3440 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3441 g_clear_error (&_inner_error_); 3442 #line 385 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3443 return NULL; 3444 #line 3440 "tracker-sparql-pattern.c" 3445 } 3446 } 3447 } 3448 } 3449 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3450 _tmp163_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_ORDER, &_inner_error_); 3451 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3452 _tmp164_ = _tmp163_; 3453 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3454 if (_inner_error_ != NULL) { 3455 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3456 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3457 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3458 g_propagate_error (error, _inner_error_); 3459 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3460 __g_list_free__g_object_unref0_0 (where_bindings); 3461 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3462 _tracker_sparql_context_unref0 (pattern); 3463 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3464 __g_list_free__g_object_unref0_0 (old_bindings); 3465 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3466 _g_string_free0 (pattern_sql); 3467 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3468 _tracker_sparql_context_unref0 (_result_); 3469 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3470 return NULL; 3471 #line 3467 "tracker-sparql-pattern.c" 3472 } else { 3473 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3474 __g_list_free__g_object_unref0_0 (where_bindings); 3475 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3476 _tracker_sparql_context_unref0 (pattern); 3477 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3478 __g_list_free__g_object_unref0_0 (old_bindings); 3479 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3480 _g_string_free0 (pattern_sql); 3481 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3482 _tracker_sparql_context_unref0 (_result_); 3483 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3484 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3485 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3486 g_clear_error (&_inner_error_); 3487 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3488 return NULL; 3489 #line 3485 "tracker-sparql-pattern.c" 3490 } 3491 } 3492 #line 389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3493 if (_tmp164_) { 3494 #line 3490 "tracker-sparql-pattern.c" 3495 GString* _tmp165_; 3496 gboolean first_order; 3497 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3498 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_BY, &_inner_error_); 3499 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3500 if (_inner_error_ != NULL) { 3501 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3502 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3503 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3504 g_propagate_error (error, _inner_error_); 3505 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3506 __g_list_free__g_object_unref0_0 (where_bindings); 3507 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3508 _tracker_sparql_context_unref0 (pattern); 3509 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3510 __g_list_free__g_object_unref0_0 (old_bindings); 3511 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3512 _g_string_free0 (pattern_sql); 3513 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3514 _tracker_sparql_context_unref0 (_result_); 3515 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3516 return NULL; 3517 #line 3513 "tracker-sparql-pattern.c" 3518 } else { 3519 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3520 __g_list_free__g_object_unref0_0 (where_bindings); 3521 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3522 _tracker_sparql_context_unref0 (pattern); 3523 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3524 __g_list_free__g_object_unref0_0 (old_bindings); 3525 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3526 _g_string_free0 (pattern_sql); 3527 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3528 _tracker_sparql_context_unref0 (_result_); 3529 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3530 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3531 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3532 g_clear_error (&_inner_error_); 3533 #line 390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3534 return NULL; 3535 #line 3531 "tracker-sparql-pattern.c" 3536 } 3537 } 3538 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3539 _tmp165_ = sql; 3540 #line 391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3541 g_string_append (_tmp165_, " ORDER BY "); 3542 #line 392 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3543 first_order = TRUE; 3544 #line 3540 "tracker-sparql-pattern.c" 3545 { 3546 gboolean _tmp166_; 3547 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3548 _tmp166_ = TRUE; 3549 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3550 while (TRUE) { 3551 #line 3547 "tracker-sparql-pattern.c" 3552 gboolean _tmp167_; 3553 gboolean _tmp181_; 3554 TrackerSparqlExpression* _tmp183_; 3555 GString* _tmp184_; 3556 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3557 _tmp167_ = _tmp166_; 3558 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3559 if (!_tmp167_) { 3560 #line 3556 "tracker-sparql-pattern.c" 3561 gboolean _tmp168_ = FALSE; 3562 gboolean _tmp169_ = FALSE; 3563 gboolean _tmp170_ = FALSE; 3564 gboolean _tmp171_ = FALSE; 3565 TrackerSparqlTokenType _tmp172_ = 0; 3566 gboolean _tmp174_; 3567 gboolean _tmp176_; 3568 gboolean _tmp178_; 3569 gboolean _tmp180_; 3570 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3571 _tmp172_ = tracker_sparql_pattern_current (self); 3572 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3573 if (_tmp172_ != TRACKER_SPARQL_TOKEN_TYPE_LIMIT) { 3574 #line 3570 "tracker-sparql-pattern.c" 3575 TrackerSparqlTokenType _tmp173_ = 0; 3576 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3577 _tmp173_ = tracker_sparql_pattern_current (self); 3578 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3579 _tmp171_ = _tmp173_ != TRACKER_SPARQL_TOKEN_TYPE_OFFSET; 3580 #line 3576 "tracker-sparql-pattern.c" 3581 } else { 3582 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3583 _tmp171_ = FALSE; 3584 #line 3580 "tracker-sparql-pattern.c" 3585 } 3586 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3587 _tmp174_ = _tmp171_; 3588 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3589 if (_tmp174_) { 3590 #line 3586 "tracker-sparql-pattern.c" 3591 TrackerSparqlTokenType _tmp175_ = 0; 3592 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3593 _tmp175_ = tracker_sparql_pattern_current (self); 3594 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3595 _tmp170_ = _tmp175_ != TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE; 3596 #line 3592 "tracker-sparql-pattern.c" 3597 } else { 3598 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3599 _tmp170_ = FALSE; 3600 #line 3596 "tracker-sparql-pattern.c" 3601 } 3602 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3603 _tmp176_ = _tmp170_; 3604 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3605 if (_tmp176_) { 3606 #line 3602 "tracker-sparql-pattern.c" 3607 TrackerSparqlTokenType _tmp177_ = 0; 3608 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3609 _tmp177_ = tracker_sparql_pattern_current (self); 3610 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3611 _tmp169_ = _tmp177_ != TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS; 3612 #line 3608 "tracker-sparql-pattern.c" 3613 } else { 3614 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3615 _tmp169_ = FALSE; 3616 #line 3612 "tracker-sparql-pattern.c" 3617 } 3618 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3619 _tmp178_ = _tmp169_; 3620 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3621 if (_tmp178_) { 3622 #line 3618 "tracker-sparql-pattern.c" 3623 TrackerSparqlTokenType _tmp179_ = 0; 3624 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3625 _tmp179_ = tracker_sparql_pattern_current (self); 3626 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3627 _tmp168_ = _tmp179_ != TRACKER_SPARQL_TOKEN_TYPE_EOF; 3628 #line 3624 "tracker-sparql-pattern.c" 3629 } else { 3630 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3631 _tmp168_ = FALSE; 3632 #line 3628 "tracker-sparql-pattern.c" 3633 } 3634 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3635 _tmp180_ = _tmp168_; 3636 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3637 if (!_tmp180_) { 3638 #line 400 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3639 break; 3640 #line 3636 "tracker-sparql-pattern.c" 3641 } 3642 } 3643 #line 393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3644 _tmp166_ = FALSE; 3645 #line 394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3646 _tmp181_ = first_order; 3647 #line 394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3648 if (_tmp181_) { 3649 #line 395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3650 first_order = FALSE; 3651 #line 3647 "tracker-sparql-pattern.c" 3652 } else { 3653 GString* _tmp182_; 3654 #line 397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3655 _tmp182_ = sql; 3656 #line 397 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3657 g_string_append (_tmp182_, ", "); 3658 #line 3654 "tracker-sparql-pattern.c" 3659 } 3660 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3661 _tmp183_ = self->priv->expression; 3662 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3663 _tmp184_ = sql; 3664 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3665 tracker_sparql_expression_translate_order_condition (_tmp183_, _tmp184_, &_inner_error_); 3666 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3667 if (_inner_error_ != NULL) { 3668 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3669 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3670 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3671 g_propagate_error (error, _inner_error_); 3672 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3673 __g_list_free__g_object_unref0_0 (where_bindings); 3674 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3675 _tracker_sparql_context_unref0 (pattern); 3676 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3677 __g_list_free__g_object_unref0_0 (old_bindings); 3678 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3679 _g_string_free0 (pattern_sql); 3680 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3681 _tracker_sparql_context_unref0 (_result_); 3682 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3683 return NULL; 3684 #line 3680 "tracker-sparql-pattern.c" 3685 } else { 3686 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3687 __g_list_free__g_object_unref0_0 (where_bindings); 3688 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3689 _tracker_sparql_context_unref0 (pattern); 3690 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3691 __g_list_free__g_object_unref0_0 (old_bindings); 3692 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3693 _g_string_free0 (pattern_sql); 3694 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3695 _tracker_sparql_context_unref0 (_result_); 3696 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3697 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3698 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3699 g_clear_error (&_inner_error_); 3700 #line 399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3701 return NULL; 3702 #line 3698 "tracker-sparql-pattern.c" 3703 } 3704 } 3705 } 3706 } 3707 } 3708 #line 403 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3709 limit = -1; 3710 #line 404 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3711 offset = -1; 3712 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3713 _tmp185_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_LIMIT, &_inner_error_); 3714 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3715 _tmp186_ = _tmp185_; 3716 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3717 if (_inner_error_ != NULL) { 3718 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3719 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3720 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3721 g_propagate_error (error, _inner_error_); 3722 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3723 __g_list_free__g_object_unref0_0 (where_bindings); 3724 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3725 _tracker_sparql_context_unref0 (pattern); 3726 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3727 __g_list_free__g_object_unref0_0 (old_bindings); 3728 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3729 _g_string_free0 (pattern_sql); 3730 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3731 _tracker_sparql_context_unref0 (_result_); 3732 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3733 return NULL; 3734 #line 3730 "tracker-sparql-pattern.c" 3735 } else { 3736 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3737 __g_list_free__g_object_unref0_0 (where_bindings); 3738 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3739 _tracker_sparql_context_unref0 (pattern); 3740 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3741 __g_list_free__g_object_unref0_0 (old_bindings); 3742 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3743 _g_string_free0 (pattern_sql); 3744 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3745 _tracker_sparql_context_unref0 (_result_); 3746 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3747 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3748 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3749 g_clear_error (&_inner_error_); 3750 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3751 return NULL; 3752 #line 3748 "tracker-sparql-pattern.c" 3753 } 3754 } 3755 #line 406 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3756 if (_tmp186_) { 3757 #line 3753 "tracker-sparql-pattern.c" 3758 gchar* _tmp187_ = NULL; 3759 gchar* _tmp188_; 3760 gint _tmp189_ = 0; 3761 gboolean _tmp190_ = FALSE; 3762 gboolean _tmp191_; 3763 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3764 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_INTEGER, &_inner_error_); 3765 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3766 if (_inner_error_ != NULL) { 3767 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3768 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3769 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3770 g_propagate_error (error, _inner_error_); 3771 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3772 __g_list_free__g_object_unref0_0 (where_bindings); 3773 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3774 _tracker_sparql_context_unref0 (pattern); 3775 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3776 __g_list_free__g_object_unref0_0 (old_bindings); 3777 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3778 _g_string_free0 (pattern_sql); 3779 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3780 _tracker_sparql_context_unref0 (_result_); 3781 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3782 return NULL; 3783 #line 3779 "tracker-sparql-pattern.c" 3784 } else { 3785 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3786 __g_list_free__g_object_unref0_0 (where_bindings); 3787 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3788 _tracker_sparql_context_unref0 (pattern); 3789 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3790 __g_list_free__g_object_unref0_0 (old_bindings); 3791 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3792 _g_string_free0 (pattern_sql); 3793 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3794 _tracker_sparql_context_unref0 (_result_); 3795 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3796 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3797 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3798 g_clear_error (&_inner_error_); 3799 #line 407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3800 return NULL; 3801 #line 3797 "tracker-sparql-pattern.c" 3802 } 3803 } 3804 #line 408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3805 _tmp187_ = tracker_sparql_pattern_get_last_string (self, 0); 3806 #line 408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3807 _tmp188_ = _tmp187_; 3808 #line 408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3809 _tmp189_ = atoi (_tmp188_); 3810 #line 408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3811 limit = _tmp189_; 3812 #line 408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3813 _g_free0 (_tmp188_); 3814 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3815 _tmp190_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OFFSET, &_inner_error_); 3816 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3817 _tmp191_ = _tmp190_; 3818 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3819 if (_inner_error_ != NULL) { 3820 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3821 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3822 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3823 g_propagate_error (error, _inner_error_); 3824 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3825 __g_list_free__g_object_unref0_0 (where_bindings); 3826 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3827 _tracker_sparql_context_unref0 (pattern); 3828 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3829 __g_list_free__g_object_unref0_0 (old_bindings); 3830 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3831 _g_string_free0 (pattern_sql); 3832 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3833 _tracker_sparql_context_unref0 (_result_); 3834 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3835 return NULL; 3836 #line 3832 "tracker-sparql-pattern.c" 3837 } else { 3838 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3839 __g_list_free__g_object_unref0_0 (where_bindings); 3840 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3841 _tracker_sparql_context_unref0 (pattern); 3842 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3843 __g_list_free__g_object_unref0_0 (old_bindings); 3844 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3845 _g_string_free0 (pattern_sql); 3846 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3847 _tracker_sparql_context_unref0 (_result_); 3848 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3849 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3850 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3851 g_clear_error (&_inner_error_); 3852 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3853 return NULL; 3854 #line 3850 "tracker-sparql-pattern.c" 3855 } 3856 } 3857 #line 409 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3858 if (_tmp191_) { 3859 #line 3855 "tracker-sparql-pattern.c" 3860 gchar* _tmp192_ = NULL; 3861 gchar* _tmp193_; 3862 gint _tmp194_ = 0; 3863 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3864 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_INTEGER, &_inner_error_); 3865 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3866 if (_inner_error_ != NULL) { 3867 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3868 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3869 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3870 g_propagate_error (error, _inner_error_); 3871 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3872 __g_list_free__g_object_unref0_0 (where_bindings); 3873 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3874 _tracker_sparql_context_unref0 (pattern); 3875 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3876 __g_list_free__g_object_unref0_0 (old_bindings); 3877 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3878 _g_string_free0 (pattern_sql); 3879 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3880 _tracker_sparql_context_unref0 (_result_); 3881 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3882 return NULL; 3883 #line 3879 "tracker-sparql-pattern.c" 3884 } else { 3885 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3886 __g_list_free__g_object_unref0_0 (where_bindings); 3887 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3888 _tracker_sparql_context_unref0 (pattern); 3889 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3890 __g_list_free__g_object_unref0_0 (old_bindings); 3891 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3892 _g_string_free0 (pattern_sql); 3893 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3894 _tracker_sparql_context_unref0 (_result_); 3895 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3896 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3897 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3898 g_clear_error (&_inner_error_); 3899 #line 410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3900 return NULL; 3901 #line 3897 "tracker-sparql-pattern.c" 3902 } 3903 } 3904 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3905 _tmp192_ = tracker_sparql_pattern_get_last_string (self, 0); 3906 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3907 _tmp193_ = _tmp192_; 3908 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3909 _tmp194_ = atoi (_tmp193_); 3910 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3911 offset = _tmp194_; 3912 #line 411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3913 _g_free0 (_tmp193_); 3914 #line 3910 "tracker-sparql-pattern.c" 3915 } 3916 } else { 3917 gboolean _tmp195_ = FALSE; 3918 gboolean _tmp196_; 3919 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3920 _tmp195_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OFFSET, &_inner_error_); 3921 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3922 _tmp196_ = _tmp195_; 3923 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3924 if (_inner_error_ != NULL) { 3925 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3926 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3927 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3928 g_propagate_error (error, _inner_error_); 3929 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3930 __g_list_free__g_object_unref0_0 (where_bindings); 3931 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3932 _tracker_sparql_context_unref0 (pattern); 3933 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3934 __g_list_free__g_object_unref0_0 (old_bindings); 3935 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3936 _g_string_free0 (pattern_sql); 3937 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3938 _tracker_sparql_context_unref0 (_result_); 3939 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3940 return NULL; 3941 #line 3937 "tracker-sparql-pattern.c" 3942 } else { 3943 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3944 __g_list_free__g_object_unref0_0 (where_bindings); 3945 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3946 _tracker_sparql_context_unref0 (pattern); 3947 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3948 __g_list_free__g_object_unref0_0 (old_bindings); 3949 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3950 _g_string_free0 (pattern_sql); 3951 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3952 _tracker_sparql_context_unref0 (_result_); 3953 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3954 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 3955 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3956 g_clear_error (&_inner_error_); 3957 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3958 return NULL; 3959 #line 3955 "tracker-sparql-pattern.c" 3960 } 3961 } 3962 #line 413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3963 if (_tmp196_) { 3964 #line 3960 "tracker-sparql-pattern.c" 3965 gchar* _tmp197_ = NULL; 3966 gchar* _tmp198_; 3967 gint _tmp199_ = 0; 3968 gboolean _tmp200_ = FALSE; 3969 gboolean _tmp201_; 3970 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3971 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_INTEGER, &_inner_error_); 3972 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3973 if (_inner_error_ != NULL) { 3974 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3975 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 3976 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3977 g_propagate_error (error, _inner_error_); 3978 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3979 __g_list_free__g_object_unref0_0 (where_bindings); 3980 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3981 _tracker_sparql_context_unref0 (pattern); 3982 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3983 __g_list_free__g_object_unref0_0 (old_bindings); 3984 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3985 _g_string_free0 (pattern_sql); 3986 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3987 _tracker_sparql_context_unref0 (_result_); 3988 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3989 return NULL; 3990 #line 3986 "tracker-sparql-pattern.c" 3991 } else { 3992 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3993 __g_list_free__g_object_unref0_0 (where_bindings); 3994 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3995 _tracker_sparql_context_unref0 (pattern); 3996 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3997 __g_list_free__g_object_unref0_0 (old_bindings); 3998 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 3999 _g_string_free0 (pattern_sql); 4000 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4001 _tracker_sparql_context_unref0 (_result_); 4002 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4003 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4004 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4005 g_clear_error (&_inner_error_); 4006 #line 414 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4007 return NULL; 4008 #line 4004 "tracker-sparql-pattern.c" 4009 } 4010 } 4011 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4012 _tmp197_ = tracker_sparql_pattern_get_last_string (self, 0); 4013 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4014 _tmp198_ = _tmp197_; 4015 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4016 _tmp199_ = atoi (_tmp198_); 4017 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4018 offset = _tmp199_; 4019 #line 415 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4020 _g_free0 (_tmp198_); 4021 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4022 _tmp200_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_LIMIT, &_inner_error_); 4023 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4024 _tmp201_ = _tmp200_; 4025 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4026 if (_inner_error_ != NULL) { 4027 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4028 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4029 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4030 g_propagate_error (error, _inner_error_); 4031 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4032 __g_list_free__g_object_unref0_0 (where_bindings); 4033 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4034 _tracker_sparql_context_unref0 (pattern); 4035 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4036 __g_list_free__g_object_unref0_0 (old_bindings); 4037 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4038 _g_string_free0 (pattern_sql); 4039 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4040 _tracker_sparql_context_unref0 (_result_); 4041 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4042 return NULL; 4043 #line 4039 "tracker-sparql-pattern.c" 4044 } else { 4045 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4046 __g_list_free__g_object_unref0_0 (where_bindings); 4047 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4048 _tracker_sparql_context_unref0 (pattern); 4049 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4050 __g_list_free__g_object_unref0_0 (old_bindings); 4051 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4052 _g_string_free0 (pattern_sql); 4053 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4054 _tracker_sparql_context_unref0 (_result_); 4055 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4056 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4057 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4058 g_clear_error (&_inner_error_); 4059 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4060 return NULL; 4061 #line 4057 "tracker-sparql-pattern.c" 4062 } 4063 } 4064 #line 416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4065 if (_tmp201_) { 4066 #line 4062 "tracker-sparql-pattern.c" 4067 gchar* _tmp202_ = NULL; 4068 gchar* _tmp203_; 4069 gint _tmp204_ = 0; 4070 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4071 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_INTEGER, &_inner_error_); 4072 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4073 if (_inner_error_ != NULL) { 4074 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4075 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4076 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4077 g_propagate_error (error, _inner_error_); 4078 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4079 __g_list_free__g_object_unref0_0 (where_bindings); 4080 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4081 _tracker_sparql_context_unref0 (pattern); 4082 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4083 __g_list_free__g_object_unref0_0 (old_bindings); 4084 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4085 _g_string_free0 (pattern_sql); 4086 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4087 _tracker_sparql_context_unref0 (_result_); 4088 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4089 return NULL; 4090 #line 4086 "tracker-sparql-pattern.c" 4091 } else { 4092 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4093 __g_list_free__g_object_unref0_0 (where_bindings); 4094 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4095 _tracker_sparql_context_unref0 (pattern); 4096 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4097 __g_list_free__g_object_unref0_0 (old_bindings); 4098 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4099 _g_string_free0 (pattern_sql); 4100 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4101 _tracker_sparql_context_unref0 (_result_); 4102 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4103 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4104 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4105 g_clear_error (&_inner_error_); 4106 #line 417 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4107 return NULL; 4108 #line 4104 "tracker-sparql-pattern.c" 4109 } 4110 } 4111 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4112 _tmp202_ = tracker_sparql_pattern_get_last_string (self, 0); 4113 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4114 _tmp203_ = _tmp202_; 4115 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4116 _tmp204_ = atoi (_tmp203_); 4117 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4118 limit = _tmp204_; 4119 #line 418 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4120 _g_free0 (_tmp203_); 4121 #line 4117 "tracker-sparql-pattern.c" 4122 } 4123 } 4124 } 4125 #line 423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4126 _tmp205_ = limit; 4127 #line 423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4128 if (_tmp205_ >= 0) { 4129 #line 4125 "tracker-sparql-pattern.c" 4130 GString* _tmp206_; 4131 TrackerSparqlLiteralBinding* _tmp207_; 4132 TrackerSparqlLiteralBinding* binding; 4133 TrackerSparqlLiteralBinding* _tmp208_; 4134 gint _tmp209_; 4135 gchar* _tmp210_ = NULL; 4136 TrackerSparqlLiteralBinding* _tmp211_; 4137 TrackerSparqlQuery* _tmp212_; 4138 TrackerSparqlLiteralBinding* _tmp213_; 4139 TrackerSparqlLiteralBinding* _tmp214_; 4140 gint _tmp215_; 4141 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4142 _tmp206_ = sql; 4143 #line 424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4144 g_string_append (_tmp206_, " LIMIT ?"); 4145 #line 426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4146 _tmp207_ = tracker_sparql_literal_binding_new (); 4147 #line 426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4148 binding = _tmp207_; 4149 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4150 _tmp208_ = binding; 4151 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4152 _tmp209_ = limit; 4153 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4154 _tmp210_ = g_strdup_printf ("%i", _tmp209_); 4155 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4156 _g_free0 (_tmp208_->literal); 4157 #line 427 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4158 _tmp208_->literal = _tmp210_; 4159 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4160 _tmp211_ = binding; 4161 #line 428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4162 ((TrackerSparqlDataBinding*) _tmp211_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 4163 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4164 _tmp212_ = self->priv->query; 4165 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4166 _tmp213_ = binding; 4167 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4168 _tmp214_ = _g_object_ref0 (_tmp213_); 4169 #line 429 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4170 _tmp212_->bindings = g_list_append (_tmp212_->bindings, _tmp214_); 4171 #line 431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4172 _tmp215_ = offset; 4173 #line 431 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4174 if (_tmp215_ >= 0) { 4175 #line 4171 "tracker-sparql-pattern.c" 4176 GString* _tmp216_; 4177 TrackerSparqlLiteralBinding* _tmp217_; 4178 TrackerSparqlLiteralBinding* _tmp218_; 4179 gint _tmp219_; 4180 gchar* _tmp220_ = NULL; 4181 TrackerSparqlLiteralBinding* _tmp221_; 4182 TrackerSparqlQuery* _tmp222_; 4183 TrackerSparqlLiteralBinding* _tmp223_; 4184 TrackerSparqlLiteralBinding* _tmp224_; 4185 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4186 _tmp216_ = sql; 4187 #line 432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4188 g_string_append (_tmp216_, " OFFSET ?"); 4189 #line 434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4190 _tmp217_ = tracker_sparql_literal_binding_new (); 4191 #line 434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4192 _g_object_unref0 (binding); 4193 #line 434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4194 binding = _tmp217_; 4195 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4196 _tmp218_ = binding; 4197 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4198 _tmp219_ = offset; 4199 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4200 _tmp220_ = g_strdup_printf ("%i", _tmp219_); 4201 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4202 _g_free0 (_tmp218_->literal); 4203 #line 435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4204 _tmp218_->literal = _tmp220_; 4205 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4206 _tmp221_ = binding; 4207 #line 436 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4208 ((TrackerSparqlDataBinding*) _tmp221_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 4209 #line 437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4210 _tmp222_ = self->priv->query; 4211 #line 437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4212 _tmp223_ = binding; 4213 #line 437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4214 _tmp224_ = _g_object_ref0 (_tmp223_); 4215 #line 437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4216 _tmp222_->bindings = g_list_append (_tmp222_->bindings, _tmp224_); 4217 #line 4213 "tracker-sparql-pattern.c" 4218 } 4219 #line 423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4220 _g_object_unref0 (binding); 4221 #line 4217 "tracker-sparql-pattern.c" 4222 } else { 4223 gint _tmp225_; 4224 #line 439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4225 _tmp225_ = offset; 4226 #line 439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4227 if (_tmp225_ >= 0) { 4228 #line 4224 "tracker-sparql-pattern.c" 4229 GString* _tmp226_; 4230 TrackerSparqlLiteralBinding* _tmp227_; 4231 TrackerSparqlLiteralBinding* binding; 4232 TrackerSparqlLiteralBinding* _tmp228_; 4233 gint _tmp229_; 4234 gchar* _tmp230_ = NULL; 4235 TrackerSparqlLiteralBinding* _tmp231_; 4236 TrackerSparqlQuery* _tmp232_; 4237 TrackerSparqlLiteralBinding* _tmp233_; 4238 TrackerSparqlLiteralBinding* _tmp234_; 4239 #line 440 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4240 _tmp226_ = sql; 4241 #line 440 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4242 g_string_append (_tmp226_, " LIMIT -1 OFFSET ?"); 4243 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4244 _tmp227_ = tracker_sparql_literal_binding_new (); 4245 #line 442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4246 binding = _tmp227_; 4247 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4248 _tmp228_ = binding; 4249 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4250 _tmp229_ = offset; 4251 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4252 _tmp230_ = g_strdup_printf ("%i", _tmp229_); 4253 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4254 _g_free0 (_tmp228_->literal); 4255 #line 443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4256 _tmp228_->literal = _tmp230_; 4257 #line 444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4258 _tmp231_ = binding; 4259 #line 444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4260 ((TrackerSparqlDataBinding*) _tmp231_)->data_type = TRACKER_PROPERTY_TYPE_INTEGER; 4261 #line 445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4262 _tmp232_ = self->priv->query; 4263 #line 445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4264 _tmp233_ = binding; 4265 #line 445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4266 _tmp234_ = _g_object_ref0 (_tmp233_); 4267 #line 445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4268 _tmp232_->bindings = g_list_append (_tmp232_->bindings, _tmp234_); 4269 #line 439 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4270 _g_object_unref0 (binding); 4271 #line 4267 "tracker-sparql-pattern.c" 4272 } 4273 } 4274 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4275 _tmp237_ = self->queries_fts_data; 4276 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4277 if (_tmp237_) { 4278 #line 4274 "tracker-sparql-pattern.c" 4279 GString* _tmp238_; 4280 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4281 _tmp238_ = self->match_str; 4282 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4283 _tmp236_ = _tmp238_ != NULL; 4284 #line 4280 "tracker-sparql-pattern.c" 4285 } else { 4286 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4287 _tmp236_ = FALSE; 4288 #line 4284 "tracker-sparql-pattern.c" 4289 } 4290 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4291 _tmp239_ = _tmp236_; 4292 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4293 if (_tmp239_) { 4294 #line 4290 "tracker-sparql-pattern.c" 4295 TrackerSparqlVariable* _tmp240_; 4296 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4297 _tmp240_ = self->fts_subject; 4298 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4299 _tmp235_ = _tmp240_ != NULL; 4300 #line 4296 "tracker-sparql-pattern.c" 4301 } else { 4302 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4303 _tmp235_ = FALSE; 4304 #line 4300 "tracker-sparql-pattern.c" 4305 } 4306 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4307 _tmp241_ = _tmp235_; 4308 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4309 if (_tmp241_) { 4310 #line 4306 "tracker-sparql-pattern.c" 4311 GString* _tmp242_; 4312 GString* str; 4313 gchar** _tmp243_; 4314 gint _tmp243__length1; 4315 GString* _tmp249_; 4316 GString* _tmp250_; 4317 GString* _tmp251_; 4318 const gchar* _tmp252_; 4319 GString* _tmp253_; 4320 GString* _tmp254_; 4321 const gchar* _tmp255_; 4322 gchar* _tmp256_ = NULL; 4323 gchar* _tmp257_; 4324 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4325 _tmp242_ = g_string_new ("SELECT "); 4326 #line 449 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4327 str = _tmp242_; 4328 #line 450 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4329 first = TRUE; 4330 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4331 _tmp243_ = self->fts_variables; 4332 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4333 _tmp243__length1 = self->fts_variables_length1; 4334 #line 4330 "tracker-sparql-pattern.c" 4335 { 4336 gchar** fts_var_collection = NULL; 4337 gint fts_var_collection_length1 = 0; 4338 gint _fts_var_collection_size_ = 0; 4339 gint fts_var_it = 0; 4340 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4341 fts_var_collection = _tmp243_; 4342 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4343 fts_var_collection_length1 = _tmp243__length1;
Value stored to 'fts_var_collection_length1' is never read
(emitted by clang-analyzer)

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

4344 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4345 for (fts_var_it = 0; fts_var_it < _tmp243__length1; fts_var_it = fts_var_it + 1) { 4346 #line 4342 "tracker-sparql-pattern.c" 4347 gchar* _tmp244_; 4348 gchar* fts_var = NULL; 4349 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4350 _tmp244_ = g_strdup (fts_var_collection[fts_var_it]); 4351 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4352 fts_var = _tmp244_; 4353 #line 4349 "tracker-sparql-pattern.c" 4354 { 4355 gboolean _tmp245_; 4356 GString* _tmp247_; 4357 const gchar* _tmp248_; 4358 #line 453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4359 _tmp245_ = first; 4360 #line 453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4361 if (!_tmp245_) { 4362 #line 4358 "tracker-sparql-pattern.c" 4363 GString* _tmp246_; 4364 #line 454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4365 _tmp246_ = str; 4366 #line 454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4367 g_string_append (_tmp246_, ", "); 4368 #line 4364 "tracker-sparql-pattern.c" 4369 } else { 4370 #line 456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4371 first = FALSE; 4372 #line 4368 "tracker-sparql-pattern.c" 4373 } 4374 #line 459 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4375 _tmp247_ = str; 4376 #line 459 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4377 _tmp248_ = fts_var; 4378 #line 459 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4379 g_string_append (_tmp247_, _tmp248_); 4380 #line 452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4381 _g_free0 (fts_var); 4382 #line 4378 "tracker-sparql-pattern.c" 4383 } 4384 } 4385 } 4386 #line 462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4387 _tmp249_ = str; 4388 #line 462 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4389 g_string_append (_tmp249_, " FROM fts JOIN ("); 4390 #line 463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4391 _tmp250_ = sql; 4392 #line 463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4393 _tmp251_ = str; 4394 #line 463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4395 _tmp252_ = _tmp251_->str; 4396 #line 463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4397 g_string_prepend (_tmp250_, _tmp252_); 4398 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4399 _tmp253_ = sql; 4400 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4401 _tmp254_ = self->match_str; 4402 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4403 _tmp255_ = _tmp254_->str; 4404 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4405 _tmp256_ = g_strdup_printf (") AS ranks USING (docid) WHERE fts %s", _tmp255_); 4406 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4407 _tmp257_ = _tmp256_; 4408 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4409 g_string_append_printf (_tmp253_, "%s", _tmp257_); 4410 #line 464 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4411 _g_free0 (_tmp257_); 4412 #line 448 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4413 _g_string_free0 (str); 4414 #line 4410 "tracker-sparql-pattern.c" 4415 } 4416 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4417 _tmp258_ = tracker_sparql_pattern_get_context (self); 4418 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4419 _tmp259_ = _tmp258_; 4420 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4421 _tmp260_ = _tmp259_->parent_context; 4422 #line 467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4423 tracker_sparql_pattern_set_context (self, _tmp260_); 4424 #line 469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4425 _tmp261_ = _result_; 4426 #line 469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4427 _tmp262_ = type; 4428 #line 469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4429 _tmp261_->type = _tmp262_; 4430 #line 470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4431 _g_string_free0 (self->match_str); 4432 #line 470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4433 self->match_str = NULL; 4434 #line 471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4435 _g_object_unref0 (self->fts_subject); 4436 #line 471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4437 self->fts_subject = NULL; 4438 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4439 result = _result_; 4440 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4441 __g_list_free__g_object_unref0_0 (where_bindings); 4442 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4443 _tracker_sparql_context_unref0 (pattern); 4444 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4445 __g_list_free__g_object_unref0_0 (old_bindings); 4446 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4447 _g_string_free0 (pattern_sql); 4448 #line 473 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4449 return result; 4450 #line 4446 "tracker-sparql-pattern.c" 4451 } 4452 4453 4454 void tracker_sparql_pattern_translate_exists (TrackerSparqlPattern* self, GString* sql, GError** error) { 4455 gboolean _tmp0_ = FALSE; 4456 gboolean not; 4457 TrackerSparqlSelectContext* _result_ = NULL; 4458 TrackerSparqlQuery* _tmp1_; 4459 TrackerSparqlContext* _tmp2_; 4460 TrackerSparqlContext* _tmp3_; 4461 TrackerSparqlSelectContext* _tmp4_; 4462 TrackerSparqlSelectContext* _tmp5_; 4463 gboolean _tmp6_; 4464 GString* _tmp9_; 4465 TrackerSparqlContext* _tmp10_ = NULL; 4466 TrackerSparqlContext* pattern; 4467 TrackerSparqlContext* _tmp11_; 4468 GHashTable* _tmp12_; 4469 GList* _tmp13_ = NULL; 4470 TrackerSparqlContext* _tmp19_; 4471 TrackerSparqlContext* _tmp20_; 4472 GHashTable* _tmp21_; 4473 GList* _tmp22_ = NULL; 4474 GString* _tmp32_; 4475 TrackerSparqlContext* _tmp33_; 4476 TrackerSparqlContext* _tmp34_; 4477 TrackerSparqlContext* _tmp35_; 4478 GError * _inner_error_ = NULL; 4479 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4480 g_return_if_fail (self != NULL); 4481 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4482 g_return_if_fail (sql != NULL); 4483 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4484 _tmp0_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_NOT, &_inner_error_); 4485 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4486 not = _tmp0_; 4487 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4488 if (_inner_error_ != NULL) { 4489 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4490 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4491 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4492 g_propagate_error (error, _inner_error_); 4493 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4494 return; 4495 #line 4491 "tracker-sparql-pattern.c" 4496 } else { 4497 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4498 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4499 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4500 g_clear_error (&_inner_error_); 4501 #line 477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4502 return; 4503 #line 4499 "tracker-sparql-pattern.c" 4504 } 4505 } 4506 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4507 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_EXISTS, &_inner_error_); 4508 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4509 if (_inner_error_ != NULL) { 4510 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4511 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4512 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4513 g_propagate_error (error, _inner_error_); 4514 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4515 return; 4516 #line 4512 "tracker-sparql-pattern.c" 4517 } else { 4518 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4519 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4520 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4521 g_clear_error (&_inner_error_); 4522 #line 478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4523 return; 4524 #line 4520 "tracker-sparql-pattern.c" 4525 } 4526 } 4527 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4528 _tmp1_ = self->priv->query; 4529 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4530 _tmp2_ = tracker_sparql_pattern_get_context (self); 4531 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4532 _tmp3_ = _tmp2_; 4533 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4534 _tmp4_ = tracker_sparql_select_context_new_subquery (_tmp1_, _tmp3_); 4535 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4536 _tracker_sparql_context_unref0 (_result_); 4537 #line 481 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4538 _result_ = _tmp4_; 4539 #line 482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4540 _tmp5_ = _result_; 4541 #line 482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4542 tracker_sparql_pattern_set_context (self, (TrackerSparqlContext*) _tmp5_); 4543 #line 484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4544 _tmp6_ = not; 4545 #line 484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4546 if (_tmp6_) { 4547 #line 4543 "tracker-sparql-pattern.c" 4548 GString* _tmp7_; 4549 #line 486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4550 _tmp7_ = sql; 4551 #line 486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4552 g_string_append (_tmp7_, "NOT EXISTS ("); 4553 #line 4549 "tracker-sparql-pattern.c" 4554 } else { 4555 GString* _tmp8_; 4556 #line 489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4557 _tmp8_ = sql; 4558 #line 489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4559 g_string_append (_tmp8_, "EXISTS ("); 4560 #line 4556 "tracker-sparql-pattern.c" 4561 } 4562 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4563 _tmp9_ = sql; 4564 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4565 _tmp10_ = tracker_sparql_pattern_translate_group_graph_pattern (self, _tmp9_, &_inner_error_); 4566 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4567 pattern = _tmp10_; 4568 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4569 if (_inner_error_ != NULL) { 4570 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4571 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4572 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4573 g_propagate_error (error, _inner_error_); 4574 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4575 _tracker_sparql_context_unref0 (_result_); 4576 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4577 return; 4578 #line 4574 "tracker-sparql-pattern.c" 4579 } else { 4580 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4581 _tracker_sparql_context_unref0 (_result_); 4582 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4583 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4584 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4585 g_clear_error (&_inner_error_); 4586 #line 492 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4587 return; 4588 #line 4584 "tracker-sparql-pattern.c" 4589 } 4590 } 4591 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4592 _tmp11_ = pattern; 4593 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4594 _tmp12_ = _tmp11_->var_set; 4595 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4596 _tmp13_ = g_hash_table_get_keys (_tmp12_); 4597 #line 4593 "tracker-sparql-pattern.c" 4598 { 4599 GList* key_collection = NULL; 4600 GList* key_it = NULL; 4601 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4602 key_collection = _tmp13_; 4603 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4604 for (key_it = key_collection; key_it != NULL; key_it = key_it->next) { 4605 #line 4601 "tracker-sparql-pattern.c" 4606 TrackerSparqlVariable* key = NULL; 4607 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4608 key = (TrackerSparqlVariable*) key_it->data; 4609 #line 4605 "tracker-sparql-pattern.c" 4610 { 4611 TrackerSparqlContext* _tmp14_; 4612 TrackerSparqlContext* _tmp15_; 4613 GHashTable* _tmp16_; 4614 TrackerSparqlVariable* _tmp17_; 4615 TrackerSparqlVariable* _tmp18_; 4616 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4617 _tmp14_ = tracker_sparql_pattern_get_context (self); 4618 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4619 _tmp15_ = _tmp14_; 4620 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4621 _tmp16_ = _tmp15_->var_set; 4622 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4623 _tmp17_ = key; 4624 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4625 _tmp18_ = _g_object_ref0 (_tmp17_); 4626 #line 494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4627 g_hash_table_insert (_tmp16_, _tmp18_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 4628 #line 4624 "tracker-sparql-pattern.c" 4629 } 4630 } 4631 #line 493 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4632 _g_list_free0 (key_collection); 4633 #line 4629 "tracker-sparql-pattern.c" 4634 } 4635 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4636 _tmp19_ = tracker_sparql_pattern_get_context (self); 4637 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4638 _tmp20_ = _tmp19_; 4639 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4640 _tmp21_ = _tmp20_->var_set; 4641 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4642 _tmp22_ = g_hash_table_get_keys (_tmp21_); 4643 #line 4639 "tracker-sparql-pattern.c" 4644 { 4645 GList* variable_collection = NULL; 4646 GList* variable_it = NULL; 4647 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4648 variable_collection = _tmp22_; 4649 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4650 for (variable_it = variable_collection; variable_it != NULL; variable_it = variable_it->next) { 4651 #line 4647 "tracker-sparql-pattern.c" 4652 TrackerSparqlVariable* variable = NULL; 4653 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4654 variable = (TrackerSparqlVariable*) variable_it->data; 4655 #line 4651 "tracker-sparql-pattern.c" 4656 { 4657 TrackerSparqlVariable* _tmp23_; 4658 TrackerSparqlVariableBinding* _tmp24_; 4659 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4660 _tmp23_ = variable; 4661 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4662 _tmp24_ = _tmp23_->binding; 4663 #line 499 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4664 if (_tmp24_ == NULL) { 4665 #line 4661 "tracker-sparql-pattern.c" 4666 TrackerSparqlVariable* _tmp25_; 4667 const gchar* _tmp26_; 4668 const gchar* _tmp27_; 4669 gchar* _tmp28_ = NULL; 4670 gchar* _tmp29_; 4671 GError* _tmp30_ = NULL; 4672 GError* _tmp31_; 4673 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4674 _tmp25_ = variable; 4675 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4676 _tmp26_ = tracker_sparql_variable_get_name (_tmp25_); 4677 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4678 _tmp27_ = _tmp26_; 4679 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4680 _tmp28_ = g_strdup_printf ("use of undefined variable `%s'", _tmp27_); 4681 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4682 _tmp29_ = _tmp28_; 4683 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4684 _tmp30_ = tracker_sparql_pattern_get_error (self, _tmp29_); 4685 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4686 _tmp31_ = _tmp30_; 4687 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4688 _g_free0 (_tmp29_); 4689 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4690 _inner_error_ = _tmp31_; 4691 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4692 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4693 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4694 g_propagate_error (error, _inner_error_); 4695 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4696 _g_list_free0 (variable_collection); 4697 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4698 _tracker_sparql_context_unref0 (pattern); 4699 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4700 _tracker_sparql_context_unref0 (_result_); 4701 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4702 return; 4703 #line 4699 "tracker-sparql-pattern.c" 4704 } else { 4705 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4706 _g_list_free0 (variable_collection); 4707 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4708 _tracker_sparql_context_unref0 (pattern); 4709 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4710 _tracker_sparql_context_unref0 (_result_); 4711 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4712 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4713 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4714 g_clear_error (&_inner_error_); 4715 #line 500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4716 return; 4717 #line 4713 "tracker-sparql-pattern.c" 4718 } 4719 } 4720 } 4721 } 4722 #line 498 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4723 _g_list_free0 (variable_collection); 4724 #line 4720 "tracker-sparql-pattern.c" 4725 } 4726 #line 504 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4727 _tmp32_ = sql; 4728 #line 504 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4729 g_string_append (_tmp32_, ")"); 4730 #line 506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4731 _tmp33_ = tracker_sparql_pattern_get_context (self); 4732 #line 506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4733 _tmp34_ = _tmp33_; 4734 #line 506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4735 _tmp35_ = _tmp34_->parent_context; 4736 #line 506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4737 tracker_sparql_pattern_set_context (self, _tmp35_); 4738 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4739 _tracker_sparql_context_unref0 (pattern); 4740 #line 476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4741 _tracker_sparql_context_unref0 (_result_); 4742 #line 4738 "tracker-sparql-pattern.c" 4743 } 4744 4745 4746 static glong string_strnlen (gchar* str, glong maxlen) { 4747 glong result = 0L; 4748 gchar* _tmp0_; 4749 glong _tmp1_; 4750 gchar* _tmp2_ = NULL; 4751 gchar* end; 4752 gchar* _tmp3_; 4753 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4754 _tmp0_ = str; 4755 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4756 _tmp1_ = maxlen; 4757 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4758 _tmp2_ = memchr (_tmp0_, 0, (gsize) _tmp1_); 4759 #line 1147 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4760 end = _tmp2_; 4761 #line 1148 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4762 _tmp3_ = end; 4763 #line 1148 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4764 if (_tmp3_ == NULL) { 4765 #line 4761 "tracker-sparql-pattern.c" 4766 glong _tmp4_; 4767 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4768 _tmp4_ = maxlen; 4769 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4770 result = _tmp4_; 4771 #line 1149 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4772 return result; 4773 #line 4769 "tracker-sparql-pattern.c" 4774 } else { 4775 gchar* _tmp5_; 4776 gchar* _tmp6_; 4777 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4778 _tmp5_ = end; 4779 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4780 _tmp6_ = str; 4781 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4782 result = (glong) (_tmp5_ - _tmp6_); 4783 #line 1151 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4784 return result; 4785 #line 4781 "tracker-sparql-pattern.c" 4786 } 4787 } 4788 4789 4790 static gchar* string_substring (const gchar* self, glong offset, glong len) { 4791 gchar* result = NULL; 4792 glong string_length = 0L; 4793 gboolean _tmp0_ = FALSE; 4794 glong _tmp1_; 4795 gboolean _tmp3_; 4796 glong _tmp9_; 4797 glong _tmp15_; 4798 glong _tmp18_; 4799 glong _tmp19_; 4800 glong _tmp20_; 4801 glong _tmp21_; 4802 glong _tmp22_; 4803 gchar* _tmp23_ = NULL; 4804 #line 1158 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4805 g_return_val_if_fail (self != NULL, NULL); 4806 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4807 _tmp1_ = offset; 4808 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4809 if (_tmp1_ >= ((glong) 0)) { 4810 #line 4806 "tracker-sparql-pattern.c" 4811 glong _tmp2_; 4812 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4813 _tmp2_ = len; 4814 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4815 _tmp0_ = _tmp2_ >= ((glong) 0); 4816 #line 4812 "tracker-sparql-pattern.c" 4817 } else { 4818 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4819 _tmp0_ = FALSE; 4820 #line 4816 "tracker-sparql-pattern.c" 4821 } 4822 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4823 _tmp3_ = _tmp0_; 4824 #line 1160 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4825 if (_tmp3_) { 4826 #line 4822 "tracker-sparql-pattern.c" 4827 glong _tmp4_; 4828 glong _tmp5_; 4829 glong _tmp6_ = 0L; 4830 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4831 _tmp4_ = offset; 4832 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4833 _tmp5_ = len; 4834 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4835 _tmp6_ = string_strnlen ((gchar*) self, _tmp4_ + _tmp5_); 4836 #line 1162 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4837 string_length = _tmp6_; 4838 #line 4834 "tracker-sparql-pattern.c" 4839 } else { 4840 gint _tmp7_; 4841 gint _tmp8_; 4842 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4843 _tmp7_ = strlen (self); 4844 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4845 _tmp8_ = _tmp7_; 4846 #line 1164 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4847 string_length = (glong) _tmp8_; 4848 #line 4844 "tracker-sparql-pattern.c" 4849 } 4850 #line 1167 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4851 _tmp9_ = offset; 4852 #line 1167 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4853 if (_tmp9_ < ((glong) 0)) { 4854 #line 4850 "tracker-sparql-pattern.c" 4855 glong _tmp10_; 4856 glong _tmp11_; 4857 glong _tmp12_; 4858 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4859 _tmp10_ = string_length; 4860 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4861 _tmp11_ = offset; 4862 #line 1168 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4863 offset = _tmp10_ + _tmp11_; 4864 #line 1169 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4865 _tmp12_ = offset; 4866 #line 1169 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4867 g_return_val_if_fail (_tmp12_ >= ((glong) 0), NULL); 4868 #line 4864 "tracker-sparql-pattern.c" 4869 } else { 4870 glong _tmp13_; 4871 glong _tmp14_; 4872 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4873 _tmp13_ = offset; 4874 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4875 _tmp14_ = string_length; 4876 #line 1171 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4877 g_return_val_if_fail (_tmp13_ <= _tmp14_, NULL); 4878 #line 4874 "tracker-sparql-pattern.c" 4879 } 4880 #line 1173 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4881 _tmp15_ = len; 4882 #line 1173 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4883 if (_tmp15_ < ((glong) 0)) { 4884 #line 4880 "tracker-sparql-pattern.c" 4885 glong _tmp16_; 4886 glong _tmp17_; 4887 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4888 _tmp16_ = string_length; 4889 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4890 _tmp17_ = offset; 4891 #line 1174 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4892 len = _tmp16_ - _tmp17_; 4893 #line 4889 "tracker-sparql-pattern.c" 4894 } 4895 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4896 _tmp18_ = offset; 4897 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4898 _tmp19_ = len; 4899 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4900 _tmp20_ = string_length; 4901 #line 1176 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4902 g_return_val_if_fail ((_tmp18_ + _tmp19_) <= _tmp20_, NULL); 4903 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4904 _tmp21_ = offset; 4905 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4906 _tmp22_ = len; 4907 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4908 _tmp23_ = g_strndup (((gchar*) self) + _tmp21_, (gsize) _tmp22_); 4909 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4910 result = _tmp23_; 4911 #line 1177 "/usr/share/vala-0.18/vapi/glib-2.0.vapi" 4912 return result; 4913 #line 4909 "tracker-sparql-pattern.c" 4914 } 4915 4916 4917 gchar* tracker_sparql_pattern_parse_var_or_term (TrackerSparqlPattern* self, GString* sql, gboolean* is_var, GError** error) { 4918 gboolean _vala_is_var = FALSE; 4919 gchar* result = NULL; 4920 gchar* _tmp0_; 4921 gchar* _result_; 4922 TrackerSparqlTokenType _tmp1_ = 0; 4923 GError * _inner_error_ = NULL; 4924 #line 509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4925 g_return_val_if_fail (self != NULL, NULL); 4926 #line 510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4927 _tmp0_ = g_strdup (""); 4928 #line 510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4929 _result_ = _tmp0_; 4930 #line 511 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4931 _vala_is_var = FALSE; 4932 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4933 _tmp1_ = tracker_sparql_pattern_current (self); 4934 #line 512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4935 if (_tmp1_ == TRACKER_SPARQL_TOKEN_TYPE_VAR) { 4936 #line 4932 "tracker-sparql-pattern.c" 4937 gchar* _tmp2_ = NULL; 4938 gchar* _tmp3_; 4939 gchar* _tmp4_ = NULL; 4940 #line 513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4941 _vala_is_var = TRUE; 4942 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4943 tracker_sparql_pattern_next (self, &_inner_error_); 4944 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4945 if (_inner_error_ != NULL) { 4946 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4947 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4948 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4949 g_propagate_error (error, _inner_error_); 4950 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4951 _g_free0 (_result_); 4952 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4953 return NULL; 4954 #line 4950 "tracker-sparql-pattern.c" 4955 } else { 4956 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4957 _g_free0 (_result_); 4958 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4959 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 4960 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4961 g_clear_error (&_inner_error_); 4962 #line 514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4963 return NULL; 4964 #line 4960 "tracker-sparql-pattern.c" 4965 } 4966 } 4967 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4968 _tmp2_ = tracker_sparql_pattern_get_last_string (self, 0); 4969 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4970 _tmp3_ = _tmp2_; 4971 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4972 _tmp4_ = string_substring (_tmp3_, (glong) 1, (glong) (-1)); 4973 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4974 _g_free0 (_result_); 4975 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4976 _result_ = _tmp4_; 4977 #line 515 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4978 _g_free0 (_tmp3_); 4979 #line 4975 "tracker-sparql-pattern.c" 4980 } else { 4981 TrackerSparqlTokenType _tmp5_ = 0; 4982 #line 516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4983 _tmp5_ = tracker_sparql_pattern_current (self); 4984 #line 516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4985 if (_tmp5_ == TRACKER_SPARQL_TOKEN_TYPE_IRI_REF) { 4986 #line 4982 "tracker-sparql-pattern.c" 4987 gchar* _tmp6_ = NULL; 4988 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4989 tracker_sparql_pattern_next (self, &_inner_error_); 4990 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4991 if (_inner_error_ != NULL) { 4992 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4993 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 4994 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4995 g_propagate_error (error, _inner_error_); 4996 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4997 _g_free0 (_result_); 4998 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 4999 return NULL; 5000 #line 4996 "tracker-sparql-pattern.c" 5001 } else { 5002 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5003 _g_free0 (_result_); 5004 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5005 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5006 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5007 g_clear_error (&_inner_error_); 5008 #line 517 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5009 return NULL; 5010 #line 5006 "tracker-sparql-pattern.c" 5011 } 5012 } 5013 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5014 _tmp6_ = tracker_sparql_pattern_get_last_string (self, 1); 5015 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5016 _g_free0 (_result_); 5017 #line 518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5018 _result_ = _tmp6_; 5019 #line 5015 "tracker-sparql-pattern.c" 5020 } else { 5021 TrackerSparqlTokenType _tmp7_ = 0; 5022 #line 519 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5023 _tmp7_ = tracker_sparql_pattern_current (self); 5024 #line 519 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5025 if (_tmp7_ == TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX) { 5026 #line 5022 "tracker-sparql-pattern.c" 5027 gchar* _tmp8_ = NULL; 5028 gchar* ns; 5029 TrackerSparqlQuery* _tmp9_; 5030 const gchar* _tmp10_; 5031 gchar* _tmp11_ = NULL; 5032 gchar* _tmp12_; 5033 gchar* _tmp13_ = NULL; 5034 gchar* _tmp14_; 5035 gchar* _tmp15_ = NULL; 5036 gchar* _tmp16_; 5037 gchar* _tmp17_; 5038 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5039 tracker_sparql_pattern_next (self, &_inner_error_); 5040 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5041 if (_inner_error_ != NULL) { 5042 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5043 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5044 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5045 g_propagate_error (error, _inner_error_); 5046 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5047 _g_free0 (_result_); 5048 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5049 return NULL; 5050 #line 5046 "tracker-sparql-pattern.c" 5051 } else { 5052 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5053 _g_free0 (_result_); 5054 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5055 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5056 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5057 g_clear_error (&_inner_error_); 5058 #line 521 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5059 return NULL; 5060 #line 5056 "tracker-sparql-pattern.c" 5061 } 5062 } 5063 #line 522 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5064 _tmp8_ = tracker_sparql_pattern_get_last_string (self, 0); 5065 #line 522 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5066 ns = _tmp8_; 5067 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5068 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 5069 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5070 if (_inner_error_ != NULL) { 5071 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5072 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5073 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5074 g_propagate_error (error, _inner_error_); 5075 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5076 _g_free0 (ns); 5077 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5078 _g_free0 (_result_); 5079 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5080 return NULL; 5081 #line 5077 "tracker-sparql-pattern.c" 5082 } else { 5083 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5084 _g_free0 (ns); 5085 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5086 _g_free0 (_result_); 5087 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5088 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5089 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5090 g_clear_error (&_inner_error_); 5091 #line 523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5092 return NULL; 5093 #line 5089 "tracker-sparql-pattern.c" 5094 } 5095 } 5096 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5097 _tmp9_ = self->priv->query; 5098 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5099 _tmp10_ = ns; 5100 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5101 _tmp11_ = tracker_sparql_pattern_get_last_string (self, 0); 5102 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5103 _tmp12_ = _tmp11_; 5104 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5105 _tmp13_ = string_substring (_tmp12_, (glong) 1, (glong) (-1)); 5106 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5107 _tmp14_ = _tmp13_; 5108 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5109 _tmp15_ = tracker_sparql_query_resolve_prefixed_name (_tmp9_, _tmp10_, _tmp14_, &_inner_error_); 5110 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5111 _tmp16_ = _tmp15_; 5112 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5113 _g_free0 (_tmp14_); 5114 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5115 _g_free0 (_tmp12_); 5116 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5117 _tmp17_ = _tmp16_; 5118 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5119 if (_inner_error_ != NULL) { 5120 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5121 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5122 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5123 g_propagate_error (error, _inner_error_); 5124 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5125 _g_free0 (ns); 5126 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5127 _g_free0 (_result_); 5128 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5129 return NULL; 5130 #line 5126 "tracker-sparql-pattern.c" 5131 } else { 5132 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5133 _g_free0 (ns); 5134 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5135 _g_free0 (_result_); 5136 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5137 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5138 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5139 g_clear_error (&_inner_error_); 5140 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5141 return NULL; 5142 #line 5138 "tracker-sparql-pattern.c" 5143 } 5144 } 5145 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5146 _g_free0 (_result_); 5147 #line 524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5148 _result_ = _tmp17_; 5149 #line 519 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5150 _g_free0 (ns); 5151 #line 5147 "tracker-sparql-pattern.c" 5152 } else { 5153 TrackerSparqlTokenType _tmp18_ = 0; 5154 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5155 _tmp18_ = tracker_sparql_pattern_current (self); 5156 #line 525 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5157 if (_tmp18_ == TRACKER_SPARQL_TOKEN_TYPE_COLON) { 5158 #line 5154 "tracker-sparql-pattern.c" 5159 TrackerSparqlQuery* _tmp19_; 5160 gchar* _tmp20_ = NULL; 5161 gchar* _tmp21_; 5162 gchar* _tmp22_ = NULL; 5163 gchar* _tmp23_; 5164 gchar* _tmp24_ = NULL; 5165 gchar* _tmp25_; 5166 gchar* _tmp26_; 5167 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5168 tracker_sparql_pattern_next (self, &_inner_error_); 5169 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5170 if (_inner_error_ != NULL) { 5171 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5172 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5173 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5174 g_propagate_error (error, _inner_error_); 5175 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5176 _g_free0 (_result_); 5177 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5178 return NULL; 5179 #line 5175 "tracker-sparql-pattern.c" 5180 } else { 5181 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5182 _g_free0 (_result_); 5183 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5184 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5185 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5186 g_clear_error (&_inner_error_); 5187 #line 527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5188 return NULL; 5189 #line 5185 "tracker-sparql-pattern.c" 5190 } 5191 } 5192 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5193 _tmp19_ = self->priv->query; 5194 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5195 _tmp20_ = tracker_sparql_pattern_get_last_string (self, 0); 5196 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5197 _tmp21_ = _tmp20_; 5198 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5199 _tmp22_ = string_substring (_tmp21_, (glong) 1, (glong) (-1)); 5200 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5201 _tmp23_ = _tmp22_; 5202 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5203 _tmp24_ = tracker_sparql_query_resolve_prefixed_name (_tmp19_, "", _tmp23_, &_inner_error_); 5204 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5205 _tmp25_ = _tmp24_; 5206 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5207 _g_free0 (_tmp23_); 5208 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5209 _g_free0 (_tmp21_); 5210 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5211 _tmp26_ = _tmp25_; 5212 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5213 if (_inner_error_ != NULL) { 5214 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5215 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5216 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5217 g_propagate_error (error, _inner_error_); 5218 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5219 _g_free0 (_result_); 5220 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5221 return NULL; 5222 #line 5218 "tracker-sparql-pattern.c" 5223 } else { 5224 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5225 _g_free0 (_result_); 5226 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.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 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5229 g_clear_error (&_inner_error_); 5230 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5231 return NULL; 5232 #line 5228 "tracker-sparql-pattern.c" 5233 } 5234 } 5235 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5236 _g_free0 (_result_); 5237 #line 528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5238 _result_ = _tmp26_; 5239 #line 5235 "tracker-sparql-pattern.c" 5240 } else { 5241 gboolean _tmp27_ = FALSE; 5242 gboolean _tmp28_; 5243 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5244 _tmp27_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_BLANK_NODE, &_inner_error_); 5245 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5246 _tmp28_ = _tmp27_; 5247 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5248 if (_inner_error_ != NULL) { 5249 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5250 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5251 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5252 g_propagate_error (error, _inner_error_); 5253 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5254 _g_free0 (_result_); 5255 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5256 return NULL; 5257 #line 5253 "tracker-sparql-pattern.c" 5258 } else { 5259 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5260 _g_free0 (_result_); 5261 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5262 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5263 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5264 g_clear_error (&_inner_error_); 5265 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5266 return NULL; 5267 #line 5263 "tracker-sparql-pattern.c" 5268 } 5269 } 5270 #line 529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5271 if (_tmp28_) { 5272 #line 5268 "tracker-sparql-pattern.c" 5273 TrackerSparqlQuery* _tmp29_; 5274 gchar* _tmp30_ = NULL; 5275 gchar* _tmp31_; 5276 gchar* _tmp32_ = NULL; 5277 gchar* _tmp33_; 5278 gchar* _tmp34_ = NULL; 5279 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5280 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 5281 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5282 if (_inner_error_ != NULL) { 5283 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5284 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5285 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5286 g_propagate_error (error, _inner_error_); 5287 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5288 _g_free0 (_result_); 5289 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5290 return NULL; 5291 #line 5287 "tracker-sparql-pattern.c" 5292 } else { 5293 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5294 _g_free0 (_result_); 5295 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5296 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5297 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5298 g_clear_error (&_inner_error_); 5299 #line 531 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5300 return NULL; 5301 #line 5297 "tracker-sparql-pattern.c" 5302 } 5303 } 5304 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5305 _tmp29_ = self->priv->query; 5306 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5307 _tmp30_ = tracker_sparql_pattern_get_last_string (self, 0); 5308 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5309 _tmp31_ = _tmp30_; 5310 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5311 _tmp32_ = string_substring (_tmp31_, (glong) 1, (glong) (-1)); 5312 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5313 _tmp33_ = _tmp32_; 5314 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5315 _tmp34_ = tracker_sparql_query_generate_bnodeid (_tmp29_, _tmp33_); 5316 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5317 _g_free0 (_result_); 5318 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5319 _result_ = _tmp34_; 5320 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5321 _g_free0 (_tmp33_); 5322 #line 532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5323 _g_free0 (_tmp31_); 5324 #line 5320 "tracker-sparql-pattern.c" 5325 } else { 5326 TrackerSparqlTokenType _tmp35_ = 0; 5327 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5328 _tmp35_ = tracker_sparql_pattern_current (self); 5329 #line 533 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5330 if (_tmp35_ == TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL1) { 5331 #line 5327 "tracker-sparql-pattern.c" 5332 TrackerSparqlExpression* _tmp36_; 5333 gchar* _tmp37_ = NULL; 5334 gchar* _tmp38_; 5335 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5336 _tmp36_ = self->priv->expression; 5337 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5338 _tmp37_ = tracker_sparql_expression_parse_string_literal (_tmp36_, NULL, &_inner_error_); 5339 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5340 _tmp38_ = _tmp37_; 5341 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5342 if (_inner_error_ != NULL) { 5343 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5344 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5345 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5346 g_propagate_error (error, _inner_error_); 5347 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5348 _g_free0 (_result_); 5349 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5350 return NULL; 5351 #line 5347 "tracker-sparql-pattern.c" 5352 } else { 5353 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5354 _g_free0 (_result_); 5355 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5356 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5357 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5358 g_clear_error (&_inner_error_); 5359 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5360 return NULL; 5361 #line 5357 "tracker-sparql-pattern.c" 5362 } 5363 } 5364 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5365 _g_free0 (_result_); 5366 #line 534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5367 _result_ = _tmp38_; 5368 #line 5364 "tracker-sparql-pattern.c" 5369 } else { 5370 TrackerSparqlTokenType _tmp39_ = 0; 5371 #line 535 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5372 _tmp39_ = tracker_sparql_pattern_current (self); 5373 #line 535 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5374 if (_tmp39_ == TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL2) { 5375 #line 5371 "tracker-sparql-pattern.c" 5376 TrackerSparqlExpression* _tmp40_; 5377 gchar* _tmp41_ = NULL; 5378 gchar* _tmp42_; 5379 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5380 _tmp40_ = self->priv->expression; 5381 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5382 _tmp41_ = tracker_sparql_expression_parse_string_literal (_tmp40_, NULL, &_inner_error_); 5383 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5384 _tmp42_ = _tmp41_; 5385 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5386 if (_inner_error_ != NULL) { 5387 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5388 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5389 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5390 g_propagate_error (error, _inner_error_); 5391 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5392 _g_free0 (_result_); 5393 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5394 return NULL; 5395 #line 5391 "tracker-sparql-pattern.c" 5396 } else { 5397 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5398 _g_free0 (_result_); 5399 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5400 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5401 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5402 g_clear_error (&_inner_error_); 5403 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5404 return NULL; 5405 #line 5401 "tracker-sparql-pattern.c" 5406 } 5407 } 5408 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5409 _g_free0 (_result_); 5410 #line 536 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5411 _result_ = _tmp42_; 5412 #line 5408 "tracker-sparql-pattern.c" 5413 } else { 5414 TrackerSparqlTokenType _tmp43_ = 0; 5415 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5416 _tmp43_ = tracker_sparql_pattern_current (self); 5417 #line 537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5418 if (_tmp43_ == TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG1) { 5419 #line 5415 "tracker-sparql-pattern.c" 5420 TrackerSparqlExpression* _tmp44_; 5421 gchar* _tmp45_ = NULL; 5422 gchar* _tmp46_; 5423 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5424 _tmp44_ = self->priv->expression; 5425 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5426 _tmp45_ = tracker_sparql_expression_parse_string_literal (_tmp44_, NULL, &_inner_error_); 5427 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5428 _tmp46_ = _tmp45_; 5429 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5430 if (_inner_error_ != NULL) { 5431 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5432 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5433 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5434 g_propagate_error (error, _inner_error_); 5435 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5436 _g_free0 (_result_); 5437 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5438 return NULL; 5439 #line 5435 "tracker-sparql-pattern.c" 5440 } else { 5441 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5442 _g_free0 (_result_); 5443 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5444 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5445 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5446 g_clear_error (&_inner_error_); 5447 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5448 return NULL; 5449 #line 5445 "tracker-sparql-pattern.c" 5450 } 5451 } 5452 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5453 _g_free0 (_result_); 5454 #line 538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5455 _result_ = _tmp46_; 5456 #line 5452 "tracker-sparql-pattern.c" 5457 } else { 5458 TrackerSparqlTokenType _tmp47_ = 0; 5459 #line 539 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5460 _tmp47_ = tracker_sparql_pattern_current (self); 5461 #line 539 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5462 if (_tmp47_ == TRACKER_SPARQL_TOKEN_TYPE_STRING_LITERAL_LONG2) { 5463 #line 5459 "tracker-sparql-pattern.c" 5464 TrackerSparqlExpression* _tmp48_; 5465 gchar* _tmp49_ = NULL; 5466 gchar* _tmp50_; 5467 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5468 _tmp48_ = self->priv->expression; 5469 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5470 _tmp49_ = tracker_sparql_expression_parse_string_literal (_tmp48_, NULL, &_inner_error_); 5471 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5472 _tmp50_ = _tmp49_; 5473 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5474 if (_inner_error_ != NULL) { 5475 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5476 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5477 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5478 g_propagate_error (error, _inner_error_); 5479 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5480 _g_free0 (_result_); 5481 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5482 return NULL; 5483 #line 5479 "tracker-sparql-pattern.c" 5484 } else { 5485 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5486 _g_free0 (_result_); 5487 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5488 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5489 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5490 g_clear_error (&_inner_error_); 5491 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5492 return NULL; 5493 #line 5489 "tracker-sparql-pattern.c" 5494 } 5495 } 5496 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5497 _g_free0 (_result_); 5498 #line 540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5499 _result_ = _tmp50_; 5500 #line 5496 "tracker-sparql-pattern.c" 5501 } else { 5502 TrackerSparqlTokenType _tmp51_ = 0; 5503 #line 541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5504 _tmp51_ = tracker_sparql_pattern_current (self); 5505 #line 541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5506 if (_tmp51_ == TRACKER_SPARQL_TOKEN_TYPE_INTEGER) { 5507 #line 5503 "tracker-sparql-pattern.c" 5508 gchar* _tmp52_ = NULL; 5509 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5510 tracker_sparql_pattern_next (self, &_inner_error_); 5511 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5512 if (_inner_error_ != NULL) { 5513 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5514 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5515 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5516 g_propagate_error (error, _inner_error_); 5517 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5518 _g_free0 (_result_); 5519 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5520 return NULL; 5521 #line 5517 "tracker-sparql-pattern.c" 5522 } else { 5523 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5524 _g_free0 (_result_); 5525 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5526 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5527 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5528 g_clear_error (&_inner_error_); 5529 #line 542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5530 return NULL; 5531 #line 5527 "tracker-sparql-pattern.c" 5532 } 5533 } 5534 #line 543 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5535 _tmp52_ = tracker_sparql_pattern_get_last_string (self, 0); 5536 #line 543 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5537 _g_free0 (_result_); 5538 #line 543 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5539 _result_ = _tmp52_; 5540 #line 5536 "tracker-sparql-pattern.c" 5541 } else { 5542 TrackerSparqlTokenType _tmp53_ = 0; 5543 #line 544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5544 _tmp53_ = tracker_sparql_pattern_current (self); 5545 #line 544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5546 if (_tmp53_ == TRACKER_SPARQL_TOKEN_TYPE_DECIMAL) { 5547 #line 5543 "tracker-sparql-pattern.c" 5548 gchar* _tmp54_ = NULL; 5549 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5550 tracker_sparql_pattern_next (self, &_inner_error_); 5551 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5552 if (_inner_error_ != NULL) { 5553 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5554 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5555 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5556 g_propagate_error (error, _inner_error_); 5557 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5558 _g_free0 (_result_); 5559 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5560 return NULL; 5561 #line 5557 "tracker-sparql-pattern.c" 5562 } else { 5563 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5564 _g_free0 (_result_); 5565 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5566 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5567 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5568 g_clear_error (&_inner_error_); 5569 #line 545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5570 return NULL; 5571 #line 5567 "tracker-sparql-pattern.c" 5572 } 5573 } 5574 #line 546 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5575 _tmp54_ = tracker_sparql_pattern_get_last_string (self, 0); 5576 #line 546 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5577 _g_free0 (_result_); 5578 #line 546 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5579 _result_ = _tmp54_; 5580 #line 5576 "tracker-sparql-pattern.c" 5581 } else { 5582 TrackerSparqlTokenType _tmp55_ = 0; 5583 #line 547 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5584 _tmp55_ = tracker_sparql_pattern_current (self); 5585 #line 547 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5586 if (_tmp55_ == TRACKER_SPARQL_TOKEN_TYPE_DOUBLE) { 5587 #line 5583 "tracker-sparql-pattern.c" 5588 gchar* _tmp56_ = NULL; 5589 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5590 tracker_sparql_pattern_next (self, &_inner_error_); 5591 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5592 if (_inner_error_ != NULL) { 5593 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5594 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5595 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5596 g_propagate_error (error, _inner_error_); 5597 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5598 _g_free0 (_result_); 5599 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5600 return NULL; 5601 #line 5597 "tracker-sparql-pattern.c" 5602 } else { 5603 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5604 _g_free0 (_result_); 5605 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5606 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5607 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5608 g_clear_error (&_inner_error_); 5609 #line 548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5610 return NULL; 5611 #line 5607 "tracker-sparql-pattern.c" 5612 } 5613 } 5614 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5615 _tmp56_ = tracker_sparql_pattern_get_last_string (self, 0); 5616 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5617 _g_free0 (_result_); 5618 #line 549 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5619 _result_ = _tmp56_; 5620 #line 5616 "tracker-sparql-pattern.c" 5621 } else { 5622 TrackerSparqlTokenType _tmp57_ = 0; 5623 #line 550 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5624 _tmp57_ = tracker_sparql_pattern_current (self); 5625 #line 550 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5626 if (_tmp57_ == TRACKER_SPARQL_TOKEN_TYPE_TRUE) { 5627 #line 5623 "tracker-sparql-pattern.c" 5628 gchar* _tmp58_; 5629 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5630 tracker_sparql_pattern_next (self, &_inner_error_); 5631 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5632 if (_inner_error_ != NULL) { 5633 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5634 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5635 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5636 g_propagate_error (error, _inner_error_); 5637 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5638 _g_free0 (_result_); 5639 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5640 return NULL; 5641 #line 5637 "tracker-sparql-pattern.c" 5642 } else { 5643 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5644 _g_free0 (_result_); 5645 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5646 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5647 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5648 g_clear_error (&_inner_error_); 5649 #line 551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5650 return NULL; 5651 #line 5647 "tracker-sparql-pattern.c" 5652 } 5653 } 5654 #line 552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5655 _tmp58_ = g_strdup ("true"); 5656 #line 552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5657 _g_free0 (_result_); 5658 #line 552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5659 _result_ = _tmp58_; 5660 #line 5656 "tracker-sparql-pattern.c" 5661 } else { 5662 TrackerSparqlTokenType _tmp59_ = 0; 5663 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5664 _tmp59_ = tracker_sparql_pattern_current (self); 5665 #line 553 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5666 if (_tmp59_ == TRACKER_SPARQL_TOKEN_TYPE_FALSE) { 5667 #line 5663 "tracker-sparql-pattern.c" 5668 gchar* _tmp60_; 5669 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5670 tracker_sparql_pattern_next (self, &_inner_error_); 5671 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5672 if (_inner_error_ != NULL) { 5673 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5674 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5675 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5676 g_propagate_error (error, _inner_error_); 5677 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5678 _g_free0 (_result_); 5679 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5680 return NULL; 5681 #line 5677 "tracker-sparql-pattern.c" 5682 } else { 5683 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5684 _g_free0 (_result_); 5685 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5686 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5687 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5688 g_clear_error (&_inner_error_); 5689 #line 554 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5690 return NULL; 5691 #line 5687 "tracker-sparql-pattern.c" 5692 } 5693 } 5694 #line 555 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5695 _tmp60_ = g_strdup ("false"); 5696 #line 555 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5697 _g_free0 (_result_); 5698 #line 555 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5699 _result_ = _tmp60_; 5700 #line 5696 "tracker-sparql-pattern.c" 5701 } else { 5702 TrackerSparqlTokenType _tmp61_ = 0; 5703 #line 556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5704 _tmp61_ = tracker_sparql_pattern_current (self); 5705 #line 556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5706 if (_tmp61_ == TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACKET) { 5707 #line 5703 "tracker-sparql-pattern.c" 5708 TrackerSparqlQuery* _tmp62_; 5709 gchar* _tmp63_ = NULL; 5710 const gchar* _tmp64_; 5711 gchar* _tmp65_; 5712 gchar* old_subject; 5713 gboolean _tmp66_; 5714 gboolean old_subject_is_var; 5715 const gchar* _tmp67_; 5716 gchar* _tmp68_; 5717 GString* _tmp69_; 5718 const gchar* _tmp70_; 5719 gchar* _tmp71_; 5720 gboolean _tmp72_; 5721 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5722 tracker_sparql_pattern_next (self, &_inner_error_); 5723 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5724 if (_inner_error_ != NULL) { 5725 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5726 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5727 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5728 g_propagate_error (error, _inner_error_); 5729 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5730 _g_free0 (_result_); 5731 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5732 return NULL; 5733 #line 5729 "tracker-sparql-pattern.c" 5734 } else { 5735 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5736 _g_free0 (_result_); 5737 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5738 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5739 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5740 g_clear_error (&_inner_error_); 5741 #line 557 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5742 return NULL; 5743 #line 5739 "tracker-sparql-pattern.c" 5744 } 5745 } 5746 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5747 _tmp62_ = self->priv->query; 5748 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5749 _tmp63_ = tracker_sparql_query_generate_bnodeid (_tmp62_, NULL); 5750 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5751 _g_free0 (_result_); 5752 #line 559 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5753 _result_ = _tmp63_; 5754 #line 561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5755 _tmp64_ = self->priv->current_subject; 5756 #line 561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5757 _tmp65_ = g_strdup (_tmp64_); 5758 #line 561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5759 old_subject = _tmp65_; 5760 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5761 _tmp66_ = self->priv->current_subject_is_var; 5762 #line 562 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5763 old_subject_is_var = _tmp66_; 5764 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5765 _tmp67_ = _result_; 5766 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5767 _tmp68_ = g_strdup (_tmp67_); 5768 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5769 _g_free0 (self->priv->current_subject); 5770 #line 564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5771 self->priv->current_subject = _tmp68_; 5772 #line 565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5773 self->priv->current_subject_is_var = TRUE; 5774 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5775 _tmp69_ = sql; 5776 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5777 tracker_sparql_pattern_parse_property_list_not_empty (self, _tmp69_, FALSE, &_inner_error_); 5778 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5779 if (_inner_error_ != NULL) { 5780 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5781 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5782 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5783 g_propagate_error (error, _inner_error_); 5784 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5785 _g_free0 (old_subject); 5786 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5787 _g_free0 (_result_); 5788 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5789 return NULL; 5790 #line 5786 "tracker-sparql-pattern.c" 5791 } else { 5792 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5793 _g_free0 (old_subject); 5794 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5795 _g_free0 (_result_); 5796 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5797 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5798 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5799 g_clear_error (&_inner_error_); 5800 #line 566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5801 return NULL; 5802 #line 5798 "tracker-sparql-pattern.c" 5803 } 5804 } 5805 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5806 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACKET, &_inner_error_); 5807 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5808 if (_inner_error_ != NULL) { 5809 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5810 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5811 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5812 g_propagate_error (error, _inner_error_); 5813 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5814 _g_free0 (old_subject); 5815 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5816 _g_free0 (_result_); 5817 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5818 return NULL; 5819 #line 5815 "tracker-sparql-pattern.c" 5820 } else { 5821 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5822 _g_free0 (old_subject); 5823 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5824 _g_free0 (_result_); 5825 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5826 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5827 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5828 g_clear_error (&_inner_error_); 5829 #line 567 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5830 return NULL; 5831 #line 5827 "tracker-sparql-pattern.c" 5832 } 5833 } 5834 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5835 _tmp70_ = old_subject; 5836 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5837 _tmp71_ = g_strdup (_tmp70_); 5838 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5839 _g_free0 (self->priv->current_subject); 5840 #line 569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5841 self->priv->current_subject = _tmp71_; 5842 #line 570 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5843 _tmp72_ = old_subject_is_var; 5844 #line 570 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5845 self->priv->current_subject_is_var = _tmp72_; 5846 #line 572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5847 _vala_is_var = TRUE; 5848 #line 556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5849 _g_free0 (old_subject); 5850 #line 5846 "tracker-sparql-pattern.c" 5851 } else { 5852 GError* _tmp73_ = NULL; 5853 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5854 _tmp73_ = tracker_sparql_pattern_get_error (self, "expected variable or term"); 5855 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5856 _inner_error_ = _tmp73_; 5857 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5858 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5859 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5860 g_propagate_error (error, _inner_error_); 5861 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5862 _g_free0 (_result_); 5863 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5864 return NULL; 5865 #line 5861 "tracker-sparql-pattern.c" 5866 } else { 5867 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5868 _g_free0 (_result_); 5869 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5870 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5871 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5872 g_clear_error (&_inner_error_); 5873 #line 574 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5874 return NULL; 5875 #line 5871 "tracker-sparql-pattern.c" 5876 } 5877 } 5878 } 5879 } 5880 } 5881 } 5882 } 5883 } 5884 } 5885 } 5886 } 5887 } 5888 } 5889 } 5890 } 5891 } 5892 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5893 result = _result_; 5894 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5895 if (is_var) { 5896 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5897 *is_var = _vala_is_var; 5898 #line 5894 "tracker-sparql-pattern.c" 5899 } 5900 #line 576 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5901 return result; 5902 #line 5898 "tracker-sparql-pattern.c" 5903 } 5904 5905 5906 static void tracker_sparql_pattern_parse_object_list (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error) { 5907 GError * _inner_error_ = NULL; 5908 #line 579 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5909 g_return_if_fail (self != NULL); 5910 #line 579 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5911 g_return_if_fail (sql != NULL); 5912 #line 580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5913 while (TRUE) { 5914 #line 5910 "tracker-sparql-pattern.c" 5915 GString* _tmp0_; 5916 gboolean _tmp1_; 5917 gboolean _tmp2_ = FALSE; 5918 gboolean _tmp3_; 5919 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5920 _tmp0_ = sql; 5921 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5922 _tmp1_ = in_simple_optional; 5923 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5924 tracker_sparql_pattern_parse_object (self, _tmp0_, _tmp1_, &_inner_error_); 5925 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5926 if (_inner_error_ != NULL) { 5927 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5928 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5929 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5930 g_propagate_error (error, _inner_error_); 5931 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5932 return; 5933 #line 5929 "tracker-sparql-pattern.c" 5934 } else { 5935 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5936 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5937 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5938 g_clear_error (&_inner_error_); 5939 #line 581 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5940 return; 5941 #line 5937 "tracker-sparql-pattern.c" 5942 } 5943 } 5944 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5945 _tmp2_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COMMA, &_inner_error_); 5946 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5947 _tmp3_ = _tmp2_; 5948 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5949 if (_inner_error_ != NULL) { 5950 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5951 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 5952 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5953 g_propagate_error (error, _inner_error_); 5954 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5955 return; 5956 #line 5952 "tracker-sparql-pattern.c" 5957 } else { 5958 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5959 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 5960 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5961 g_clear_error (&_inner_error_); 5962 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5963 return; 5964 #line 5960 "tracker-sparql-pattern.c" 5965 } 5966 } 5967 #line 582 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5968 if (_tmp3_) { 5969 #line 583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5970 continue; 5971 #line 5967 "tracker-sparql-pattern.c" 5972 } 5973 #line 585 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5974 break; 5975 #line 5971 "tracker-sparql-pattern.c" 5976 } 5977 } 5978 5979 5980 static void tracker_sparql_pattern_parse_property_list_not_empty (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error) { 5981 GError * _inner_error_ = NULL; 5982 #line 589 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5983 g_return_if_fail (self != NULL); 5984 #line 589 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5985 g_return_if_fail (sql != NULL); 5986 #line 590 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 5987 while (TRUE) { 5988 #line 5984 "tracker-sparql-pattern.c" 5989 const gchar* _tmp0_; 5990 gchar* _tmp1_; 5991 gchar* old_predicate; 5992 gboolean _tmp2_; 5993 gboolean old_predicate_is_var; 5994 TrackerSparqlTokenType _tmp3_ = 0; 5995 GString* _tmp32_; 5996 gboolean _tmp33_; 5997 const gchar* _tmp34_; 5998 gchar* _tmp35_; 5999 gboolean _tmp36_; 6000 gboolean _tmp37_ = FALSE; 6001 gboolean _tmp38_; 6002 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6003 _tmp0_ = self->priv->current_predicate; 6004 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6005 _tmp1_ = g_strdup (_tmp0_); 6006 #line 591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6007 old_predicate = _tmp1_; 6008 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6009 _tmp2_ = self->priv->current_predicate_is_var; 6010 #line 592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6011 old_predicate_is_var = _tmp2_; 6012 #line 594 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6013 _g_free0 (self->priv->current_predicate); 6014 #line 594 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6015 self->priv->current_predicate = NULL; 6016 #line 595 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6017 self->priv->current_predicate_is_var = FALSE; 6018 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6019 _tmp3_ = tracker_sparql_pattern_current (self); 6020 #line 596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6021 if (_tmp3_ == TRACKER_SPARQL_TOKEN_TYPE_VAR) { 6022 #line 6018 "tracker-sparql-pattern.c" 6023 gchar* _tmp4_ = NULL; 6024 gchar* _tmp5_; 6025 gchar* _tmp6_ = NULL; 6026 #line 597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6027 self->priv->current_predicate_is_var = TRUE; 6028 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6029 tracker_sparql_pattern_next (self, &_inner_error_); 6030 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6031 if (_inner_error_ != NULL) { 6032 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6033 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6034 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6035 g_propagate_error (error, _inner_error_); 6036 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6037 _g_free0 (old_predicate); 6038 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6039 return; 6040 #line 6036 "tracker-sparql-pattern.c" 6041 } else { 6042 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6043 _g_free0 (old_predicate); 6044 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6045 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6046 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6047 g_clear_error (&_inner_error_); 6048 #line 598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6049 return; 6050 #line 6046 "tracker-sparql-pattern.c" 6051 } 6052 } 6053 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6054 _tmp4_ = tracker_sparql_pattern_get_last_string (self, 0); 6055 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6056 _tmp5_ = _tmp4_; 6057 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6058 _tmp6_ = string_substring (_tmp5_, (glong) 1, (glong) (-1)); 6059 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6060 _g_free0 (self->priv->current_predicate); 6061 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6062 self->priv->current_predicate = _tmp6_; 6063 #line 599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6064 _g_free0 (_tmp5_); 6065 #line 6061 "tracker-sparql-pattern.c" 6066 } else { 6067 TrackerSparqlTokenType _tmp7_ = 0; 6068 #line 600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6069 _tmp7_ = tracker_sparql_pattern_current (self); 6070 #line 600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6071 if (_tmp7_ == TRACKER_SPARQL_TOKEN_TYPE_IRI_REF) { 6072 #line 6068 "tracker-sparql-pattern.c" 6073 gchar* _tmp8_ = NULL; 6074 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6075 tracker_sparql_pattern_next (self, &_inner_error_); 6076 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6077 if (_inner_error_ != NULL) { 6078 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6079 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6080 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6081 g_propagate_error (error, _inner_error_); 6082 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6083 _g_free0 (old_predicate); 6084 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6085 return; 6086 #line 6082 "tracker-sparql-pattern.c" 6087 } else { 6088 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6089 _g_free0 (old_predicate); 6090 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6091 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6092 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6093 g_clear_error (&_inner_error_); 6094 #line 601 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6095 return; 6096 #line 6092 "tracker-sparql-pattern.c" 6097 } 6098 } 6099 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6100 _tmp8_ = tracker_sparql_pattern_get_last_string (self, 1); 6101 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6102 _g_free0 (self->priv->current_predicate); 6103 #line 602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6104 self->priv->current_predicate = _tmp8_; 6105 #line 6101 "tracker-sparql-pattern.c" 6106 } else { 6107 TrackerSparqlTokenType _tmp9_ = 0; 6108 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6109 _tmp9_ = tracker_sparql_pattern_current (self); 6110 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6111 if (_tmp9_ == TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX) { 6112 #line 6108 "tracker-sparql-pattern.c" 6113 gchar* _tmp10_ = NULL; 6114 gchar* ns; 6115 TrackerSparqlQuery* _tmp11_; 6116 const gchar* _tmp12_; 6117 gchar* _tmp13_ = NULL; 6118 gchar* _tmp14_; 6119 gchar* _tmp15_ = NULL; 6120 gchar* _tmp16_; 6121 gchar* _tmp17_ = NULL; 6122 gchar* _tmp18_; 6123 gchar* _tmp19_; 6124 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6125 tracker_sparql_pattern_next (self, &_inner_error_); 6126 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6127 if (_inner_error_ != NULL) { 6128 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6129 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6130 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6131 g_propagate_error (error, _inner_error_); 6132 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6133 _g_free0 (old_predicate); 6134 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6135 return; 6136 #line 6132 "tracker-sparql-pattern.c" 6137 } else { 6138 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6139 _g_free0 (old_predicate); 6140 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6141 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6142 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6143 g_clear_error (&_inner_error_); 6144 #line 604 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6145 return; 6146 #line 6142 "tracker-sparql-pattern.c" 6147 } 6148 } 6149 #line 605 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6150 _tmp10_ = tracker_sparql_pattern_get_last_string (self, 0); 6151 #line 605 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6152 ns = _tmp10_; 6153 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6154 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 6155 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6156 if (_inner_error_ != NULL) { 6157 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6158 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6159 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6160 g_propagate_error (error, _inner_error_); 6161 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6162 _g_free0 (ns); 6163 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6164 _g_free0 (old_predicate); 6165 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6166 return; 6167 #line 6163 "tracker-sparql-pattern.c" 6168 } else { 6169 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6170 _g_free0 (ns); 6171 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6172 _g_free0 (old_predicate); 6173 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6174 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6175 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6176 g_clear_error (&_inner_error_); 6177 #line 606 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6178 return; 6179 #line 6175 "tracker-sparql-pattern.c" 6180 } 6181 } 6182 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6183 _tmp11_ = self->priv->query; 6184 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6185 _tmp12_ = ns; 6186 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6187 _tmp13_ = tracker_sparql_pattern_get_last_string (self, 0); 6188 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6189 _tmp14_ = _tmp13_; 6190 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6191 _tmp15_ = string_substring (_tmp14_, (glong) 1, (glong) (-1)); 6192 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6193 _tmp16_ = _tmp15_; 6194 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6195 _tmp17_ = tracker_sparql_query_resolve_prefixed_name (_tmp11_, _tmp12_, _tmp16_, &_inner_error_); 6196 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6197 _tmp18_ = _tmp17_; 6198 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6199 _g_free0 (_tmp16_); 6200 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6201 _g_free0 (_tmp14_); 6202 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6203 _tmp19_ = _tmp18_; 6204 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6205 if (_inner_error_ != NULL) { 6206 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6207 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6208 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6209 g_propagate_error (error, _inner_error_); 6210 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6211 _g_free0 (ns); 6212 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6213 _g_free0 (old_predicate); 6214 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6215 return; 6216 #line 6212 "tracker-sparql-pattern.c" 6217 } else { 6218 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6219 _g_free0 (ns); 6220 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6221 _g_free0 (old_predicate); 6222 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6223 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6224 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6225 g_clear_error (&_inner_error_); 6226 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6227 return; 6228 #line 6224 "tracker-sparql-pattern.c" 6229 } 6230 } 6231 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6232 _g_free0 (self->priv->current_predicate); 6233 #line 607 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6234 self->priv->current_predicate = _tmp19_; 6235 #line 603 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6236 _g_free0 (ns); 6237 #line 6233 "tracker-sparql-pattern.c" 6238 } else { 6239 TrackerSparqlTokenType _tmp20_ = 0; 6240 #line 608 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6241 _tmp20_ = tracker_sparql_pattern_current (self); 6242 #line 608 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6243 if (_tmp20_ == TRACKER_SPARQL_TOKEN_TYPE_COLON) { 6244 #line 6240 "tracker-sparql-pattern.c" 6245 TrackerSparqlQuery* _tmp21_; 6246 gchar* _tmp22_ = NULL; 6247 gchar* _tmp23_; 6248 gchar* _tmp24_ = NULL; 6249 gchar* _tmp25_; 6250 gchar* _tmp26_ = NULL; 6251 gchar* _tmp27_; 6252 gchar* _tmp28_; 6253 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6254 tracker_sparql_pattern_next (self, &_inner_error_); 6255 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6256 if (_inner_error_ != NULL) { 6257 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6258 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6259 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6260 g_propagate_error (error, _inner_error_); 6261 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6262 _g_free0 (old_predicate); 6263 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6264 return; 6265 #line 6261 "tracker-sparql-pattern.c" 6266 } else { 6267 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6268 _g_free0 (old_predicate); 6269 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6270 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6271 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6272 g_clear_error (&_inner_error_); 6273 #line 609 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6274 return; 6275 #line 6271 "tracker-sparql-pattern.c" 6276 } 6277 } 6278 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6279 _tmp21_ = self->priv->query; 6280 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6281 _tmp22_ = tracker_sparql_pattern_get_last_string (self, 0); 6282 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6283 _tmp23_ = _tmp22_; 6284 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6285 _tmp24_ = string_substring (_tmp23_, (glong) 1, (glong) (-1)); 6286 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6287 _tmp25_ = _tmp24_; 6288 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6289 _tmp26_ = tracker_sparql_query_resolve_prefixed_name (_tmp21_, "", _tmp25_, &_inner_error_); 6290 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6291 _tmp27_ = _tmp26_; 6292 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6293 _g_free0 (_tmp25_); 6294 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6295 _g_free0 (_tmp23_); 6296 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6297 _tmp28_ = _tmp27_; 6298 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6299 if (_inner_error_ != NULL) { 6300 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6301 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6302 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6303 g_propagate_error (error, _inner_error_); 6304 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6305 _g_free0 (old_predicate); 6306 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6307 return; 6308 #line 6304 "tracker-sparql-pattern.c" 6309 } else { 6310 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6311 _g_free0 (old_predicate); 6312 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6313 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6314 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6315 g_clear_error (&_inner_error_); 6316 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6317 return; 6318 #line 6314 "tracker-sparql-pattern.c" 6319 } 6320 } 6321 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6322 _g_free0 (self->priv->current_predicate); 6323 #line 610 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6324 self->priv->current_predicate = _tmp28_; 6325 #line 6321 "tracker-sparql-pattern.c" 6326 } else { 6327 TrackerSparqlTokenType _tmp29_ = 0; 6328 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6329 _tmp29_ = tracker_sparql_pattern_current (self); 6330 #line 611 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6331 if (_tmp29_ == TRACKER_SPARQL_TOKEN_TYPE_A) { 6332 #line 6328 "tracker-sparql-pattern.c" 6333 gchar* _tmp30_; 6334 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6335 tracker_sparql_pattern_next (self, &_inner_error_); 6336 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6337 if (_inner_error_ != NULL) { 6338 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6339 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6340 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6341 g_propagate_error (error, _inner_error_); 6342 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6343 _g_free0 (old_predicate); 6344 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6345 return; 6346 #line 6342 "tracker-sparql-pattern.c" 6347 } else { 6348 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6349 _g_free0 (old_predicate); 6350 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6351 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6352 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6353 g_clear_error (&_inner_error_); 6354 #line 612 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6355 return; 6356 #line 6352 "tracker-sparql-pattern.c" 6357 } 6358 } 6359 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6360 _tmp30_ = g_strdup ("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"); 6361 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6362 _g_free0 (self->priv->current_predicate); 6363 #line 613 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6364 self->priv->current_predicate = _tmp30_; 6365 #line 6361 "tracker-sparql-pattern.c" 6366 } else { 6367 GError* _tmp31_ = NULL; 6368 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6369 _tmp31_ = tracker_sparql_pattern_get_error (self, "expected non-empty property list"); 6370 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6371 _inner_error_ = _tmp31_; 6372 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6373 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6374 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6375 g_propagate_error (error, _inner_error_); 6376 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6377 _g_free0 (old_predicate); 6378 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6379 return; 6380 #line 6376 "tracker-sparql-pattern.c" 6381 } else { 6382 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6383 _g_free0 (old_predicate); 6384 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6385 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6386 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6387 g_clear_error (&_inner_error_); 6388 #line 615 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6389 return; 6390 #line 6386 "tracker-sparql-pattern.c" 6391 } 6392 } 6393 } 6394 } 6395 } 6396 } 6397 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6398 _tmp32_ = sql; 6399 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6400 _tmp33_ = in_simple_optional; 6401 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6402 tracker_sparql_pattern_parse_object_list (self, _tmp32_, _tmp33_, &_inner_error_); 6403 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6404 if (_inner_error_ != NULL) { 6405 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6406 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6407 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6408 g_propagate_error (error, _inner_error_); 6409 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6410 _g_free0 (old_predicate); 6411 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6412 return; 6413 #line 6409 "tracker-sparql-pattern.c" 6414 } else { 6415 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6416 _g_free0 (old_predicate); 6417 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6418 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6419 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6420 g_clear_error (&_inner_error_); 6421 #line 617 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6422 return; 6423 #line 6419 "tracker-sparql-pattern.c" 6424 } 6425 } 6426 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6427 _tmp34_ = old_predicate; 6428 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6429 _tmp35_ = g_strdup (_tmp34_); 6430 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6431 _g_free0 (self->priv->current_predicate); 6432 #line 619 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6433 self->priv->current_predicate = _tmp35_; 6434 #line 620 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6435 _tmp36_ = old_predicate_is_var; 6436 #line 620 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6437 self->priv->current_predicate_is_var = _tmp36_; 6438 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6439 _tmp37_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_SEMICOLON, &_inner_error_); 6440 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6441 _tmp38_ = _tmp37_; 6442 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6443 if (_inner_error_ != NULL) { 6444 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6445 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6446 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6447 g_propagate_error (error, _inner_error_); 6448 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6449 _g_free0 (old_predicate); 6450 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6451 return; 6452 #line 6448 "tracker-sparql-pattern.c" 6453 } else { 6454 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6455 _g_free0 (old_predicate); 6456 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6457 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6458 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6459 g_clear_error (&_inner_error_); 6460 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6461 return; 6462 #line 6458 "tracker-sparql-pattern.c" 6463 } 6464 } 6465 #line 622 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6466 if (_tmp38_) { 6467 #line 6463 "tracker-sparql-pattern.c" 6468 TrackerSparqlTokenType _tmp39_ = 0; 6469 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6470 _tmp39_ = tracker_sparql_pattern_current (self); 6471 #line 623 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6472 if (_tmp39_ == TRACKER_SPARQL_TOKEN_TYPE_DOT) { 6473 #line 625 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6474 _g_free0 (old_predicate); 6475 #line 625 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6476 break; 6477 #line 6473 "tracker-sparql-pattern.c" 6478 } 6479 #line 627 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6480 _g_free0 (old_predicate); 6481 #line 627 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6482 continue; 6483 #line 6479 "tracker-sparql-pattern.c" 6484 } 6485 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6486 _g_free0 (old_predicate); 6487 #line 629 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6488 break; 6489 #line 6485 "tracker-sparql-pattern.c" 6490 } 6491 } 6492 6493 6494 static void tracker_sparql_pattern_translate_filter (TrackerSparqlPattern* self, GString* sql, GError** error) { 6495 TrackerSparqlExpression* _tmp0_; 6496 GString* _tmp1_; 6497 GError * _inner_error_ = NULL; 6498 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6499 g_return_if_fail (self != NULL); 6500 #line 633 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6501 g_return_if_fail (sql != NULL); 6502 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6503 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_FILTER, &_inner_error_); 6504 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6505 if (_inner_error_ != NULL) { 6506 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6507 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6508 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6509 g_propagate_error (error, _inner_error_); 6510 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6511 return; 6512 #line 6508 "tracker-sparql-pattern.c" 6513 } else { 6514 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6515 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6516 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6517 g_clear_error (&_inner_error_); 6518 #line 634 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6519 return; 6520 #line 6516 "tracker-sparql-pattern.c" 6521 } 6522 } 6523 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6524 _tmp0_ = self->priv->expression; 6525 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6526 _tmp1_ = sql; 6527 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6528 tracker_sparql_expression_translate_constraint (_tmp0_, _tmp1_, &_inner_error_); 6529 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6530 if (_inner_error_ != NULL) { 6531 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6532 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6533 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6534 g_propagate_error (error, _inner_error_); 6535 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6536 return; 6537 #line 6533 "tracker-sparql-pattern.c" 6538 } else { 6539 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6540 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6541 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6542 g_clear_error (&_inner_error_); 6543 #line 635 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6544 return; 6545 #line 6541 "tracker-sparql-pattern.c" 6546 } 6547 } 6548 } 6549 6550 6551 static void tracker_sparql_pattern_skip_filter (TrackerSparqlPattern* self, GError** error) { 6552 TrackerSparqlTokenType _tmp0_ = 0; 6553 gint n_parens; 6554 GError * _inner_error_ = NULL; 6555 #line 638 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6556 g_return_if_fail (self != NULL); 6557 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6558 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_FILTER, &_inner_error_); 6559 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6560 if (_inner_error_ != NULL) { 6561 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6562 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6563 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6564 g_propagate_error (error, _inner_error_); 6565 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6566 return; 6567 #line 6563 "tracker-sparql-pattern.c" 6568 } else { 6569 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6570 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6571 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6572 g_clear_error (&_inner_error_); 6573 #line 639 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6574 return; 6575 #line 6571 "tracker-sparql-pattern.c" 6576 } 6577 } 6578 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6579 _tmp0_ = tracker_sparql_pattern_current (self); 6580 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6581 switch (_tmp0_) { 6582 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6583 case TRACKER_SPARQL_TOKEN_TYPE_STR: 6584 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6585 case TRACKER_SPARQL_TOKEN_TYPE_LANG: 6586 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6587 case TRACKER_SPARQL_TOKEN_TYPE_LANGMATCHES: 6588 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6589 case TRACKER_SPARQL_TOKEN_TYPE_DATATYPE: 6590 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6591 case TRACKER_SPARQL_TOKEN_TYPE_BOUND: 6592 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6593 case TRACKER_SPARQL_TOKEN_TYPE_SAMETERM: 6594 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6595 case TRACKER_SPARQL_TOKEN_TYPE_ISIRI: 6596 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6597 case TRACKER_SPARQL_TOKEN_TYPE_ISURI: 6598 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6599 case TRACKER_SPARQL_TOKEN_TYPE_ISBLANK: 6600 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6601 case TRACKER_SPARQL_TOKEN_TYPE_ISLITERAL: 6602 #line 641 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6603 case TRACKER_SPARQL_TOKEN_TYPE_REGEX: 6604 #line 6600 "tracker-sparql-pattern.c" 6605 { 6606 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6607 tracker_sparql_pattern_next (self, &_inner_error_); 6608 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6609 if (_inner_error_ != NULL) { 6610 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6611 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6612 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6613 g_propagate_error (error, _inner_error_); 6614 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6615 return; 6616 #line 6612 "tracker-sparql-pattern.c" 6617 } else { 6618 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6619 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6620 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6621 g_clear_error (&_inner_error_); 6622 #line 653 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6623 return; 6624 #line 6620 "tracker-sparql-pattern.c" 6625 } 6626 } 6627 #line 654 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6628 break; 6629 #line 6625 "tracker-sparql-pattern.c" 6630 } 6631 default: 6632 { 6633 #line 656 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6634 break; 6635 #line 6631 "tracker-sparql-pattern.c" 6636 } 6637 } 6638 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6639 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 6640 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6641 if (_inner_error_ != NULL) { 6642 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6643 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6644 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6645 g_propagate_error (error, _inner_error_); 6646 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6647 return; 6648 #line 6644 "tracker-sparql-pattern.c" 6649 } else { 6650 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6651 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6652 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6653 g_clear_error (&_inner_error_); 6654 #line 659 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6655 return; 6656 #line 6652 "tracker-sparql-pattern.c" 6657 } 6658 } 6659 #line 660 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6660 n_parens = 1; 6661 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6662 while (TRUE) { 6663 #line 6659 "tracker-sparql-pattern.c" 6664 gint _tmp1_; 6665 gboolean _tmp2_ = FALSE; 6666 gboolean _tmp3_; 6667 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6668 _tmp1_ = n_parens; 6669 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6670 if (!(_tmp1_ > 0)) { 6671 #line 661 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6672 break; 6673 #line 6669 "tracker-sparql-pattern.c" 6674 } 6675 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6676 _tmp2_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_PARENS, &_inner_error_); 6677 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6678 _tmp3_ = _tmp2_; 6679 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6680 if (_inner_error_ != NULL) { 6681 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6682 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6683 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6684 g_propagate_error (error, _inner_error_); 6685 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6686 return; 6687 #line 6683 "tracker-sparql-pattern.c" 6688 } else { 6689 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6690 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6691 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6692 g_clear_error (&_inner_error_); 6693 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6694 return; 6695 #line 6691 "tracker-sparql-pattern.c" 6696 } 6697 } 6698 #line 662 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6699 if (_tmp3_) { 6700 #line 6696 "tracker-sparql-pattern.c" 6701 gint _tmp4_; 6702 #line 663 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6703 _tmp4_ = n_parens; 6704 #line 663 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6705 n_parens = _tmp4_ + 1; 6706 #line 6702 "tracker-sparql-pattern.c" 6707 } else { 6708 gboolean _tmp5_ = FALSE; 6709 gboolean _tmp6_; 6710 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6711 _tmp5_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_PARENS, &_inner_error_); 6712 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6713 _tmp6_ = _tmp5_; 6714 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6715 if (_inner_error_ != NULL) { 6716 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6717 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6718 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6719 g_propagate_error (error, _inner_error_); 6720 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6721 return; 6722 #line 6718 "tracker-sparql-pattern.c" 6723 } else { 6724 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6725 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6726 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6727 g_clear_error (&_inner_error_); 6728 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6729 return; 6730 #line 6726 "tracker-sparql-pattern.c" 6731 } 6732 } 6733 #line 664 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6734 if (_tmp6_) { 6735 #line 6731 "tracker-sparql-pattern.c" 6736 gint _tmp7_; 6737 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6738 _tmp7_ = n_parens; 6739 #line 665 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6740 n_parens = _tmp7_ - 1; 6741 #line 6737 "tracker-sparql-pattern.c" 6742 } else { 6743 TrackerSparqlTokenType _tmp8_ = 0; 6744 #line 666 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6745 _tmp8_ = tracker_sparql_pattern_current (self); 6746 #line 666 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6747 if (_tmp8_ == TRACKER_SPARQL_TOKEN_TYPE_EOF) { 6748 #line 6744 "tracker-sparql-pattern.c" 6749 GError* _tmp9_ = NULL; 6750 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6751 _tmp9_ = tracker_sparql_pattern_get_error (self, "unexpected end of query, expected )"); 6752 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6753 _inner_error_ = _tmp9_; 6754 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6755 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6756 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6757 g_propagate_error (error, _inner_error_); 6758 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6759 return; 6760 #line 6756 "tracker-sparql-pattern.c" 6761 } else { 6762 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6763 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6764 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6765 g_clear_error (&_inner_error_); 6766 #line 667 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6767 return; 6768 #line 6764 "tracker-sparql-pattern.c" 6769 } 6770 } else { 6771 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6772 tracker_sparql_pattern_next (self, &_inner_error_); 6773 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6774 if (_inner_error_ != NULL) { 6775 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6776 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6777 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6778 g_propagate_error (error, _inner_error_); 6779 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6780 return; 6781 #line 6777 "tracker-sparql-pattern.c" 6782 } else { 6783 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6784 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6785 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6786 g_clear_error (&_inner_error_); 6787 #line 670 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6788 return; 6789 #line 6785 "tracker-sparql-pattern.c" 6790 } 6791 } 6792 } 6793 } 6794 } 6795 } 6796 } 6797 6798 6799 static void tracker_sparql_pattern_start_triples_block (TrackerSparqlPattern* self, GString* sql, GError** error) { 6800 TrackerSparqlQuery* _tmp0_; 6801 TrackerSparqlContext* _tmp1_; 6802 TrackerSparqlContext* _tmp2_; 6803 TrackerSparqlPatternTripleContext* _tmp3_; 6804 TrackerSparqlPatternTripleContext* _tmp4_; 6805 GString* _tmp5_; 6806 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6807 g_return_if_fail (self != NULL); 6808 #line 675 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6809 g_return_if_fail (sql != NULL); 6810 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6811 _tmp0_ = self->priv->query; 6812 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6813 _tmp1_ = tracker_sparql_pattern_get_context (self); 6814 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6815 _tmp2_ = _tmp1_; 6816 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6817 _tmp3_ = tracker_sparql_pattern_triple_context_new (_tmp0_, _tmp2_); 6818 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6819 _tracker_sparql_context_unref0 (self->priv->triple_context); 6820 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6821 self->priv->triple_context = _tmp3_; 6822 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6823 _tmp4_ = self->priv->triple_context; 6824 #line 676 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6825 tracker_sparql_pattern_set_context (self, (TrackerSparqlContext*) _tmp4_); 6826 #line 678 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6827 _tmp5_ = sql; 6828 #line 678 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6829 g_string_append (_tmp5_, "SELECT "); 6830 #line 6826 "tracker-sparql-pattern.c" 6831 } 6832 6833 6834 static void tracker_sparql_pattern_end_triples_block (TrackerSparqlPattern* self, GString* sql, gboolean* first_where, gboolean in_group_graph_pattern, GError** error) { 6835 GString* _tmp0_; 6836 GString* _tmp1_; 6837 gssize _tmp2_; 6838 GString* _tmp3_; 6839 gboolean first; 6840 TrackerSparqlPatternTripleContext* _tmp4_; 6841 GList* _tmp5_; 6842 TrackerSparqlPatternTripleContext* _tmp24_; 6843 GList* _tmp25_; 6844 TrackerSparqlPatternTripleContext* _tmp84_; 6845 GList* _tmp85_; 6846 gboolean _tmp117_; 6847 TrackerSparqlContext* _tmp119_; 6848 TrackerSparqlContext* _tmp120_; 6849 GHashTable* _tmp121_; 6850 GList* _tmp122_ = NULL; 6851 TrackerSparqlContext* _tmp129_; 6852 TrackerSparqlContext* _tmp130_; 6853 TrackerSparqlContext* _tmp131_; 6854 GError * _inner_error_ = NULL; 6855 #line 681 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6856 g_return_if_fail (self != NULL); 6857 #line 681 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6858 g_return_if_fail (sql != NULL); 6859 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6860 _tmp0_ = sql; 6861 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6862 _tmp1_ = sql; 6863 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6864 _tmp2_ = _tmp1_->len; 6865 #line 683 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6866 g_string_truncate (_tmp0_, (gsize) (_tmp2_ - 2)); 6867 #line 685 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6868 _tmp3_ = sql; 6869 #line 685 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6870 g_string_append (_tmp3_, " FROM "); 6871 #line 686 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6872 first = TRUE; 6873 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6874 _tmp4_ = self->priv->triple_context; 6875 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6876 _tmp5_ = _tmp4_->tables; 6877 #line 6873 "tracker-sparql-pattern.c" 6878 { 6879 GList* table_collection = NULL; 6880 GList* table_it = NULL; 6881 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6882 table_collection = _tmp5_; 6883 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6884 for (table_it = table_collection; table_it != NULL; table_it = table_it->next) { 6885 #line 6881 "tracker-sparql-pattern.c" 6886 TrackerSparqlDataTable* _tmp6_; 6887 TrackerSparqlDataTable* table = NULL; 6888 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6889 _tmp6_ = _g_object_ref0 ((TrackerSparqlDataTable*) table_it->data); 6890 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6891 table = _tmp6_; 6892 #line 6888 "tracker-sparql-pattern.c" 6893 { 6894 gboolean _tmp7_; 6895 TrackerSparqlDataTable* _tmp9_; 6896 const gchar* _tmp10_; 6897 GString* _tmp21_; 6898 TrackerSparqlDataTable* _tmp22_; 6899 const gchar* _tmp23_; 6900 #line 688 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6901 _tmp7_ = first; 6902 #line 688 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6903 if (!_tmp7_) { 6904 #line 6900 "tracker-sparql-pattern.c" 6905 GString* _tmp8_; 6906 #line 689 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6907 _tmp8_ = sql; 6908 #line 689 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6909 g_string_append (_tmp8_, ", "); 6910 #line 6906 "tracker-sparql-pattern.c" 6911 } else { 6912 #line 691 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6913 first = FALSE; 6914 #line 6910 "tracker-sparql-pattern.c" 6915 } 6916 #line 693 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6917 _tmp9_ = table; 6918 #line 693 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6919 _tmp10_ = _tmp9_->sql_db_tablename; 6920 #line 693 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6921 if (_tmp10_ != NULL) { 6922 #line 6918 "tracker-sparql-pattern.c" 6923 GString* _tmp11_; 6924 TrackerSparqlDataTable* _tmp12_; 6925 const gchar* _tmp13_; 6926 #line 694 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6927 _tmp11_ = sql; 6928 #line 694 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6929 _tmp12_ = table; 6930 #line 694 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6931 _tmp13_ = _tmp12_->sql_db_tablename; 6932 #line 694 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6933 g_string_append_printf (_tmp11_, "\"%s\"", _tmp13_); 6934 #line 6930 "tracker-sparql-pattern.c" 6935 } else { 6936 TrackerSparqlDataTable* _tmp14_; 6937 TrackerSparqlPredicateVariable* _tmp15_; 6938 TrackerSparqlQuery* _tmp16_; 6939 gchar* _tmp17_ = NULL; 6940 gchar* _tmp18_; 6941 GString* _tmp19_; 6942 gchar* _tmp20_; 6943 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6944 _tmp14_ = table; 6945 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6946 _tmp15_ = _tmp14_->predicate_variable; 6947 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6948 _tmp16_ = self->priv->query; 6949 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6950 _tmp17_ = tracker_sparql_predicate_variable_get_sql_query (_tmp15_, _tmp16_, &_inner_error_); 6951 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6952 _tmp18_ = _tmp17_; 6953 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6954 if (_inner_error_ != NULL) { 6955 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6956 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 6957 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6958 g_propagate_error (error, _inner_error_); 6959 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6960 _g_object_unref0 (table); 6961 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6962 return; 6963 #line 6959 "tracker-sparql-pattern.c" 6964 } else { 6965 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6966 _g_object_unref0 (table); 6967 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6968 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 6969 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6970 g_clear_error (&_inner_error_); 6971 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6972 return; 6973 #line 6969 "tracker-sparql-pattern.c" 6974 } 6975 } 6976 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6977 _tmp19_ = sql; 6978 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6979 _tmp20_ = _tmp18_; 6980 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6981 g_string_append_printf (_tmp19_, "(%s)", _tmp20_); 6982 #line 696 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6983 _g_free0 (_tmp20_); 6984 #line 6980 "tracker-sparql-pattern.c" 6985 } 6986 #line 698 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6987 _tmp21_ = sql; 6988 #line 698 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6989 _tmp22_ = table; 6990 #line 698 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6991 _tmp23_ = _tmp22_->sql_query_tablename; 6992 #line 698 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6993 g_string_append_printf (_tmp21_, " AS \"%s\"", _tmp23_); 6994 #line 687 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 6995 _g_object_unref0 (table); 6996 #line 6992 "tracker-sparql-pattern.c" 6997 } 6998 } 6999 } 7000 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7001 _tmp24_ = self->priv->triple_context; 7002 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7003 _tmp25_ = _tmp24_->variables; 7004 #line 7000 "tracker-sparql-pattern.c" 7005 { 7006 GList* variable_collection = NULL; 7007 GList* variable_it = NULL; 7008 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7009 variable_collection = _tmp25_; 7010 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7011 for (variable_it = variable_collection; variable_it != NULL; variable_it = variable_it->next) { 7012 #line 7008 "tracker-sparql-pattern.c" 7013 TrackerSparqlVariable* _tmp26_; 7014 TrackerSparqlVariable* variable = NULL; 7015 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7016 _tmp26_ = _g_object_ref0 ((TrackerSparqlVariable*) variable_it->data); 7017 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7018 variable = _tmp26_; 7019 #line 7015 "tracker-sparql-pattern.c" 7020 { 7021 gboolean maybe_null; 7022 gboolean in_simple_optional; 7023 TrackerPropertyType last_type; 7024 gchar* last_name; 7025 TrackerSparqlPatternTripleContext* _tmp27_; 7026 GHashTable* _tmp28_; 7027 TrackerSparqlVariable* _tmp29_; 7028 gconstpointer _tmp30_ = NULL; 7029 GList* _tmp31_; 7030 gboolean _tmp73_ = FALSE; 7031 gboolean _tmp74_; 7032 gboolean _tmp76_; 7033 #line 702 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7034 maybe_null = TRUE; 7035 #line 703 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7036 in_simple_optional = FALSE; 7037 #line 704 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7038 last_type = TRACKER_PROPERTY_TYPE_UNKNOWN; 7039 #line 705 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7040 last_name = NULL; 7041 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7042 _tmp27_ = self->priv->triple_context; 7043 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7044 _tmp28_ = _tmp27_->var_bindings; 7045 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7046 _tmp29_ = variable; 7047 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7048 _tmp30_ = g_hash_table_lookup (_tmp28_, _tmp29_); 7049 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7050 _tmp31_ = ((TrackerSparqlVariableBindingList*) _tmp30_)->list; 7051 #line 7047 "tracker-sparql-pattern.c" 7052 { 7053 GList* binding_collection = NULL; 7054 GList* binding_it = NULL; 7055 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7056 binding_collection = _tmp31_; 7057 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7058 for (binding_it = binding_collection; binding_it != NULL; binding_it = binding_it->next) { 7059 #line 7055 "tracker-sparql-pattern.c" 7060 TrackerSparqlVariableBinding* _tmp32_; 7061 TrackerSparqlVariableBinding* binding = NULL; 7062 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7063 _tmp32_ = _g_object_ref0 ((TrackerSparqlVariableBinding*) binding_it->data); 7064 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7065 binding = _tmp32_; 7066 #line 7062 "tracker-sparql-pattern.c" 7067 { 7068 gchar* name = NULL; 7069 TrackerSparqlVariableBinding* _tmp33_; 7070 TrackerSparqlDataTable* _tmp34_; 7071 TrackerSparqlVariableBinding* _tmp43_; 7072 TrackerPropertyType _tmp44_; 7073 TrackerPropertyType type; 7074 const gchar* _tmp45_; 7075 const gchar* _tmp66_; 7076 gchar* _tmp67_; 7077 TrackerPropertyType _tmp68_; 7078 TrackerSparqlVariableBinding* _tmp69_; 7079 gboolean _tmp70_; 7080 TrackerSparqlVariableBinding* _tmp71_; 7081 gboolean _tmp72_; 7082 #line 708 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7083 _tmp33_ = binding; 7084 #line 708 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7085 _tmp34_ = ((TrackerSparqlDataBinding*) _tmp33_)->table; 7086 #line 708 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7087 if (_tmp34_ != NULL) { 7088 #line 7084 "tracker-sparql-pattern.c" 7089 TrackerSparqlVariableBinding* _tmp35_; 7090 const gchar* _tmp36_; 7091 const gchar* _tmp37_; 7092 gchar* _tmp38_; 7093 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7094 _tmp35_ = binding; 7095 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7096 _tmp36_ = tracker_sparql_data_binding_get_sql_expression ((TrackerSparqlDataBinding*) _tmp35_); 7097 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7098 _tmp37_ = _tmp36_; 7099 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7100 _tmp38_ = g_strdup (_tmp37_); 7101 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7102 _g_free0 (name); 7103 #line 709 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7104 name = _tmp38_; 7105 #line 7101 "tracker-sparql-pattern.c" 7106 } else { 7107 TrackerSparqlVariable* _tmp39_; 7108 const gchar* _tmp40_; 7109 const gchar* _tmp41_; 7110 gchar* _tmp42_; 7111 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7112 _tmp39_ = variable; 7113 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7114 _tmp40_ = tracker_sparql_variable_get_sql_expression (_tmp39_); 7115 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7116 _tmp41_ = _tmp40_; 7117 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7118 _tmp42_ = g_strdup (_tmp41_); 7119 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7120 _g_free0 (name); 7121 #line 713 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7122 name = _tmp42_; 7123 #line 7119 "tracker-sparql-pattern.c" 7124 } 7125 #line 715 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7126 _tmp43_ = binding; 7127 #line 715 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7128 _tmp44_ = ((TrackerSparqlDataBinding*) _tmp43_)->data_type; 7129 #line 715 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7130 type = _tmp44_; 7131 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7132 _tmp45_ = last_name; 7133 #line 716 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7134 if (_tmp45_ != NULL) { 7135 #line 7131 "tracker-sparql-pattern.c" 7136 gboolean _tmp46_; 7137 gboolean _tmp49_ = FALSE; 7138 TrackerPropertyType _tmp50_; 7139 gboolean _tmp52_; 7140 GString* _tmp57_; 7141 gboolean _tmp58_ = FALSE; 7142 TrackerPropertyType _tmp59_; 7143 gboolean _tmp61_; 7144 #line 717 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7145 _tmp46_ = *first_where; 7146 #line 717 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7147 if (!_tmp46_) { 7148 #line 7144 "tracker-sparql-pattern.c" 7149 GString* _tmp47_; 7150 #line 718 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7151 _tmp47_ = sql; 7152 #line 718 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7153 g_string_append (_tmp47_, " AND "); 7154 #line 7150 "tracker-sparql-pattern.c" 7155 } else { 7156 GString* _tmp48_; 7157 #line 720 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7158 _tmp48_ = sql; 7159 #line 720 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7160 g_string_append (_tmp48_, " WHERE "); 7161 #line 721 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7162 *first_where = FALSE; 7163 #line 7159 "tracker-sparql-pattern.c" 7164 } 7165 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7166 _tmp50_ = last_type; 7167 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7168 if (_tmp50_ == TRACKER_PROPERTY_TYPE_STRING) { 7169 #line 7165 "tracker-sparql-pattern.c" 7170 TrackerPropertyType _tmp51_; 7171 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7172 _tmp51_ = type; 7173 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7174 _tmp49_ = _tmp51_ == TRACKER_PROPERTY_TYPE_RESOURCE; 7175 #line 7171 "tracker-sparql-pattern.c" 7176 } else { 7177 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7178 _tmp49_ = FALSE; 7179 #line 7175 "tracker-sparql-pattern.c" 7180 } 7181 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7182 _tmp52_ = _tmp49_; 7183 #line 724 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7184 if (_tmp52_) { 7185 #line 7181 "tracker-sparql-pattern.c" 7186 GString* _tmp53_; 7187 const gchar* _tmp54_; 7188 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7189 _tmp53_ = sql; 7190 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7191 _tmp54_ = last_name; 7192 #line 725 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7193 g_string_append_printf (_tmp53_, "(SELECT ID FROM Resource WHERE Uri = %s)", _tmp54_); 7194 #line 7190 "tracker-sparql-pattern.c" 7195 } else { 7196 GString* _tmp55_; 7197 const gchar* _tmp56_; 7198 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7199 _tmp55_ = sql; 7200 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7201 _tmp56_ = last_name; 7202 #line 727 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7203 g_string_append (_tmp55_, _tmp56_); 7204 #line 7200 "tracker-sparql-pattern.c" 7205 } 7206 #line 730 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7207 _tmp57_ = sql; 7208 #line 730 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7209 g_string_append (_tmp57_, " = "); 7210 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7211 _tmp59_ = last_type; 7212 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7213 if (_tmp59_ == TRACKER_PROPERTY_TYPE_RESOURCE) { 7214 #line 7210 "tracker-sparql-pattern.c" 7215 TrackerPropertyType _tmp60_; 7216 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7217 _tmp60_ = type; 7218 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7219 _tmp58_ = _tmp60_ == TRACKER_PROPERTY_TYPE_STRING; 7220 #line 7216 "tracker-sparql-pattern.c" 7221 } else { 7222 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7223 _tmp58_ = FALSE; 7224 #line 7220 "tracker-sparql-pattern.c" 7225 } 7226 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7227 _tmp61_ = _tmp58_; 7228 #line 732 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7229 if (_tmp61_) { 7230 #line 7226 "tracker-sparql-pattern.c" 7231 GString* _tmp62_; 7232 const gchar* _tmp63_; 7233 #line 733 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7234 _tmp62_ = sql; 7235 #line 733 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7236 _tmp63_ = name; 7237 #line 733 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7238 g_string_append_printf (_tmp62_, "(SELECT ID FROM Resource WHERE Uri = %s)", _tmp63_); 7239 #line 7235 "tracker-sparql-pattern.c" 7240 } else { 7241 GString* _tmp64_; 7242 const gchar* _tmp65_; 7243 #line 735 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7244 _tmp64_ = sql; 7245 #line 735 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7246 _tmp65_ = name; 7247 #line 735 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7248 g_string_append (_tmp64_, _tmp65_); 7249 #line 7245 "tracker-sparql-pattern.c" 7250 } 7251 } 7252 #line 738 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7253 _tmp66_ = name; 7254 #line 738 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7255 _tmp67_ = g_strdup (_tmp66_); 7256 #line 738 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7257 _g_free0 (last_name); 7258 #line 738 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7259 last_name = _tmp67_; 7260 #line 739 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7261 _tmp68_ = type; 7262 #line 739 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7263 last_type = _tmp68_; 7264 #line 740 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7265 _tmp69_ = binding; 7266 #line 740 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7267 _tmp70_ = _tmp69_->maybe_null; 7268 #line 740 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7269 if (!_tmp70_) { 7270 #line 741 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7271 maybe_null = FALSE; 7272 #line 7268 "tracker-sparql-pattern.c" 7273 } 7274 #line 743 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7275 _tmp71_ = binding; 7276 #line 743 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7277 _tmp72_ = _tmp71_->in_simple_optional; 7278 #line 743 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7279 in_simple_optional = _tmp72_; 7280 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7281 _g_free0 (name); 7282 #line 706 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7283 _g_object_unref0 (binding); 7284 #line 7280 "tracker-sparql-pattern.c" 7285 } 7286 } 7287 } 7288 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7289 _tmp74_ = maybe_null; 7290 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7291 if (_tmp74_) { 7292 #line 7288 "tracker-sparql-pattern.c" 7293 gboolean _tmp75_; 7294 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7295 _tmp75_ = in_simple_optional; 7296 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7297 _tmp73_ = !_tmp75_; 7298 #line 7294 "tracker-sparql-pattern.c" 7299 } else { 7300 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7301 _tmp73_ = FALSE; 7302 #line 7298 "tracker-sparql-pattern.c" 7303 } 7304 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7305 _tmp76_ = _tmp73_; 7306 #line 746 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7307 if (_tmp76_) { 7308 #line 7304 "tracker-sparql-pattern.c" 7309 gboolean _tmp77_; 7310 GString* _tmp80_; 7311 TrackerSparqlVariable* _tmp81_; 7312 const gchar* _tmp82_; 7313 const gchar* _tmp83_; 7314 #line 749 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7315 _tmp77_ = *first_where; 7316 #line 749 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7317 if (!_tmp77_) { 7318 #line 7314 "tracker-sparql-pattern.c" 7319 GString* _tmp78_; 7320 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7321 _tmp78_ = sql; 7322 #line 750 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7323 g_string_append (_tmp78_, " AND "); 7324 #line 7320 "tracker-sparql-pattern.c" 7325 } else { 7326 GString* _tmp79_; 7327 #line 752 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7328 _tmp79_ = sql; 7329 #line 752 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7330 g_string_append (_tmp79_, " WHERE "); 7331 #line 753 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7332 *first_where = FALSE; 7333 #line 7329 "tracker-sparql-pattern.c" 7334 } 7335 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7336 _tmp80_ = sql; 7337 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7338 _tmp81_ = variable; 7339 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7340 _tmp82_ = tracker_sparql_variable_get_sql_expression (_tmp81_); 7341 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7342 _tmp83_ = _tmp82_; 7343 #line 755 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7344 g_string_append_printf (_tmp80_, "%s IS NOT NULL", _tmp83_); 7345 #line 7341 "tracker-sparql-pattern.c" 7346 } 7347 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7348 _g_free0 (last_name); 7349 #line 701 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7350 _g_object_unref0 (variable); 7351 #line 7347 "tracker-sparql-pattern.c" 7352 } 7353 } 7354 } 7355 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7356 _tmp84_ = self->priv->triple_context; 7357 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7358 _tmp85_ = _tmp84_->bindings; 7359 #line 7355 "tracker-sparql-pattern.c" 7360 { 7361 GList* binding_collection = NULL; 7362 GList* binding_it = NULL; 7363 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7364 binding_collection = _tmp85_; 7365 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7366 for (binding_it = binding_collection; binding_it != NULL; binding_it = binding_it->next) { 7367 #line 7363 "tracker-sparql-pattern.c" 7368 TrackerSparqlLiteralBinding* _tmp86_; 7369 TrackerSparqlLiteralBinding* binding = NULL; 7370 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7371 _tmp86_ = _g_object_ref0 ((TrackerSparqlLiteralBinding*) binding_it->data); 7372 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7373 binding = _tmp86_; 7374 #line 7370 "tracker-sparql-pattern.c" 7375 { 7376 gboolean _tmp87_; 7377 GString* _tmp90_; 7378 TrackerSparqlLiteralBinding* _tmp91_; 7379 const gchar* _tmp92_; 7380 const gchar* _tmp93_; 7381 TrackerSparqlLiteralBinding* _tmp94_; 7382 gboolean _tmp95_; 7383 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7384 _tmp87_ = *first_where; 7385 #line 759 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7386 if (!_tmp87_) { 7387 #line 7383 "tracker-sparql-pattern.c" 7388 GString* _tmp88_; 7389 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7390 _tmp88_ = sql; 7391 #line 760 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7392 g_string_append (_tmp88_, " AND "); 7393 #line 7389 "tracker-sparql-pattern.c" 7394 } else { 7395 GString* _tmp89_; 7396 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7397 _tmp89_ = sql; 7398 #line 762 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7399 g_string_append (_tmp89_, " WHERE "); 7400 #line 763 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7401 *first_where = FALSE; 7402 #line 7398 "tracker-sparql-pattern.c" 7403 } 7404 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7405 _tmp90_ = sql; 7406 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7407 _tmp91_ = binding; 7408 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7409 _tmp92_ = tracker_sparql_data_binding_get_sql_expression ((TrackerSparqlDataBinding*) _tmp91_); 7410 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7411 _tmp93_ = _tmp92_; 7412 #line 765 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7413 g_string_append (_tmp90_, _tmp93_); 7414 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7415 _tmp94_ = binding; 7416 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7417 _tmp95_ = _tmp94_->is_fts_match; 7418 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7419 if (_tmp95_) { 7420 #line 7416 "tracker-sparql-pattern.c" 7421 TrackerSparqlLiteralBinding* _tmp96_; 7422 const gchar* _tmp97_; 7423 gchar** _tmp98_; 7424 gchar** _tmp99_ = NULL; 7425 gchar** _tmp100_; 7426 gint _tmp100__length1; 7427 gchar* _tmp101_ = NULL; 7428 gchar* _tmp102_; 7429 gchar* escaped_literal; 7430 GString* _tmp103_; 7431 const gchar* _tmp104_; 7432 GString* _tmp105_; 7433 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7434 _tmp96_ = binding; 7435 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7436 _tmp97_ = _tmp96_->literal; 7437 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7438 _tmp99_ = _tmp98_ = g_strsplit (_tmp97_, "'", 0); 7439 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7440 _tmp100_ = _tmp99_; 7441 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7442 _tmp100__length1 = _vala_array_length (_tmp98_); 7443 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7444 _tmp101_ = g_strjoinv ("''", _tmp100_); 7445 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7446 _tmp102_ = _tmp101_; 7447 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7448 _tmp100_ = (_vala_array_free (_tmp100_, _tmp100__length1, (GDestroyNotify) g_free), NULL); 7449 #line 768 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7450 escaped_literal = _tmp102_; 7451 #line 769 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7452 _tmp103_ = sql; 7453 #line 769 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7454 _tmp104_ = escaped_literal; 7455 #line 769 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7456 g_string_append_printf (_tmp103_, " MATCH '%s'", _tmp104_); 7457 #line 771 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7458 _tmp105_ = self->match_str; 7459 #line 771 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7460 if (_tmp105_ == NULL) { 7461 #line 7457 "tracker-sparql-pattern.c" 7462 GString* _tmp106_; 7463 GString* _tmp107_; 7464 const gchar* _tmp108_; 7465 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7466 _tmp106_ = g_string_new (""); 7467 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7468 _g_string_free0 (self->match_str); 7469 #line 772 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7470 self->match_str = _tmp106_; 7471 #line 773 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7472 _tmp107_ = self->match_str; 7473 #line 773 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7474 _tmp108_ = escaped_literal; 7475 #line 773 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7476 g_string_append_printf (_tmp107_, " MATCH '%s'", _tmp108_); 7477 #line 7473 "tracker-sparql-pattern.c" 7478 } 7479 #line 766 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7480 _g_free0 (escaped_literal); 7481 #line 7477 "tracker-sparql-pattern.c" 7482 } else { 7483 GString* _tmp109_; 7484 TrackerSparqlLiteralBinding* _tmp110_; 7485 TrackerPropertyType _tmp111_; 7486 TrackerSparqlQuery* _tmp114_; 7487 TrackerSparqlLiteralBinding* _tmp115_; 7488 TrackerSparqlLiteralBinding* _tmp116_; 7489 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7490 _tmp109_ = sql; 7491 #line 776 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7492 g_string_append (_tmp109_, " = "); 7493 #line 777 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7494 _tmp110_ = binding; 7495 #line 777 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7496 _tmp111_ = ((TrackerSparqlDataBinding*) _tmp110_)->data_type; 7497 #line 777 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7498 if (_tmp111_ == TRACKER_PROPERTY_TYPE_RESOURCE) { 7499 #line 7495 "tracker-sparql-pattern.c" 7500 GString* _tmp112_; 7501 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7502 _tmp112_ = sql; 7503 #line 778 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7504 g_string_append (_tmp112_, "(SELECT ID FROM Resource WHERE Uri = ?)"); 7505 #line 7501 "tracker-sparql-pattern.c" 7506 } else { 7507 GString* _tmp113_; 7508 #line 780 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7509 _tmp113_ = sql; 7510 #line 780 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7511 g_string_append (_tmp113_, "?"); 7512 #line 7508 "tracker-sparql-pattern.c" 7513 } 7514 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7515 _tmp114_ = self->priv->query; 7516 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7517 _tmp115_ = binding; 7518 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7519 _tmp116_ = _g_object_ref0 (_tmp115_); 7520 #line 782 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7521 _tmp114_->bindings = g_list_append (_tmp114_->bindings, _tmp116_); 7522 #line 7518 "tracker-sparql-pattern.c" 7523 } 7524 #line 758 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7525 _g_object_unref0 (binding); 7526 #line 7522 "tracker-sparql-pattern.c" 7527 } 7528 } 7529 } 7530 #line 786 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7531 _tmp117_ = in_group_graph_pattern; 7532 #line 786 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7533 if (_tmp117_) { 7534 #line 7530 "tracker-sparql-pattern.c" 7535 GString* _tmp118_; 7536 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7537 _tmp118_ = sql; 7538 #line 787 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7539 g_string_append (_tmp118_, ")"); 7540 #line 7536 "tracker-sparql-pattern.c" 7541 } 7542 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7543 _tmp119_ = tracker_sparql_pattern_get_context (self); 7544 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7545 _tmp120_ = _tmp119_; 7546 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7547 _tmp121_ = _tmp120_->var_set; 7548 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7549 _tmp122_ = g_hash_table_get_keys (_tmp121_); 7550 #line 7546 "tracker-sparql-pattern.c" 7551 { 7552 GList* v_collection = NULL; 7553 GList* v_it = NULL; 7554 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7555 v_collection = _tmp122_; 7556 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7557 for (v_it = v_collection; v_it != NULL; v_it = v_it->next) { 7558 #line 7554 "tracker-sparql-pattern.c" 7559 TrackerSparqlVariable* v = NULL; 7560 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7561 v = (TrackerSparqlVariable*) v_it->data; 7562 #line 7558 "tracker-sparql-pattern.c" 7563 { 7564 TrackerSparqlContext* _tmp123_; 7565 TrackerSparqlContext* _tmp124_; 7566 TrackerSparqlContext* _tmp125_; 7567 GHashTable* _tmp126_; 7568 TrackerSparqlVariable* _tmp127_; 7569 TrackerSparqlVariable* _tmp128_; 7570 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7571 _tmp123_ = tracker_sparql_pattern_get_context (self); 7572 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7573 _tmp124_ = _tmp123_; 7574 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7575 _tmp125_ = _tmp124_->parent_context; 7576 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7577 _tmp126_ = _tmp125_->var_set; 7578 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7579 _tmp127_ = v; 7580 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7581 _tmp128_ = _g_object_ref0 (_tmp127_); 7582 #line 791 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7583 g_hash_table_insert (_tmp126_, _tmp128_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 7584 #line 7580 "tracker-sparql-pattern.c" 7585 } 7586 } 7587 #line 790 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7588 _g_list_free0 (v_collection); 7589 #line 7585 "tracker-sparql-pattern.c" 7590 } 7591 #line 794 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7592 _tracker_sparql_context_unref0 (self->priv->triple_context); 7593 #line 794 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7594 self->priv->triple_context = NULL; 7595 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7596 _tmp129_ = tracker_sparql_pattern_get_context (self); 7597 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7598 _tmp130_ = _tmp129_; 7599 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7600 _tmp131_ = _tmp130_->parent_context; 7601 #line 795 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7602 tracker_sparql_pattern_set_context (self, _tmp131_); 7603 #line 7599 "tracker-sparql-pattern.c" 7604 } 7605 7606 7607 static void tracker_sparql_pattern_parse_triples (TrackerSparqlPattern* self, GString* sql, glong group_graph_pattern_start, gboolean* in_triples_block, gboolean* first_where, gboolean* in_group_graph_pattern, gboolean found_simple_optional, GError** error) { 7608 GError * _inner_error_ = NULL; 7609 #line 798 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7610 g_return_if_fail (self != NULL); 7611 #line 798 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7612 g_return_if_fail (sql != NULL); 7613 #line 799 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7614 while (TRUE) { 7615 #line 7611 "tracker-sparql-pattern.c" 7616 gboolean _tmp0_ = FALSE; 7617 gboolean _tmp1_ = FALSE; 7618 gboolean _tmp2_ = FALSE; 7619 gboolean _tmp3_ = FALSE; 7620 TrackerSparqlTokenType _tmp4_ = 0; 7621 gboolean _tmp6_; 7622 gboolean _tmp8_; 7623 gboolean _tmp10_; 7624 gboolean _tmp12_; 7625 gboolean _tmp13_ = FALSE; 7626 gboolean _tmp14_ = FALSE; 7627 gboolean _tmp15_; 7628 gboolean _tmp17_; 7629 gboolean _tmp19_; 7630 gboolean _tmp22_; 7631 GString* _tmp28_; 7632 gboolean _tmp29_ = FALSE; 7633 gchar* _tmp30_ = NULL; 7634 gchar* _tmp31_; 7635 GString* _tmp32_; 7636 gboolean _tmp33_ = FALSE; 7637 gboolean _tmp34_; 7638 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7639 _tmp4_ = tracker_sparql_pattern_current (self); 7640 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7641 if (_tmp4_ != TRACKER_SPARQL_TOKEN_TYPE_VAR) { 7642 #line 7638 "tracker-sparql-pattern.c" 7643 TrackerSparqlTokenType _tmp5_ = 0; 7644 #line 801 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7645 _tmp5_ = tracker_sparql_pattern_current (self); 7646 #line 801 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7647 _tmp3_ = _tmp5_ != TRACKER_SPARQL_TOKEN_TYPE_IRI_REF; 7648 #line 7644 "tracker-sparql-pattern.c" 7649 } else { 7650 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7651 _tmp3_ = FALSE; 7652 #line 7648 "tracker-sparql-pattern.c" 7653 } 7654 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7655 _tmp6_ = _tmp3_; 7656 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7657 if (_tmp6_) { 7658 #line 7654 "tracker-sparql-pattern.c" 7659 TrackerSparqlTokenType _tmp7_ = 0; 7660 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7661 _tmp7_ = tracker_sparql_pattern_current (self); 7662 #line 802 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7663 _tmp2_ = _tmp7_ != TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX; 7664 #line 7660 "tracker-sparql-pattern.c" 7665 } else { 7666 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7667 _tmp2_ = FALSE; 7668 #line 7664 "tracker-sparql-pattern.c" 7669 } 7670 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7671 _tmp8_ = _tmp2_; 7672 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7673 if (_tmp8_) { 7674 #line 7670 "tracker-sparql-pattern.c" 7675 TrackerSparqlTokenType _tmp9_ = 0; 7676 #line 803 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7677 _tmp9_ = tracker_sparql_pattern_current (self); 7678 #line 803 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7679 _tmp1_ = _tmp9_ != TRACKER_SPARQL_TOKEN_TYPE_COLON; 7680 #line 7676 "tracker-sparql-pattern.c" 7681 } else { 7682 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7683 _tmp1_ = FALSE; 7684 #line 7680 "tracker-sparql-pattern.c" 7685 } 7686 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7687 _tmp10_ = _tmp1_; 7688 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7689 if (_tmp10_) { 7690 #line 7686 "tracker-sparql-pattern.c" 7691 TrackerSparqlTokenType _tmp11_ = 0; 7692 #line 804 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7693 _tmp11_ = tracker_sparql_pattern_current (self); 7694 #line 804 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7695 _tmp0_ = _tmp11_ != TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACKET; 7696 #line 7692 "tracker-sparql-pattern.c" 7697 } else { 7698 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7699 _tmp0_ = FALSE; 7700 #line 7696 "tracker-sparql-pattern.c" 7701 } 7702 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7703 _tmp12_ = _tmp0_; 7704 #line 800 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7705 if (_tmp12_) { 7706 #line 805 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7707 break; 7708 #line 7704 "tracker-sparql-pattern.c" 7709 } 7710 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7711 _tmp15_ = *in_triples_block; 7712 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7713 if (_tmp15_) { 7714 #line 7710 "tracker-sparql-pattern.c" 7715 gboolean _tmp16_; 7716 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7717 _tmp16_ = *in_group_graph_pattern; 7718 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7719 _tmp14_ = !_tmp16_; 7720 #line 7716 "tracker-sparql-pattern.c" 7721 } else { 7722 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7723 _tmp14_ = FALSE; 7724 #line 7720 "tracker-sparql-pattern.c" 7725 } 7726 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7727 _tmp17_ = _tmp14_; 7728 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7729 if (_tmp17_) { 7730 #line 7726 "tracker-sparql-pattern.c" 7731 gboolean _tmp18_; 7732 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7733 _tmp18_ = found_simple_optional; 7734 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7735 _tmp13_ = _tmp18_; 7736 #line 7732 "tracker-sparql-pattern.c" 7737 } else { 7738 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7739 _tmp13_ = FALSE; 7740 #line 7736 "tracker-sparql-pattern.c" 7741 } 7742 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7743 _tmp19_ = _tmp13_; 7744 #line 807 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7745 if (_tmp19_) { 7746 #line 7742 "tracker-sparql-pattern.c" 7747 GString* _tmp20_; 7748 gboolean _tmp21_; 7749 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7750 _tmp20_ = sql; 7751 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7752 _tmp21_ = *in_group_graph_pattern; 7753 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7754 tracker_sparql_pattern_end_triples_block (self, _tmp20_, first_where, _tmp21_, &_inner_error_); 7755 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7756 if (_inner_error_ != NULL) { 7757 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7758 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7759 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7760 g_propagate_error (error, _inner_error_); 7761 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7762 return; 7763 #line 7759 "tracker-sparql-pattern.c" 7764 } else { 7765 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7766 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7767 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7768 g_clear_error (&_inner_error_); 7769 #line 811 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7770 return; 7771 #line 7767 "tracker-sparql-pattern.c" 7772 } 7773 } 7774 #line 812 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7775 *in_triples_block = FALSE; 7776 #line 813 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7777 *in_group_graph_pattern = TRUE; 7778 #line 7774 "tracker-sparql-pattern.c" 7779 } 7780 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7781 _tmp22_ = *in_triples_block; 7782 #line 815 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7783 if (!_tmp22_) { 7784 #line 7780 "tracker-sparql-pattern.c" 7785 gboolean _tmp23_; 7786 GString* _tmp27_; 7787 #line 816 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7788 _tmp23_ = *in_group_graph_pattern; 7789 #line 816 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7790 if (_tmp23_) { 7791 #line 7787 "tracker-sparql-pattern.c" 7792 GString* _tmp24_; 7793 glong _tmp25_; 7794 GString* _tmp26_; 7795 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7796 _tmp24_ = sql; 7797 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7798 _tmp25_ = group_graph_pattern_start; 7799 #line 817 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7800 g_string_insert (_tmp24_, (gssize) _tmp25_, "SELECT * FROM ("); 7801 #line 818 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7802 _tmp26_ = sql; 7803 #line 818 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7804 g_string_append (_tmp26_, ") NATURAL INNER JOIN ("); 7805 #line 7801 "tracker-sparql-pattern.c" 7806 } 7807 #line 820 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7808 *in_triples_block = TRUE; 7809 #line 821 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7810 *first_where = TRUE; 7811 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7812 _tmp27_ = sql; 7813 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7814 tracker_sparql_pattern_start_triples_block (self, _tmp27_, &_inner_error_); 7815 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7816 if (_inner_error_ != NULL) { 7817 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7818 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7819 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7820 g_propagate_error (error, _inner_error_); 7821 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7822 return; 7823 #line 7819 "tracker-sparql-pattern.c" 7824 } else { 7825 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7826 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7827 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7828 g_clear_error (&_inner_error_); 7829 #line 822 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7830 return; 7831 #line 7827 "tracker-sparql-pattern.c" 7832 } 7833 } 7834 } 7835 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7836 _tmp28_ = sql; 7837 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7838 _tmp30_ = tracker_sparql_pattern_parse_var_or_term (self, _tmp28_, &_tmp29_, &_inner_error_); 7839 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7840 self->priv->current_subject_is_var = _tmp29_; 7841 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7842 _tmp31_ = _tmp30_; 7843 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7844 if (_inner_error_ != NULL) { 7845 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7846 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7847 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7848 g_propagate_error (error, _inner_error_); 7849 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7850 return; 7851 #line 7847 "tracker-sparql-pattern.c" 7852 } else { 7853 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7854 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7855 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7856 g_clear_error (&_inner_error_); 7857 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7858 return; 7859 #line 7855 "tracker-sparql-pattern.c" 7860 } 7861 } 7862 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7863 _g_free0 (self->priv->current_subject); 7864 #line 825 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7865 self->priv->current_subject = _tmp31_; 7866 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7867 _tmp32_ = sql; 7868 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7869 tracker_sparql_pattern_parse_property_list_not_empty (self, _tmp32_, FALSE, &_inner_error_); 7870 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7871 if (_inner_error_ != NULL) { 7872 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7873 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7874 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7875 g_propagate_error (error, _inner_error_); 7876 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7877 return; 7878 #line 7874 "tracker-sparql-pattern.c" 7879 } else { 7880 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7881 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7882 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7883 g_clear_error (&_inner_error_); 7884 #line 826 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7885 return; 7886 #line 7882 "tracker-sparql-pattern.c" 7887 } 7888 } 7889 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7890 _tmp33_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOT, &_inner_error_); 7891 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7892 _tmp34_ = _tmp33_; 7893 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7894 if (_inner_error_ != NULL) { 7895 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7896 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 7897 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7898 g_propagate_error (error, _inner_error_); 7899 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7900 return; 7901 #line 7897 "tracker-sparql-pattern.c" 7902 } else { 7903 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7904 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 7905 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7906 g_clear_error (&_inner_error_); 7907 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7908 return; 7909 #line 7905 "tracker-sparql-pattern.c" 7910 } 7911 } 7912 #line 828 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7913 if (!_tmp34_) { 7914 #line 829 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7915 break; 7916 #line 7912 "tracker-sparql-pattern.c" 7917 } 7918 } 7919 } 7920 7921 7922 static gboolean tracker_sparql_pattern_is_subclass (TrackerSparqlPattern* self, TrackerClass* class1, TrackerClass* class2) { 7923 gboolean result = FALSE; 7924 TrackerClass* _tmp0_; 7925 TrackerClass* _tmp1_; 7926 TrackerClass* _tmp2_; 7927 TrackerClass** _tmp3_; 7928 TrackerClass** _tmp4_ = NULL; 7929 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7930 g_return_val_if_fail (self != NULL, FALSE); 7931 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7932 g_return_val_if_fail (class1 != NULL, FALSE); 7933 #line 834 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7934 g_return_val_if_fail (class2 != NULL, FALSE); 7935 #line 835 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7936 _tmp0_ = class1; 7937 #line 835 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7938 _tmp1_ = class2; 7939 #line 835 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7940 if (_tmp0_ == _tmp1_) { 7941 #line 836 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7942 result = TRUE; 7943 #line 836 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7944 return result; 7945 #line 7941 "tracker-sparql-pattern.c" 7946 } 7947 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7948 _tmp2_ = class1; 7949 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7950 _tmp4_ = _tmp3_ = tracker_class_get_super_classes (_tmp2_);
unused variable '_superclass_collection_size_'
(emitted by gcc)
7951 #line 7947 "tracker-sparql-pattern.c" 7952 { 7953 TrackerClass** superclass_collection = NULL; 7954 gint superclass_collection_length1 = 0; 7955 gint _superclass_collection_size_ = 0; 7956 gint superclass_it = 0; 7957 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7958 superclass_collection = _tmp4_; 7959 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7960 superclass_collection_length1 = _vala_array_length (_tmp3_);
Value stored to 'superclass_collection_length1' is never read
(emitted by clang-analyzer)

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

7961 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7962 for (superclass_it = 0; superclass_it < _vala_array_length (_tmp3_); superclass_it = superclass_it + 1) { 7963 #line 7959 "tracker-sparql-pattern.c" 7964 TrackerClass* _tmp5_; 7965 TrackerClass* superclass = NULL; 7966 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7967 _tmp5_ = _g_object_ref0 (superclass_collection[superclass_it]); 7968 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7969 superclass = _tmp5_; 7970 #line 7966 "tracker-sparql-pattern.c" 7971 { 7972 TrackerClass* _tmp6_; 7973 TrackerClass* _tmp7_; 7974 gboolean _tmp8_ = FALSE; 7975 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7976 _tmp6_ = superclass; 7977 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7978 _tmp7_ = class2; 7979 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7980 _tmp8_ = tracker_sparql_pattern_is_subclass (self, _tmp6_, _tmp7_); 7981 #line 839 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7982 if (_tmp8_) { 7983 #line 840 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7984 result = TRUE; 7985 #line 840 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7986 _g_object_unref0 (superclass); 7987 #line 840 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7988 return result; 7989 #line 7985 "tracker-sparql-pattern.c" 7990 } 7991 #line 838 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7992 _g_object_unref0 (superclass); 7993 #line 7989 "tracker-sparql-pattern.c" 7994 } 7995 } 7996 } 7997 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 7998 result = FALSE; 7999 #line 843 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8000 return result; 8001 #line 7997 "tracker-sparql-pattern.c" 8002 } 8003 8004 8005 static gboolean tracker_sparql_pattern_is_simple_optional (TrackerSparqlPattern* self) { 8006 gboolean result = FALSE; 8007 TrackerSourceLocation _tmp0_ = {0}; 8008 TrackerSourceLocation optional_start; 8009 GError * _inner_error_ = NULL; 8010 #line 846 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8011 g_return_val_if_fail (self != NULL, FALSE); 8012 #line 847 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8013 tracker_sparql_pattern_get_location (self, &_tmp0_); 8014 #line 847 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8015 optional_start = _tmp0_; 8016 #line 8012 "tracker-sparql-pattern.c" 8017 { 8018 gboolean _tmp2_ = FALSE; 8019 gboolean _tmp3_; 8020 TrackerSparqlContext* _tmp6_; 8021 TrackerSparqlContext* _tmp7_; 8022 gchar* _tmp8_ = NULL; 8023 gchar* _tmp9_; 8024 gchar* _tmp10_ = NULL; 8025 gchar* _tmp11_; 8026 TrackerSparqlVariable* _tmp12_ = NULL; 8027 TrackerSparqlVariable* _tmp13_; 8028 TrackerSparqlVariable* _tmp14_; 8029 TrackerSparqlVariable* left_variable; 8030 TrackerSparqlContext* _tmp15_; 8031 TrackerSparqlContext* _tmp16_; 8032 GHashTable* _tmp17_; 8033 TrackerSparqlVariable* _tmp18_; 8034 gconstpointer _tmp19_ = NULL; 8035 gint left_variable_state; 8036 gchar* predicate = NULL; 8037 gboolean _tmp20_ = FALSE; 8038 gboolean _tmp21_; 8039 const gchar* _tmp52_; 8040 TrackerProperty* _tmp53_ = NULL; 8041 TrackerProperty* _tmp54_; 8042 TrackerProperty* prop; 8043 TrackerProperty* _tmp55_; 8044 gboolean _tmp57_ = FALSE; 8045 gboolean _tmp58_; 8046 TrackerSparqlContext* _tmp61_; 8047 TrackerSparqlContext* _tmp62_; 8048 gchar* _tmp63_ = NULL; 8049 gchar* _tmp64_; 8050 gchar* _tmp65_ = NULL; 8051 gchar* _tmp66_; 8052 TrackerSparqlVariable* _tmp67_ = NULL; 8053 TrackerSparqlVariable* _tmp68_; 8054 TrackerSparqlVariable* _tmp69_; 8055 TrackerSparqlVariable* right_variable; 8056 TrackerSparqlContext* _tmp70_; 8057 TrackerSparqlContext* _tmp71_; 8058 GHashTable* _tmp72_; 8059 TrackerSparqlVariable* _tmp73_; 8060 gconstpointer _tmp74_ = NULL; 8061 gint right_variable_state; 8062 gboolean _tmp76_ = FALSE; 8063 gboolean _tmp77_; 8064 gboolean _tmp80_ = FALSE; 8065 gboolean _tmp81_ = FALSE; 8066 gint _tmp82_; 8067 gboolean _tmp86_; 8068 gboolean _tmp88_; 8069 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8070 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE, &_inner_error_); 8071 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8072 if (_inner_error_ != NULL) { 8073 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8074 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8075 #line 8071 "tracker-sparql-pattern.c" 8076 goto __catch1_tracker_sparql_error; 8077 } 8078 { 8079 TrackerSourceLocation _tmp1_; 8080 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8081 _tmp1_ = optional_start; 8082 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8083 tracker_sparql_pattern_set_location (self, &_tmp1_); 8084 #line 8080 "tracker-sparql-pattern.c" 8085 } 8086 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8087 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8088 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8089 g_clear_error (&_inner_error_); 8090 #line 859 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8091 return FALSE; 8092 #line 8088 "tracker-sparql-pattern.c" 8093 } 8094 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8095 _tmp2_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 8096 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8097 _tmp3_ = _tmp2_; 8098 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8099 if (_inner_error_ != NULL) { 8100 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8101 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8102 #line 8098 "tracker-sparql-pattern.c" 8103 goto __catch1_tracker_sparql_error; 8104 } 8105 { 8106 TrackerSourceLocation _tmp4_; 8107 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8108 _tmp4_ = optional_start; 8109 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8110 tracker_sparql_pattern_set_location (self, &_tmp4_); 8111 #line 8107 "tracker-sparql-pattern.c" 8112 } 8113 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8114 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8115 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8116 g_clear_error (&_inner_error_); 8117 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8118 return FALSE; 8119 #line 8115 "tracker-sparql-pattern.c" 8120 } 8121 #line 862 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8122 if (!_tmp3_) { 8123 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8124 result = FALSE; 8125 #line 8121 "tracker-sparql-pattern.c" 8126 { 8127 TrackerSourceLocation _tmp5_; 8128 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8129 _tmp5_ = optional_start; 8130 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8131 tracker_sparql_pattern_set_location (self, &_tmp5_); 8132 #line 8128 "tracker-sparql-pattern.c" 8133 } 8134 #line 863 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8135 return result; 8136 #line 8132 "tracker-sparql-pattern.c" 8137 } 8138 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8139 _tmp6_ = tracker_sparql_pattern_get_context (self); 8140 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8141 _tmp7_ = _tmp6_; 8142 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8143 _tmp8_ = tracker_sparql_pattern_get_last_string (self, 0); 8144 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8145 _tmp9_ = _tmp8_; 8146 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8147 _tmp10_ = string_substring (_tmp9_, (glong) 1, (glong) (-1)); 8148 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8149 _tmp11_ = _tmp10_; 8150 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8151 _tmp12_ = tracker_sparql_context_get_variable (_tmp7_, _tmp11_); 8152 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8153 _tmp13_ = _g_object_ref0 (_tmp12_); 8154 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8155 _tmp14_ = _tmp13_; 8156 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8157 _g_free0 (_tmp11_); 8158 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8159 _g_free0 (_tmp9_); 8160 #line 865 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8161 left_variable = _tmp14_; 8162 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8163 _tmp15_ = tracker_sparql_pattern_get_context (self); 8164 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8165 _tmp16_ = _tmp15_; 8166 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8167 _tmp17_ = _tmp16_->var_set; 8168 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8169 _tmp18_ = left_variable; 8170 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8171 _tmp19_ = g_hash_table_lookup (_tmp17_, _tmp18_); 8172 #line 866 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8173 left_variable_state = (gint) ((gintptr) _tmp19_); 8174 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8175 _tmp20_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_IRI_REF, &_inner_error_); 8176 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8177 _tmp21_ = _tmp20_; 8178 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8179 if (_inner_error_ != NULL) { 8180 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8181 _g_free0 (predicate); 8182 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8183 _g_object_unref0 (left_variable); 8184 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8185 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8186 #line 8182 "tracker-sparql-pattern.c" 8187 goto __catch1_tracker_sparql_error; 8188 } 8189 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8190 _g_free0 (predicate); 8191 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8192 _g_object_unref0 (left_variable); 8193 #line 8189 "tracker-sparql-pattern.c" 8194 { 8195 TrackerSourceLocation _tmp22_; 8196 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8197 _tmp22_ = optional_start; 8198 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8199 tracker_sparql_pattern_set_location (self, &_tmp22_); 8200 #line 8196 "tracker-sparql-pattern.c" 8201 } 8202 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8203 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8204 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8205 g_clear_error (&_inner_error_); 8206 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8207 return FALSE; 8208 #line 8204 "tracker-sparql-pattern.c" 8209 } 8210 #line 870 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8211 if (_tmp21_) { 8212 #line 8208 "tracker-sparql-pattern.c" 8213 gchar* _tmp23_ = NULL; 8214 #line 871 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8215 _tmp23_ = tracker_sparql_pattern_get_last_string (self, 1); 8216 #line 871 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8217 _g_free0 (predicate); 8218 #line 871 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8219 predicate = _tmp23_; 8220 #line 8216 "tracker-sparql-pattern.c" 8221 } else { 8222 gboolean _tmp24_ = FALSE; 8223 gboolean _tmp25_; 8224 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8225 _tmp24_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_PN_PREFIX, &_inner_error_); 8226 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8227 _tmp25_ = _tmp24_; 8228 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8229 if (_inner_error_ != NULL) { 8230 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8231 _g_free0 (predicate); 8232 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8233 _g_object_unref0 (left_variable); 8234 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8235 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8236 #line 8232 "tracker-sparql-pattern.c" 8237 goto __catch1_tracker_sparql_error; 8238 } 8239 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8240 _g_free0 (predicate); 8241 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8242 _g_object_unref0 (left_variable); 8243 #line 8239 "tracker-sparql-pattern.c" 8244 { 8245 TrackerSourceLocation _tmp26_; 8246 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8247 _tmp26_ = optional_start; 8248 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8249 tracker_sparql_pattern_set_location (self, &_tmp26_); 8250 #line 8246 "tracker-sparql-pattern.c" 8251 } 8252 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8253 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8254 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8255 g_clear_error (&_inner_error_); 8256 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8257 return FALSE; 8258 #line 8254 "tracker-sparql-pattern.c" 8259 } 8260 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8261 if (_tmp25_) { 8262 #line 8258 "tracker-sparql-pattern.c" 8263 gchar* _tmp27_ = NULL; 8264 gchar* ns; 8265 TrackerSparqlQuery* _tmp29_; 8266 const gchar* _tmp30_; 8267 gchar* _tmp31_ = NULL; 8268 gchar* _tmp32_; 8269 gchar* _tmp33_ = NULL; 8270 gchar* _tmp34_; 8271 gchar* _tmp35_ = NULL; 8272 gchar* _tmp36_; 8273 gchar* _tmp37_; 8274 #line 873 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8275 _tmp27_ = tracker_sparql_pattern_get_last_string (self, 0); 8276 #line 873 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8277 ns = _tmp27_; 8278 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8279 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 8280 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8281 if (_inner_error_ != NULL) { 8282 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8283 _g_free0 (ns); 8284 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8285 _g_free0 (predicate); 8286 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8287 _g_object_unref0 (left_variable); 8288 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8289 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8290 #line 8286 "tracker-sparql-pattern.c" 8291 goto __catch1_tracker_sparql_error; 8292 } 8293 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8294 _g_free0 (ns); 8295 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8296 _g_free0 (predicate); 8297 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8298 _g_object_unref0 (left_variable); 8299 #line 8295 "tracker-sparql-pattern.c" 8300 { 8301 TrackerSourceLocation _tmp28_; 8302 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8303 _tmp28_ = optional_start; 8304 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8305 tracker_sparql_pattern_set_location (self, &_tmp28_); 8306 #line 8302 "tracker-sparql-pattern.c" 8307 } 8308 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8309 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8310 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8311 g_clear_error (&_inner_error_); 8312 #line 874 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8313 return FALSE; 8314 #line 8310 "tracker-sparql-pattern.c" 8315 } 8316 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8317 _tmp29_ = self->priv->query; 8318 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8319 _tmp30_ = ns; 8320 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8321 _tmp31_ = tracker_sparql_pattern_get_last_string (self, 0); 8322 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8323 _tmp32_ = _tmp31_; 8324 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8325 _tmp33_ = string_substring (_tmp32_, (glong) 1, (glong) (-1)); 8326 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8327 _tmp34_ = _tmp33_; 8328 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8329 _tmp35_ = tracker_sparql_query_resolve_prefixed_name (_tmp29_, _tmp30_, _tmp34_, &_inner_error_); 8330 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8331 _tmp36_ = _tmp35_; 8332 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8333 _g_free0 (_tmp34_); 8334 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8335 _g_free0 (_tmp32_); 8336 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8337 _tmp37_ = _tmp36_; 8338 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8339 if (_inner_error_ != NULL) { 8340 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8341 _g_free0 (ns); 8342 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8343 _g_free0 (predicate); 8344 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8345 _g_object_unref0 (left_variable); 8346 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8347 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8348 #line 8344 "tracker-sparql-pattern.c" 8349 goto __catch1_tracker_sparql_error; 8350 } 8351 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8352 _g_free0 (ns); 8353 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8354 _g_free0 (predicate); 8355 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8356 _g_object_unref0 (left_variable); 8357 #line 8353 "tracker-sparql-pattern.c" 8358 { 8359 TrackerSourceLocation _tmp38_; 8360 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8361 _tmp38_ = optional_start; 8362 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8363 tracker_sparql_pattern_set_location (self, &_tmp38_); 8364 #line 8360 "tracker-sparql-pattern.c" 8365 } 8366 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8367 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8368 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8369 g_clear_error (&_inner_error_); 8370 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8371 return FALSE; 8372 #line 8368 "tracker-sparql-pattern.c" 8373 } 8374 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8375 _g_free0 (predicate); 8376 #line 875 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8377 predicate = _tmp37_; 8378 #line 872 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8379 _g_free0 (ns); 8380 #line 8376 "tracker-sparql-pattern.c" 8381 } else { 8382 gboolean _tmp39_ = FALSE; 8383 gboolean _tmp40_; 8384 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8385 _tmp39_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_COLON, &_inner_error_); 8386 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8387 _tmp40_ = _tmp39_; 8388 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8389 if (_inner_error_ != NULL) { 8390 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8391 _g_free0 (predicate); 8392 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8393 _g_object_unref0 (left_variable); 8394 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8395 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8396 #line 8392 "tracker-sparql-pattern.c" 8397 goto __catch1_tracker_sparql_error; 8398 } 8399 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8400 _g_free0 (predicate); 8401 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8402 _g_object_unref0 (left_variable); 8403 #line 8399 "tracker-sparql-pattern.c" 8404 { 8405 TrackerSourceLocation _tmp41_; 8406 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8407 _tmp41_ = optional_start; 8408 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8409 tracker_sparql_pattern_set_location (self, &_tmp41_); 8410 #line 8406 "tracker-sparql-pattern.c" 8411 } 8412 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8413 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8414 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8415 g_clear_error (&_inner_error_); 8416 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8417 return FALSE; 8418 #line 8414 "tracker-sparql-pattern.c" 8419 } 8420 #line 876 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8421 if (_tmp40_) { 8422 #line 8418 "tracker-sparql-pattern.c" 8423 TrackerSparqlQuery* _tmp42_; 8424 gchar* _tmp43_ = NULL; 8425 gchar* _tmp44_; 8426 gchar* _tmp45_ = NULL; 8427 gchar* _tmp46_; 8428 gchar* _tmp47_ = NULL; 8429 gchar* _tmp48_; 8430 gchar* _tmp49_; 8431 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8432 _tmp42_ = self->priv->query; 8433 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8434 _tmp43_ = tracker_sparql_pattern_get_last_string (self, 0); 8435 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8436 _tmp44_ = _tmp43_; 8437 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8438 _tmp45_ = string_substring (_tmp44_, (glong) 1, (glong) (-1)); 8439 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8440 _tmp46_ = _tmp45_; 8441 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8442 _tmp47_ = tracker_sparql_query_resolve_prefixed_name (_tmp42_, "", _tmp46_, &_inner_error_); 8443 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8444 _tmp48_ = _tmp47_; 8445 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8446 _g_free0 (_tmp46_); 8447 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8448 _g_free0 (_tmp44_); 8449 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8450 _tmp49_ = _tmp48_; 8451 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8452 if (_inner_error_ != NULL) { 8453 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8454 _g_free0 (predicate); 8455 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8456 _g_object_unref0 (left_variable); 8457 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8458 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8459 #line 8455 "tracker-sparql-pattern.c" 8460 goto __catch1_tracker_sparql_error; 8461 } 8462 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8463 _g_free0 (predicate); 8464 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8465 _g_object_unref0 (left_variable); 8466 #line 8462 "tracker-sparql-pattern.c" 8467 { 8468 TrackerSourceLocation _tmp50_; 8469 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8470 _tmp50_ = optional_start; 8471 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8472 tracker_sparql_pattern_set_location (self, &_tmp50_); 8473 #line 8469 "tracker-sparql-pattern.c" 8474 } 8475 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8476 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8477 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8478 g_clear_error (&_inner_error_); 8479 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8480 return FALSE; 8481 #line 8477 "tracker-sparql-pattern.c" 8482 } 8483 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8484 _g_free0 (predicate); 8485 #line 877 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8486 predicate = _tmp49_; 8487 #line 8483 "tracker-sparql-pattern.c" 8488 } else { 8489 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8490 result = FALSE; 8491 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8492 _g_free0 (predicate); 8493 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8494 _g_object_unref0 (left_variable); 8495 #line 8491 "tracker-sparql-pattern.c" 8496 { 8497 TrackerSourceLocation _tmp51_; 8498 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8499 _tmp51_ = optional_start; 8500 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8501 tracker_sparql_pattern_set_location (self, &_tmp51_); 8502 #line 8498 "tracker-sparql-pattern.c" 8503 } 8504 #line 879 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8505 return result; 8506 #line 8502 "tracker-sparql-pattern.c" 8507 } 8508 } 8509 } 8510 #line 881 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8511 _tmp52_ = predicate; 8512 #line 881 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8513 _tmp53_ = tracker_ontologies_get_property_by_uri (_tmp52_); 8514 #line 881 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8515 _tmp54_ = _g_object_ref0 (_tmp53_); 8516 #line 881 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8517 prop = _tmp54_; 8518 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8519 _tmp55_ = prop; 8520 #line 882 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8521 if (_tmp55_ == NULL) { 8522 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8523 result = FALSE; 8524 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8525 _g_object_unref0 (prop); 8526 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8527 _g_free0 (predicate); 8528 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8529 _g_object_unref0 (left_variable); 8530 #line 8526 "tracker-sparql-pattern.c" 8531 { 8532 TrackerSourceLocation _tmp56_; 8533 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8534 _tmp56_ = optional_start; 8535 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8536 tracker_sparql_pattern_set_location (self, &_tmp56_); 8537 #line 8533 "tracker-sparql-pattern.c" 8538 } 8539 #line 883 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8540 return result; 8541 #line 8537 "tracker-sparql-pattern.c" 8542 } 8543 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8544 _tmp57_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_VAR, &_inner_error_); 8545 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8546 _tmp58_ = _tmp57_; 8547 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8548 if (_inner_error_ != NULL) { 8549 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8550 _g_object_unref0 (prop); 8551 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8552 _g_free0 (predicate); 8553 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8554 _g_object_unref0 (left_variable); 8555 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8556 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8557 #line 8553 "tracker-sparql-pattern.c" 8558 goto __catch1_tracker_sparql_error; 8559 } 8560 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8561 _g_object_unref0 (prop); 8562 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8563 _g_free0 (predicate); 8564 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8565 _g_object_unref0 (left_variable); 8566 #line 8562 "tracker-sparql-pattern.c" 8567 { 8568 TrackerSourceLocation _tmp59_; 8569 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8570 _tmp59_ = optional_start; 8571 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8572 tracker_sparql_pattern_set_location (self, &_tmp59_); 8573 #line 8569 "tracker-sparql-pattern.c" 8574 } 8575 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8576 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8577 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8578 g_clear_error (&_inner_error_); 8579 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8580 return FALSE; 8581 #line 8577 "tracker-sparql-pattern.c" 8582 } 8583 #line 887 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8584 if (!_tmp58_) { 8585 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8586 result = FALSE; 8587 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8588 _g_object_unref0 (prop); 8589 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8590 _g_free0 (predicate); 8591 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8592 _g_object_unref0 (left_variable); 8593 #line 8589 "tracker-sparql-pattern.c" 8594 { 8595 TrackerSourceLocation _tmp60_; 8596 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8597 _tmp60_ = optional_start; 8598 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8599 tracker_sparql_pattern_set_location (self, &_tmp60_); 8600 #line 8596 "tracker-sparql-pattern.c" 8601 } 8602 #line 888 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8603 return result; 8604 #line 8600 "tracker-sparql-pattern.c" 8605 } 8606 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8607 _tmp61_ = tracker_sparql_pattern_get_context (self); 8608 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8609 _tmp62_ = _tmp61_; 8610 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8611 _tmp63_ = tracker_sparql_pattern_get_last_string (self, 0); 8612 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8613 _tmp64_ = _tmp63_; 8614 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8615 _tmp65_ = string_substring (_tmp64_, (glong) 1, (glong) (-1)); 8616 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8617 _tmp66_ = _tmp65_; 8618 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8619 _tmp67_ = tracker_sparql_context_get_variable (_tmp62_, _tmp66_); 8620 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8621 _tmp68_ = _g_object_ref0 (_tmp67_); 8622 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8623 _tmp69_ = _tmp68_; 8624 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8625 _g_free0 (_tmp66_); 8626 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8627 _g_free0 (_tmp64_); 8628 #line 890 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8629 right_variable = _tmp69_; 8630 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8631 _tmp70_ = tracker_sparql_pattern_get_context (self); 8632 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8633 _tmp71_ = _tmp70_; 8634 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8635 _tmp72_ = _tmp71_->var_set; 8636 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8637 _tmp73_ = right_variable; 8638 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8639 _tmp74_ = g_hash_table_lookup (_tmp72_, _tmp73_); 8640 #line 891 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8641 right_variable_state = (gint) ((gintptr) _tmp74_); 8642 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8643 tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOT, &_inner_error_); 8644 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8645 if (_inner_error_ != NULL) { 8646 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8647 _g_object_unref0 (right_variable); 8648 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8649 _g_object_unref0 (prop); 8650 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8651 _g_free0 (predicate); 8652 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8653 _g_object_unref0 (left_variable); 8654 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8655 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8656 #line 8652 "tracker-sparql-pattern.c" 8657 goto __catch1_tracker_sparql_error; 8658 } 8659 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8660 _g_object_unref0 (right_variable); 8661 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8662 _g_object_unref0 (prop); 8663 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8664 _g_free0 (predicate); 8665 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8666 _g_object_unref0 (left_variable); 8667 #line 8663 "tracker-sparql-pattern.c" 8668 { 8669 TrackerSourceLocation _tmp75_; 8670 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8671 _tmp75_ = optional_start; 8672 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8673 tracker_sparql_pattern_set_location (self, &_tmp75_); 8674 #line 8670 "tracker-sparql-pattern.c" 8675 } 8676 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8677 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8678 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8679 g_clear_error (&_inner_error_); 8680 #line 894 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8681 return FALSE; 8682 #line 8678 "tracker-sparql-pattern.c" 8683 } 8684 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8685 _tmp76_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE, &_inner_error_); 8686 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8687 _tmp77_ = _tmp76_; 8688 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8689 if (_inner_error_ != NULL) { 8690 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8691 _g_object_unref0 (right_variable); 8692 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8693 _g_object_unref0 (prop); 8694 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8695 _g_free0 (predicate); 8696 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8697 _g_object_unref0 (left_variable); 8698 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8699 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 8700 #line 8696 "tracker-sparql-pattern.c" 8701 goto __catch1_tracker_sparql_error; 8702 } 8703 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8704 _g_object_unref0 (right_variable); 8705 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8706 _g_object_unref0 (prop); 8707 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8708 _g_free0 (predicate); 8709 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8710 _g_object_unref0 (left_variable); 8711 #line 8707 "tracker-sparql-pattern.c" 8712 { 8713 TrackerSourceLocation _tmp78_; 8714 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8715 _tmp78_ = optional_start; 8716 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8717 tracker_sparql_pattern_set_location (self, &_tmp78_); 8718 #line 8714 "tracker-sparql-pattern.c" 8719 } 8720 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8721 g_critical ("file %s: line %d: unexpected error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 8722 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8723 g_clear_error (&_inner_error_); 8724 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8725 return FALSE; 8726 #line 8722 "tracker-sparql-pattern.c" 8727 } 8728 #line 897 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8729 if (!_tmp77_) { 8730 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8731 result = FALSE; 8732 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8733 _g_object_unref0 (right_variable); 8734 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8735 _g_object_unref0 (prop); 8736 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8737 _g_free0 (predicate); 8738 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8739 _g_object_unref0 (left_variable); 8740 #line 8736 "tracker-sparql-pattern.c" 8741 { 8742 TrackerSourceLocation _tmp79_; 8743 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8744 _tmp79_ = optional_start; 8745 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8746 tracker_sparql_pattern_set_location (self, &_tmp79_); 8747 #line 8743 "tracker-sparql-pattern.c" 8748 } 8749 #line 898 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8750 return result; 8751 #line 8747 "tracker-sparql-pattern.c" 8752 } 8753 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8754 _tmp82_ = left_variable_state; 8755 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8756 if (_tmp82_ == ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND)) { 8757 #line 8753 "tracker-sparql-pattern.c" 8758 TrackerProperty* _tmp83_; 8759 gboolean _tmp84_; 8760 gboolean _tmp85_; 8761 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8762 _tmp83_ = prop; 8763 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8764 _tmp84_ = tracker_property_get_multiple_values (_tmp83_); 8765 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8766 _tmp85_ = _tmp84_; 8767 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8768 _tmp81_ = !_tmp85_; 8769 #line 8765 "tracker-sparql-pattern.c" 8770 } else { 8771 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8772 _tmp81_ = FALSE; 8773 #line 8769 "tracker-sparql-pattern.c" 8774 } 8775 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8776 _tmp86_ = _tmp81_; 8777 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8778 if (_tmp86_) { 8779 #line 8775 "tracker-sparql-pattern.c" 8780 gint _tmp87_; 8781 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8782 _tmp87_ = right_variable_state; 8783 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8784 _tmp80_ = _tmp87_ == 0; 8785 #line 8781 "tracker-sparql-pattern.c" 8786 } else { 8787 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8788 _tmp80_ = FALSE; 8789 #line 8785 "tracker-sparql-pattern.c" 8790 } 8791 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8792 _tmp88_ = _tmp80_; 8793 #line 901 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8794 if (_tmp88_) { 8795 #line 8791 "tracker-sparql-pattern.c" 8796 gboolean in_domain; 8797 TrackerSparqlPatternTripleContext* _tmp89_; 8798 GHashTable* _tmp90_; 8799 TrackerSparqlVariable* _tmp91_; 8800 gconstpointer _tmp92_ = NULL; 8801 GList* _tmp93_; 8802 gboolean _tmp105_; 8803 #line 902 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8804 in_domain = FALSE; 8805 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8806 _tmp89_ = self->priv->triple_context; 8807 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8808 _tmp90_ = _tmp89_->var_bindings; 8809 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8810 _tmp91_ = left_variable; 8811 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8812 _tmp92_ = g_hash_table_lookup (_tmp90_, _tmp91_); 8813 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8814 _tmp93_ = ((TrackerSparqlVariableBindingList*) _tmp92_)->list; 8815 #line 8811 "tracker-sparql-pattern.c" 8816 { 8817 GList* binding_collection = NULL; 8818 GList* binding_it = NULL; 8819 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8820 binding_collection = _tmp93_; 8821 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8822 for (binding_it = binding_collection; binding_it != NULL; binding_it = binding_it->next) { 8823 #line 8819 "tracker-sparql-pattern.c" 8824 TrackerSparqlVariableBinding* _tmp94_; 8825 TrackerSparqlVariableBinding* binding = NULL; 8826 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8827 _tmp94_ = _g_object_ref0 ((TrackerSparqlVariableBinding*) binding_it->data); 8828 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8829 binding = _tmp94_; 8830 #line 8826 "tracker-sparql-pattern.c" 8831 { 8832 gboolean _tmp95_ = FALSE; 8833 TrackerSparqlVariableBinding* _tmp96_; 8834 TrackerClass* _tmp97_; 8835 gboolean _tmp104_; 8836 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8837 _tmp96_ = binding; 8838 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8839 _tmp97_ = _tmp96_->type; 8840 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8841 if (_tmp97_ != NULL) { 8842 #line 8838 "tracker-sparql-pattern.c" 8843 TrackerSparqlVariableBinding* _tmp98_; 8844 TrackerClass* _tmp99_; 8845 TrackerProperty* _tmp100_; 8846 TrackerClass* _tmp101_; 8847 TrackerClass* _tmp102_; 8848 gboolean _tmp103_ = FALSE; 8849 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8850 _tmp98_ = binding; 8851 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8852 _tmp99_ = _tmp98_->type; 8853 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8854 _tmp100_ = prop; 8855 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8856 _tmp101_ = tracker_property_get_domain (_tmp100_); 8857 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8858 _tmp102_ = _tmp101_; 8859 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8860 _tmp103_ = tracker_sparql_pattern_is_subclass (self, _tmp99_, _tmp102_); 8861 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8862 _tmp95_ = _tmp103_; 8863 #line 8859 "tracker-sparql-pattern.c" 8864 } else { 8865 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8866 _tmp95_ = FALSE; 8867 #line 8863 "tracker-sparql-pattern.c" 8868 } 8869 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8870 _tmp104_ = _tmp95_; 8871 #line 904 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8872 if (_tmp104_) { 8873 #line 905 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8874 in_domain = TRUE; 8875 #line 906 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8876 _g_object_unref0 (binding); 8877 #line 906 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8878 break; 8879 #line 8875 "tracker-sparql-pattern.c" 8880 } 8881 #line 903 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8882 _g_object_unref0 (binding); 8883 #line 8879 "tracker-sparql-pattern.c" 8884 } 8885 } 8886 } 8887 #line 910 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8888 _tmp105_ = in_domain; 8889 #line 910 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8890 if (_tmp105_) { 8891 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8892 result = TRUE; 8893 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8894 _g_object_unref0 (right_variable); 8895 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8896 _g_object_unref0 (prop); 8897 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8898 _g_free0 (predicate); 8899 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8900 _g_object_unref0 (left_variable); 8901 #line 8897 "tracker-sparql-pattern.c" 8902 { 8903 TrackerSourceLocation _tmp106_; 8904 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8905 _tmp106_ = optional_start; 8906 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8907 tracker_sparql_pattern_set_location (self, &_tmp106_); 8908 #line 8904 "tracker-sparql-pattern.c" 8909 } 8910 #line 912 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8911 return result; 8912 #line 8908 "tracker-sparql-pattern.c" 8913 } 8914 } else { 8915 gboolean _tmp107_ = FALSE; 8916 gboolean _tmp108_ = FALSE; 8917 gint _tmp109_; 8918 gboolean _tmp113_; 8919 gboolean _tmp115_; 8920 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8921 _tmp109_ = left_variable_state; 8922 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8923 if (_tmp109_ == 0) { 8924 #line 8920 "tracker-sparql-pattern.c" 8925 TrackerProperty* _tmp110_; 8926 gboolean _tmp111_; 8927 gboolean _tmp112_; 8928 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8929 _tmp110_ = prop; 8930 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8931 _tmp111_ = tracker_property_get_is_inverse_functional_property (_tmp110_); 8932 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8933 _tmp112_ = _tmp111_; 8934 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8935 _tmp108_ = _tmp112_; 8936 #line 8932 "tracker-sparql-pattern.c" 8937 } else { 8938 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8939 _tmp108_ = FALSE; 8940 #line 8936 "tracker-sparql-pattern.c" 8941 } 8942 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8943 _tmp113_ = _tmp108_; 8944 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8945 if (_tmp113_) { 8946 #line 8942 "tracker-sparql-pattern.c" 8947 gint _tmp114_; 8948 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8949 _tmp114_ = right_variable_state; 8950 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8951 _tmp107_ = _tmp114_ == ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND); 8952 #line 8948 "tracker-sparql-pattern.c" 8953 } else { 8954 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8955 _tmp107_ = FALSE; 8956 #line 8952 "tracker-sparql-pattern.c" 8957 } 8958 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8959 _tmp115_ = _tmp107_; 8960 #line 914 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8961 if (_tmp115_) { 8962 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8963 result = TRUE; 8964 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8965 _g_object_unref0 (right_variable); 8966 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8967 _g_object_unref0 (prop); 8968 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8969 _g_free0 (predicate); 8970 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8971 _g_object_unref0 (left_variable); 8972 #line 8968 "tracker-sparql-pattern.c" 8973 { 8974 TrackerSourceLocation _tmp116_; 8975 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8976 _tmp116_ = optional_start; 8977 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8978 tracker_sparql_pattern_set_location (self, &_tmp116_); 8979 #line 8975 "tracker-sparql-pattern.c" 8980 } 8981 #line 916 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8982 return result; 8983 #line 8979 "tracker-sparql-pattern.c" 8984 } 8985 } 8986 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8987 result = FALSE; 8988 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8989 _g_object_unref0 (right_variable); 8990 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8991 _g_object_unref0 (prop); 8992 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8993 _g_free0 (predicate); 8994 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 8995 _g_object_unref0 (left_variable); 8996 #line 8992 "tracker-sparql-pattern.c" 8997 { 8998 TrackerSourceLocation _tmp117_; 8999 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9000 _tmp117_ = optional_start; 9001 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9002 tracker_sparql_pattern_set_location (self, &_tmp117_); 9003 #line 8999 "tracker-sparql-pattern.c" 9004 } 9005 #line 920 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9006 return result; 9007 #line 9003 "tracker-sparql-pattern.c" 9008 } 9009 goto __finally1; 9010 __catch1_tracker_sparql_error: 9011 { 9012 GError* e = NULL; 9013 #line 848 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9014 e = _inner_error_; 9015 #line 848 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9016 _inner_error_ = NULL; 9017 #line 922 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9018 result = FALSE; 9019 #line 922 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9020 _g_error_free0 (e); 9021 #line 9017 "tracker-sparql-pattern.c" 9022 { 9023 TrackerSourceLocation _tmp118_; 9024 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9025 _tmp118_ = optional_start; 9026 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9027 tracker_sparql_pattern_set_location (self, &_tmp118_); 9028 #line 9024 "tracker-sparql-pattern.c" 9029 } 9030 #line 922 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9031 return result; 9032 #line 9028 "tracker-sparql-pattern.c" 9033 } 9034 __finally1: 9035 { 9036 TrackerSourceLocation _tmp119_; 9037 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9038 _tmp119_ = optional_start; 9039 #line 925 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9040 tracker_sparql_pattern_set_location (self, &_tmp119_); 9041 #line 9037 "tracker-sparql-pattern.c" 9042 } 9043 #line 848 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9044 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9045 #line 848 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9046 g_clear_error (&_inner_error_); 9047 #line 848 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9048 return FALSE; 9049 #line 9045 "tracker-sparql-pattern.c" 9050 } 9051 9052 9053 static gpointer _g_hash_table_ref0 (gpointer self) { 9054 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9055 return self ? g_hash_table_ref (self) : NULL; 9056 #line 9052 "tracker-sparql-pattern.c" 9057 }
passing argument 1 of 'tracker_sparql_variable_hash' discards 'const' qualifier from pointer target type [enabled by default]
(emitted by gcc)
9058 9059 9060 static guint _tracker_sparql_variable_hash_ghash_func (gconstpointer key) { 9061 guint result; 9062 result = tracker_sparql_variable_hash (key); 9063 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9064 return result; 9065 #line 9061 "tracker-sparql-pattern.c" 9066 }
passing argument 1 of 'tracker_sparql_variable_equal' discards 'const' qualifier from pointer target type [enabled by default]
(emitted by gcc)
9067 9068 9069 static gboolean _tracker_sparql_variable_equal_gequal_func (gconstpointer a, gconstpointer b) { 9070 gboolean result; 9071 result = tracker_sparql_variable_equal (a, b); 9072 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9073 return result; 9074 #line 9070 "tracker-sparql-pattern.c" 9075 } 9076 9077 9078 static void _vala_array_add8 (TrackerSourceLocation** array, int* length, int* size, const TrackerSourceLocation* value) { 9079 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9080 if ((*length) == (*size)) { 9081 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9082 *size = (*size) ? (2 * (*size)) : 4; 9083 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9084 *array = g_renew (TrackerSourceLocation, *array, *size); 9085 #line 9081 "tracker-sparql-pattern.c" 9086 } 9087 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9088 (*array)[(*length)++] = *value; 9089 #line 9085 "tracker-sparql-pattern.c" 9090 } 9091 9092 9093 TrackerSparqlContext* tracker_sparql_pattern_translate_group_graph_pattern (TrackerSparqlPattern* self, GString* sql, GError** error) { 9094 TrackerSparqlContext* result = NULL; 9095 TrackerSparqlTokenType _tmp0_ = 0; 9096 TrackerSparqlQuery* _tmp17_; 9097 TrackerSparqlContext* _tmp18_; 9098 TrackerSparqlContext* _tmp19_; 9099 TrackerSparqlContext* _tmp20_; 9100 TrackerSparqlContext* _result_; 9101 TrackerSparqlContext* _tmp21_; 9102 TrackerSourceLocation* _tmp22_ = NULL; 9103 TrackerSourceLocation* filters; 9104 gint filters_length1; 9105 gint _filters_size_; 9106 gboolean in_triples_block; 9107 gboolean in_group_graph_pattern; 9108 gboolean first_where; 9109 gboolean found_simple_optional; 9110 GString* _tmp23_; 9111 gssize _tmp24_; 9112 glong group_graph_pattern_start; 9113 GString* _tmp25_; 9114 glong _tmp26_; 9115 gboolean _tmp27_; 9116 gboolean _tmp278_ = FALSE; 9117 gboolean _tmp279_; 9118 gboolean _tmp281_; 9119 gboolean _tmp286_; 9120 TrackerSourceLocation* _tmp287_; 9121 gint _tmp287__length1; 9122 TrackerSparqlContext* _tmp296_; 9123 TrackerSparqlContext* _tmp297_; 9124 TrackerSparqlContext* _tmp298_; 9125 GError * _inner_error_ = NULL; 9126 #line 929 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9127 g_return_val_if_fail (self != NULL, NULL); 9128 #line 929 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9129 g_return_val_if_fail (sql != NULL, NULL); 9130 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9131 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE, &_inner_error_); 9132 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9133 if (_inner_error_ != NULL) { 9134 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9135 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9136 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9137 g_propagate_error (error, _inner_error_); 9138 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9139 return NULL; 9140 #line 9136 "tracker-sparql-pattern.c" 9141 } else { 9142 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9143 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9144 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9145 g_clear_error (&_inner_error_); 9146 #line 930 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9147 return NULL; 9148 #line 9144 "tracker-sparql-pattern.c" 9149 } 9150 } 9151 #line 932 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9152 _tmp0_ = tracker_sparql_pattern_current (self); 9153 #line 932 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9154 if (_tmp0_ == TRACKER_SPARQL_TOKEN_TYPE_SELECT) { 9155 #line 9151 "tracker-sparql-pattern.c" 9156 GString* _tmp1_; 9157 TrackerSparqlSelectContext* _tmp2_ = NULL; 9158 TrackerSparqlSelectContext* _result_; 9159 TrackerSparqlSelectContext* _tmp3_; 9160 TrackerSparqlContext* _tmp4_; 9161 TrackerSparqlContext* _tmp5_; 9162 TrackerSparqlContext* _tmp6_; 9163 TrackerSparqlContext* _tmp7_; 9164 GHashTable* _tmp8_; 9165 GHashTable* _tmp9_; 9166 TrackerSparqlContext* _tmp10_; 9167 TrackerSparqlContext* _tmp11_; 9168 GDestroyNotify _tmp12_; 9169 GHashTable* _tmp13_; 9170 TrackerSparqlContext* _tmp14_; 9171 TrackerSparqlContext* _tmp15_; 9172 TrackerSparqlContext* _tmp16_; 9173 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9174 _tmp1_ = sql; 9175 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9176 _tmp2_ = tracker_sparql_pattern_translate_select (self, _tmp1_, TRUE, FALSE, &_inner_error_); 9177 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9178 _result_ = _tmp2_; 9179 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9180 if (_inner_error_ != NULL) { 9181 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9182 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9183 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9184 g_propagate_error (error, _inner_error_); 9185 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9186 return NULL; 9187 #line 9183 "tracker-sparql-pattern.c" 9188 } else { 9189 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9190 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9191 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9192 g_clear_error (&_inner_error_); 9193 #line 933 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9194 return NULL; 9195 #line 9191 "tracker-sparql-pattern.c" 9196 } 9197 } 9198 #line 934 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9199 _tmp3_ = _result_; 9200 #line 934 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9201 tracker_sparql_pattern_set_context (self, (TrackerSparqlContext*) _tmp3_); 9202 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9203 _tmp4_ = tracker_sparql_pattern_get_context (self); 9204 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9205 _tmp5_ = _tmp4_; 9206 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9207 _tmp6_ = tracker_sparql_pattern_get_context (self); 9208 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9209 _tmp7_ = _tmp6_; 9210 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9211 _tmp8_ = _tmp7_->select_var_set; 9212 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9213 _tmp9_ = _g_hash_table_ref0 (_tmp8_); 9214 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9215 _g_hash_table_unref0 (_tmp5_->var_set); 9216 #line 937 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9217 _tmp5_->var_set = _tmp9_; 9218 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9219 _tmp10_ = tracker_sparql_pattern_get_context (self); 9220 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9221 _tmp11_ = _tmp10_; 9222 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9223 _tmp12_ = g_object_unref; 9224 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9225 _tmp13_ = g_hash_table_new_full (_tracker_sparql_variable_hash_ghash_func, _tracker_sparql_variable_equal_gequal_func, _tmp12_, NULL); 9226 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9227 _g_hash_table_unref0 (_tmp11_->select_var_set); 9228 #line 938 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9229 _tmp11_->select_var_set = _tmp13_; 9230 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9231 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE, &_inner_error_); 9232 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9233 if (_inner_error_ != NULL) { 9234 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9235 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9236 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9237 g_propagate_error (error, _inner_error_); 9238 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9239 _tracker_sparql_context_unref0 (_result_); 9240 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9241 return NULL; 9242 #line 9238 "tracker-sparql-pattern.c" 9243 } else { 9244 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9245 _tracker_sparql_context_unref0 (_result_); 9246 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9247 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9248 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9249 g_clear_error (&_inner_error_); 9250 #line 940 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9251 return NULL; 9252 #line 9248 "tracker-sparql-pattern.c" 9253 } 9254 } 9255 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9256 _tmp14_ = tracker_sparql_pattern_get_context (self); 9257 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9258 _tmp15_ = _tmp14_; 9259 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9260 _tmp16_ = _tmp15_->parent_context; 9261 #line 942 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9262 tracker_sparql_pattern_set_context (self, _tmp16_); 9263 #line 943 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9264 result = (TrackerSparqlContext*) _result_; 9265 #line 943 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9266 return result; 9267 #line 9263 "tracker-sparql-pattern.c" 9268 } 9269 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9270 _tmp17_ = self->priv->query; 9271 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9272 _tmp18_ = tracker_sparql_pattern_get_context (self); 9273 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9274 _tmp19_ = _tmp18_; 9275 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9276 _tmp20_ = tracker_sparql_context_new (_tmp17_, _tmp19_); 9277 #line 946 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9278 _result_ = _tmp20_; 9279 #line 947 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9280 _tmp21_ = _result_; 9281 #line 947 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9282 tracker_sparql_pattern_set_context (self, _tmp21_); 9283 #line 949 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9284 _tmp22_ = g_new0 (TrackerSourceLocation, 0); 9285 #line 949 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9286 filters = _tmp22_; 9287 #line 949 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9288 filters_length1 = 0; 9289 #line 949 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9290 _filters_size_ = filters_length1; 9291 #line 951 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9292 in_triples_block = FALSE; 9293 #line 952 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9294 in_group_graph_pattern = FALSE; 9295 #line 953 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9296 first_where = TRUE; 9297 #line 954 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9298 found_simple_optional = FALSE; 9299 #line 955 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9300 _tmp23_ = sql; 9301 #line 955 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9302 _tmp24_ = _tmp23_->len; 9303 #line 955 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9304 group_graph_pattern_start = (glong) _tmp24_; 9305 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9306 _tmp25_ = sql; 9307 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9308 _tmp26_ = group_graph_pattern_start; 9309 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9310 _tmp27_ = found_simple_optional; 9311 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9312 tracker_sparql_pattern_parse_triples (self, _tmp25_, _tmp26_, &in_triples_block, &first_where, &in_group_graph_pattern, _tmp27_, &_inner_error_); 9313 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9314 if (_inner_error_ != NULL) { 9315 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9316 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9317 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9318 g_propagate_error (error, _inner_error_); 9319 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9320 filters = (g_free (filters), NULL); 9321 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9322 _tracker_sparql_context_unref0 (_result_); 9323 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9324 return NULL; 9325 #line 9321 "tracker-sparql-pattern.c" 9326 } else { 9327 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9328 filters = (g_free (filters), NULL); 9329 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9330 _tracker_sparql_context_unref0 (_result_); 9331 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9332 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9333 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9334 g_clear_error (&_inner_error_); 9335 #line 958 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9336 return NULL; 9337 #line 9333 "tracker-sparql-pattern.c" 9338 } 9339 } 9340 #line 960 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9341 while (TRUE) { 9342 #line 9338 "tracker-sparql-pattern.c" 9343 gboolean _tmp28_ = FALSE; 9344 gboolean _tmp29_; 9345 GString* _tmp275_; 9346 glong _tmp276_; 9347 gboolean _tmp277_; 9348 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9349 _tmp28_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_OPTIONAL, &_inner_error_); 9350 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9351 _tmp29_ = _tmp28_; 9352 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9353 if (_inner_error_ != NULL) { 9354 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9355 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9356 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9357 g_propagate_error (error, _inner_error_); 9358 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9359 filters = (g_free (filters), NULL); 9360 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9361 _tracker_sparql_context_unref0 (_result_); 9362 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9363 return NULL; 9364 #line 9360 "tracker-sparql-pattern.c" 9365 } else { 9366 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9367 filters = (g_free (filters), NULL); 9368 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9369 _tracker_sparql_context_unref0 (_result_); 9370 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9371 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9372 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9373 g_clear_error (&_inner_error_); 9374 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9375 return NULL; 9376 #line 9372 "tracker-sparql-pattern.c" 9377 } 9378 } 9379 #line 962 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9380 if (_tmp29_) { 9381 #line 9377 "tracker-sparql-pattern.c" 9382 gboolean _tmp30_ = FALSE; 9383 gboolean _tmp31_; 9384 gboolean _tmp33_; 9385 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9386 _tmp31_ = in_group_graph_pattern; 9387 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9388 if (!_tmp31_) { 9389 #line 9385 "tracker-sparql-pattern.c" 9390 gboolean _tmp32_ = FALSE; 9391 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9392 _tmp32_ = tracker_sparql_pattern_is_simple_optional (self); 9393 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9394 _tmp30_ = _tmp32_; 9395 #line 9391 "tracker-sparql-pattern.c" 9396 } else { 9397 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9398 _tmp30_ = FALSE; 9399 #line 9395 "tracker-sparql-pattern.c" 9400 } 9401 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9402 _tmp33_ = _tmp30_; 9403 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9404 if (_tmp33_) { 9405 #line 9401 "tracker-sparql-pattern.c" 9406 GString* _tmp34_; 9407 gboolean _tmp35_ = FALSE; 9408 gchar* _tmp36_ = NULL; 9409 gchar* _tmp37_; 9410 GString* _tmp38_; 9411 #line 965 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9412 found_simple_optional = TRUE; 9413 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9414 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE, &_inner_error_); 9415 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9416 if (_inner_error_ != NULL) { 9417 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9418 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9419 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9420 g_propagate_error (error, _inner_error_); 9421 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9422 filters = (g_free (filters), NULL); 9423 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9424 _tracker_sparql_context_unref0 (_result_); 9425 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9426 return NULL; 9427 #line 9423 "tracker-sparql-pattern.c" 9428 } else { 9429 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9430 filters = (g_free (filters), NULL); 9431 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9432 _tracker_sparql_context_unref0 (_result_); 9433 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9434 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9435 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9436 g_clear_error (&_inner_error_); 9437 #line 966 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9438 return NULL; 9439 #line 9435 "tracker-sparql-pattern.c" 9440 } 9441 } 9442 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9443 _tmp34_ = sql; 9444 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9445 _tmp36_ = tracker_sparql_pattern_parse_var_or_term (self, _tmp34_, &_tmp35_, &_inner_error_); 9446 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9447 self->priv->current_subject_is_var = _tmp35_; 9448 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9449 _tmp37_ = _tmp36_; 9450 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9451 if (_inner_error_ != NULL) { 9452 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9453 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9454 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9455 g_propagate_error (error, _inner_error_); 9456 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9457 filters = (g_free (filters), NULL); 9458 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9459 _tracker_sparql_context_unref0 (_result_); 9460 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9461 return NULL; 9462 #line 9458 "tracker-sparql-pattern.c" 9463 } else { 9464 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9465 filters = (g_free (filters), NULL); 9466 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9467 _tracker_sparql_context_unref0 (_result_); 9468 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9469 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9470 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9471 g_clear_error (&_inner_error_); 9472 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9473 return NULL; 9474 #line 9470 "tracker-sparql-pattern.c" 9475 } 9476 } 9477 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9478 _g_free0 (self->priv->current_subject); 9479 #line 968 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9480 self->priv->current_subject = _tmp37_; 9481 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9482 _tmp38_ = sql; 9483 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9484 tracker_sparql_pattern_parse_property_list_not_empty (self, _tmp38_, TRUE, &_inner_error_); 9485 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9486 if (_inner_error_ != NULL) { 9487 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9488 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9489 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9490 g_propagate_error (error, _inner_error_); 9491 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9492 filters = (g_free (filters), NULL); 9493 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9494 _tracker_sparql_context_unref0 (_result_); 9495 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9496 return NULL; 9497 #line 9493 "tracker-sparql-pattern.c" 9498 } else { 9499 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9500 filters = (g_free (filters), NULL); 9501 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9502 _tracker_sparql_context_unref0 (_result_); 9503 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9504 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9505 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9506 g_clear_error (&_inner_error_); 9507 #line 969 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9508 return NULL; 9509 #line 9505 "tracker-sparql-pattern.c" 9510 } 9511 } 9512 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9513 tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOT, &_inner_error_); 9514 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9515 if (_inner_error_ != NULL) { 9516 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9517 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9518 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9519 g_propagate_error (error, _inner_error_); 9520 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9521 filters = (g_free (filters), NULL); 9522 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9523 _tracker_sparql_context_unref0 (_result_); 9524 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9525 return NULL; 9526 #line 9522 "tracker-sparql-pattern.c" 9527 } else { 9528 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9529 filters = (g_free (filters), NULL); 9530 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9531 _tracker_sparql_context_unref0 (_result_); 9532 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9533 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9534 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9535 g_clear_error (&_inner_error_); 9536 #line 971 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9537 return NULL; 9538 #line 9534 "tracker-sparql-pattern.c" 9539 } 9540 } 9541 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9542 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE, &_inner_error_); 9543 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9544 if (_inner_error_ != NULL) { 9545 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9546 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9547 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9548 g_propagate_error (error, _inner_error_); 9549 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9550 filters = (g_free (filters), NULL); 9551 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9552 _tracker_sparql_context_unref0 (_result_); 9553 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9554 return NULL; 9555 #line 9551 "tracker-sparql-pattern.c" 9556 } else { 9557 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9558 filters = (g_free (filters), NULL); 9559 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9560 _tracker_sparql_context_unref0 (_result_); 9561 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9562 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9563 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9564 g_clear_error (&_inner_error_); 9565 #line 972 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9566 return NULL; 9567 #line 9563 "tracker-sparql-pattern.c" 9568 } 9569 } 9570 } else { 9571 gboolean _tmp39_ = FALSE; 9572 gboolean _tmp40_; 9573 gboolean _tmp42_; 9574 gboolean _tmp47_; 9575 GString* _tmp48_; 9576 GString* select; 9577 gint _tmp49_; 9578 gint _tmp50_; 9579 gint left_index; 9580 gint _tmp51_; 9581 gint _tmp52_; 9582 gint right_index; 9583 GString* _tmp53_; 9584 gint _tmp54_; 9585 GString* _tmp55_; 9586 TrackerSparqlContext* _tmp56_ = NULL; 9587 TrackerSparqlContext* _tmp57_; 9588 TrackerSparqlContext* _tmp58_; 9589 GString* _tmp59_; 9590 gint _tmp60_; 9591 gboolean first; 9592 gboolean first_common; 9593 TrackerSparqlContext* _tmp61_; 9594 TrackerSparqlContext* _tmp62_; 9595 GHashTable* _tmp63_; 9596 GList* _tmp64_ = NULL; 9597 TrackerSparqlContext* _tmp182_; 9598 TrackerSparqlContext* _tmp183_; 9599 TrackerSparqlContext* _tmp184_; 9600 GHashTable* _tmp185_; 9601 GList* _tmp186_ = NULL; 9602 gboolean _tmp212_; 9603 TrackerSparqlContext* _tmp214_; 9604 TrackerSparqlContext* _tmp215_; 9605 TrackerSparqlContext* _tmp216_; 9606 GString* _tmp217_; 9607 GString* _tmp218_; 9608 glong _tmp219_; 9609 GString* _tmp220_; 9610 const gchar* _tmp221_; 9611 GString* _tmp222_; 9612 glong _tmp223_; 9613 GString* _tmp224_; 9614 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9615 _tmp40_ = in_triples_block; 9616 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9617 if (!_tmp40_) { 9618 #line 9614 "tracker-sparql-pattern.c" 9619 gboolean _tmp41_; 9620 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9621 _tmp41_ = in_group_graph_pattern; 9622 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9623 _tmp39_ = !_tmp41_; 9624 #line 9620 "tracker-sparql-pattern.c" 9625 } else { 9626 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9627 _tmp39_ = FALSE; 9628 #line 9624 "tracker-sparql-pattern.c" 9629 } 9630 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9631 _tmp42_ = _tmp39_; 9632 #line 974 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9633 if (_tmp42_) { 9634 #line 9630 "tracker-sparql-pattern.c" 9635 GString* _tmp43_; 9636 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9637 _tmp43_ = sql; 9638 #line 977 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9639 g_string_append (_tmp43_, "SELECT 1"); 9640 #line 9636 "tracker-sparql-pattern.c" 9641 } else { 9642 gboolean _tmp44_; 9643 #line 978 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9644 _tmp44_ = in_triples_block; 9645 #line 978 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9646 if (_tmp44_) { 9647 #line 9643 "tracker-sparql-pattern.c" 9648 GString* _tmp45_; 9649 gboolean _tmp46_; 9650 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9651 _tmp45_ = sql; 9652 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9653 _tmp46_ = in_group_graph_pattern; 9654 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9655 tracker_sparql_pattern_end_triples_block (self, _tmp45_, &first_where, _tmp46_, &_inner_error_); 9656 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9657 if (_inner_error_ != NULL) { 9658 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9659 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9660 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9661 g_propagate_error (error, _inner_error_); 9662 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9663 filters = (g_free (filters), NULL); 9664 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9665 _tracker_sparql_context_unref0 (_result_); 9666 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9667 return NULL; 9668 #line 9664 "tracker-sparql-pattern.c" 9669 } else { 9670 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9671 filters = (g_free (filters), NULL); 9672 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9673 _tracker_sparql_context_unref0 (_result_); 9674 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9675 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9676 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9677 g_clear_error (&_inner_error_); 9678 #line 979 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9679 return NULL; 9680 #line 9676 "tracker-sparql-pattern.c" 9681 } 9682 } 9683 #line 980 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9684 in_triples_block = FALSE; 9685 #line 9681 "tracker-sparql-pattern.c" 9686 } 9687 } 9688 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9689 _tmp47_ = in_group_graph_pattern; 9690 #line 982 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9691 if (!_tmp47_) { 9692 #line 983 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9693 in_group_graph_pattern = TRUE; 9694 #line 9690 "tracker-sparql-pattern.c" 9695 } 9696 #line 986 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9697 _tmp48_ = g_string_new ("SELECT "); 9698 #line 986 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9699 select = _tmp48_; 9700 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9701 _tmp49_ = self->priv->next_table_index; 9702 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9703 self->priv->next_table_index = _tmp49_ + 1; 9704 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9705 _tmp50_ = self->priv->next_table_index; 9706 #line 988 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9707 left_index = _tmp50_; 9708 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9709 _tmp51_ = self->priv->next_table_index; 9710 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9711 self->priv->next_table_index = _tmp51_ + 1; 9712 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9713 _tmp52_ = self->priv->next_table_index; 9714 #line 989 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9715 right_index = _tmp52_; 9716 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9717 _tmp53_ = sql; 9718 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9719 _tmp54_ = left_index; 9720 #line 991 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9721 g_string_append_printf (_tmp53_, ") AS t%d_g LEFT JOIN (", _tmp54_); 9722 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9723 _tmp55_ = sql; 9724 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9725 _tmp56_ = tracker_sparql_pattern_translate_group_graph_pattern (self, _tmp55_, &_inner_error_); 9726 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9727 _tmp57_ = _tmp56_; 9728 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9729 if (_inner_error_ != NULL) { 9730 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9731 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 9732 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9733 g_propagate_error (error, _inner_error_); 9734 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9735 _g_string_free0 (select); 9736 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9737 filters = (g_free (filters), NULL); 9738 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9739 _tracker_sparql_context_unref0 (_result_); 9740 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9741 return NULL; 9742 #line 9738 "tracker-sparql-pattern.c" 9743 } else { 9744 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9745 _g_string_free0 (select); 9746 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9747 filters = (g_free (filters), NULL); 9748 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9749 _tracker_sparql_context_unref0 (_result_); 9750 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9751 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 9752 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9753 g_clear_error (&_inner_error_); 9754 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9755 return NULL; 9756 #line 9752 "tracker-sparql-pattern.c" 9757 } 9758 } 9759 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9760 _tmp58_ = _tmp57_; 9761 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9762 tracker_sparql_pattern_set_context (self, _tmp58_); 9763 #line 993 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9764 _tracker_sparql_context_unref0 (_tmp58_); 9765 #line 995 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9766 _tmp59_ = sql; 9767 #line 995 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9768 _tmp60_ = right_index; 9769 #line 995 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9770 g_string_append_printf (_tmp59_, ") AS t%d_g", _tmp60_); 9771 #line 997 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9772 first = TRUE; 9773 #line 998 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9774 first_common = TRUE; 9775 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9776 _tmp61_ = tracker_sparql_pattern_get_context (self); 9777 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9778 _tmp62_ = _tmp61_; 9779 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9780 _tmp63_ = _tmp62_->var_set; 9781 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9782 _tmp64_ = g_hash_table_get_keys (_tmp63_); 9783 #line 9779 "tracker-sparql-pattern.c" 9784 { 9785 GList* v_collection = NULL; 9786 GList* v_it = NULL; 9787 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9788 v_collection = _tmp64_; 9789 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9790 for (v_it = v_collection; v_it != NULL; v_it = v_it->next) { 9791 #line 9787 "tracker-sparql-pattern.c" 9792 TrackerSparqlVariable* v = NULL; 9793 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9794 v = (TrackerSparqlVariable*) v_it->data; 9795 #line 9791 "tracker-sparql-pattern.c" 9796 { 9797 gboolean _tmp65_; 9798 TrackerSparqlContext* _tmp67_; 9799 TrackerSparqlContext* _tmp68_; 9800 TrackerSparqlContext* _tmp69_; 9801 GHashTable* _tmp70_; 9802 TrackerSparqlVariable* _tmp71_; 9803 gconstpointer _tmp72_ = NULL; 9804 gint old_state; 9805 gint _tmp73_; 9806 #line 1000 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9807 _tmp65_ = first; 9808 #line 1000 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9809 if (_tmp65_) { 9810 #line 1001 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9811 first = FALSE; 9812 #line 9808 "tracker-sparql-pattern.c" 9813 } else { 9814 GString* _tmp66_; 9815 #line 1003 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9816 _tmp66_ = select; 9817 #line 1003 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9818 g_string_append (_tmp66_, ", "); 9819 #line 9815 "tracker-sparql-pattern.c" 9820 } 9821 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9822 _tmp67_ = tracker_sparql_pattern_get_context (self); 9823 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9824 _tmp68_ = _tmp67_; 9825 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9826 _tmp69_ = _tmp68_->parent_context; 9827 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9828 _tmp70_ = _tmp69_->var_set; 9829 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9830 _tmp71_ = v; 9831 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9832 _tmp72_ = g_hash_table_lookup (_tmp70_, _tmp71_); 9833 #line 1006 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9834 old_state = (gint) ((gintptr) _tmp72_); 9835 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9836 _tmp73_ = old_state; 9837 #line 1007 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9838 if (_tmp73_ == 0) { 9839 #line 9835 "tracker-sparql-pattern.c" 9840 TrackerSparqlContext* _tmp74_; 9841 TrackerSparqlContext* _tmp75_; 9842 TrackerSparqlContext* _tmp76_; 9843 GHashTable* _tmp77_; 9844 TrackerSparqlVariable* _tmp78_; 9845 TrackerSparqlVariable* _tmp79_; 9846 GString* _tmp80_; 9847 gint _tmp81_; 9848 TrackerSparqlVariable* _tmp82_; 9849 const gchar* _tmp83_; 9850 const gchar* _tmp84_; 9851 TrackerSparqlVariable* _tmp85_; 9852 TrackerSparqlVariableBinding* _tmp86_; 9853 TrackerPropertyType _tmp87_; 9854 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9855 _tmp74_ = tracker_sparql_pattern_get_context (self); 9856 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9857 _tmp75_ = _tmp74_; 9858 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9859 _tmp76_ = _tmp75_->parent_context; 9860 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9861 _tmp77_ = _tmp76_->var_set; 9862 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9863 _tmp78_ = v; 9864 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9865 _tmp79_ = _g_object_ref0 (_tmp78_); 9866 #line 1009 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9867 g_hash_table_insert (_tmp77_, _tmp79_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL))); 9868 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9869 _tmp80_ = select; 9870 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9871 _tmp81_ = right_index; 9872 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9873 _tmp82_ = v; 9874 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9875 _tmp83_ = tracker_sparql_variable_get_sql_expression (_tmp82_); 9876 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9877 _tmp84_ = _tmp83_; 9878 #line 1010 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9879 g_string_append_printf (_tmp80_, "t%d_g.%s", _tmp81_, _tmp84_); 9880 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9881 _tmp85_ = v; 9882 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9883 _tmp86_ = _tmp85_->binding; 9884 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9885 _tmp87_ = ((TrackerSparqlDataBinding*) _tmp86_)->data_type; 9886 #line 1012 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9887 if (_tmp87_ == TRACKER_PROPERTY_TYPE_DATETIME) { 9888 #line 9884 "tracker-sparql-pattern.c" 9889 GString* _tmp88_; 9890 gint _tmp89_; 9891 TrackerSparqlVariable* _tmp90_; 9892 gchar* _tmp91_ = NULL; 9893 gchar* _tmp92_; 9894 GString* _tmp93_; 9895 gint _tmp94_; 9896 TrackerSparqlVariable* _tmp95_; 9897 gchar* _tmp96_ = NULL; 9898 gchar* _tmp97_; 9899 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9900 _tmp88_ = select; 9901 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9902 _tmp89_ = right_index; 9903 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9904 _tmp90_ = v; 9905 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9906 _tmp91_ = tracker_sparql_variable_get_extra_sql_expression (_tmp90_, "localDate"); 9907 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9908 _tmp92_ = _tmp91_; 9909 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9910 g_string_append_printf (_tmp88_, ", t%d_g.%s", _tmp89_, _tmp92_); 9911 #line 1013 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9912 _g_free0 (_tmp92_); 9913 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9914 _tmp93_ = select; 9915 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9916 _tmp94_ = right_index; 9917 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9918 _tmp95_ = v; 9919 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9920 _tmp96_ = tracker_sparql_variable_get_extra_sql_expression (_tmp95_, "localTime"); 9921 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9922 _tmp97_ = _tmp96_; 9923 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9924 g_string_append_printf (_tmp93_, ", t%d_g.%s", _tmp94_, _tmp97_); 9925 #line 1014 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9926 _g_free0 (_tmp97_); 9927 #line 9923 "tracker-sparql-pattern.c" 9928 } 9929 } else { 9930 gboolean _tmp98_; 9931 gint _tmp101_; 9932 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9933 _tmp98_ = first_common; 9934 #line 1017 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9935 if (_tmp98_) { 9936 #line 9932 "tracker-sparql-pattern.c" 9937 GString* _tmp99_; 9938 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9939 _tmp99_ = sql; 9940 #line 1018 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9941 g_string_append (_tmp99_, " ON "); 9942 #line 1019 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9943 first_common = FALSE; 9944 #line 9940 "tracker-sparql-pattern.c" 9945 } else { 9946 GString* _tmp100_; 9947 #line 1021 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9948 _tmp100_ = sql; 9949 #line 1021 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9950 g_string_append (_tmp100_, " AND "); 9951 #line 9947 "tracker-sparql-pattern.c" 9952 } 9953 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9954 _tmp101_ = old_state; 9955 #line 1024 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9956 if (_tmp101_ == ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND)) { 9957 #line 9953 "tracker-sparql-pattern.c" 9958 GString* _tmp102_; 9959 gint _tmp103_; 9960 TrackerSparqlVariable* _tmp104_; 9961 const gchar* _tmp105_; 9962 const gchar* _tmp106_; 9963 gint _tmp107_; 9964 TrackerSparqlVariable* _tmp108_; 9965 const gchar* _tmp109_; 9966 const gchar* _tmp110_; 9967 GString* _tmp111_; 9968 gint _tmp112_; 9969 TrackerSparqlVariable* _tmp113_; 9970 const gchar* _tmp114_; 9971 const gchar* _tmp115_; 9972 TrackerSparqlVariable* _tmp116_; 9973 TrackerSparqlVariableBinding* _tmp117_; 9974 TrackerPropertyType _tmp118_; 9975 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9976 _tmp102_ = sql; 9977 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9978 _tmp103_ = left_index; 9979 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9980 _tmp104_ = v; 9981 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9982 _tmp105_ = tracker_sparql_variable_get_sql_expression (_tmp104_); 9983 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9984 _tmp106_ = _tmp105_; 9985 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9986 _tmp107_ = right_index; 9987 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9988 _tmp108_ = v; 9989 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9990 _tmp109_ = tracker_sparql_variable_get_sql_expression (_tmp108_); 9991 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9992 _tmp110_ = _tmp109_; 9993 #line 1026 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9994 g_string_append_printf (_tmp102_, "t%d_g.%s = t%d_g.%s", _tmp103_, _tmp106_, _tmp107_, _tmp110_); 9995 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9996 _tmp111_ = select; 9997 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 9998 _tmp112_ = left_index; 9999 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10000 _tmp113_ = v; 10001 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10002 _tmp114_ = tracker_sparql_variable_get_sql_expression (_tmp113_); 10003 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10004 _tmp115_ = _tmp114_; 10005 #line 1027 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10006 g_string_append_printf (_tmp111_, "t%d_g.%s", _tmp112_, _tmp115_); 10007 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10008 _tmp116_ = v; 10009 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10010 _tmp117_ = _tmp116_->binding; 10011 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10012 _tmp118_ = ((TrackerSparqlDataBinding*) _tmp117_)->data_type; 10013 #line 1029 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10014 if (_tmp118_ == TRACKER_PROPERTY_TYPE_DATETIME) { 10015 #line 10011 "tracker-sparql-pattern.c" 10016 GString* _tmp119_; 10017 gint _tmp120_; 10018 TrackerSparqlVariable* _tmp121_; 10019 gchar* _tmp122_ = NULL; 10020 gchar* _tmp123_; 10021 GString* _tmp124_; 10022 gint _tmp125_; 10023 TrackerSparqlVariable* _tmp126_; 10024 gchar* _tmp127_ = NULL; 10025 gchar* _tmp128_; 10026 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10027 _tmp119_ = select; 10028 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10029 _tmp120_ = left_index; 10030 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10031 _tmp121_ = v; 10032 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10033 _tmp122_ = tracker_sparql_variable_get_extra_sql_expression (_tmp121_, "localDate"); 10034 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10035 _tmp123_ = _tmp122_; 10036 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10037 g_string_append_printf (_tmp119_, ", t%d_g.%s", _tmp120_, _tmp123_); 10038 #line 1030 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10039 _g_free0 (_tmp123_); 10040 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10041 _tmp124_ = select; 10042 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10043 _tmp125_ = left_index; 10044 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10045 _tmp126_ = v; 10046 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10047 _tmp127_ = tracker_sparql_variable_get_extra_sql_expression (_tmp126_, "localTime"); 10048 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10049 _tmp128_ = _tmp127_; 10050 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10051 g_string_append_printf (_tmp124_, ", t%d_g.%s", _tmp125_, _tmp128_); 10052 #line 1031 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10053 _g_free0 (_tmp128_); 10054 #line 10050 "tracker-sparql-pattern.c" 10055 } 10056 } else { 10057 gint _tmp129_; 10058 #line 1033 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10059 _tmp129_ = old_state; 10060 #line 1033 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10061 if (_tmp129_ == ((gint) TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL)) { 10062 #line 10058 "tracker-sparql-pattern.c" 10063 GString* _tmp130_; 10064 gint _tmp131_; 10065 TrackerSparqlVariable* _tmp132_; 10066 const gchar* _tmp133_; 10067 const gchar* _tmp134_; 10068 gint _tmp135_; 10069 TrackerSparqlVariable* _tmp136_; 10070 const gchar* _tmp137_; 10071 const gchar* _tmp138_; 10072 gint _tmp139_; 10073 TrackerSparqlVariable* _tmp140_; 10074 const gchar* _tmp141_; 10075 const gchar* _tmp142_; 10076 GString* _tmp143_; 10077 gint _tmp144_; 10078 TrackerSparqlVariable* _tmp145_; 10079 const gchar* _tmp146_; 10080 const gchar* _tmp147_; 10081 gint _tmp148_; 10082 TrackerSparqlVariable* _tmp149_; 10083 const gchar* _tmp150_; 10084 const gchar* _tmp151_; 10085 TrackerSparqlVariable* _tmp152_; 10086 const gchar* _tmp153_; 10087 const gchar* _tmp154_; 10088 TrackerSparqlVariable* _tmp155_; 10089 TrackerSparqlVariableBinding* _tmp156_; 10090 TrackerPropertyType _tmp157_; 10091 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10092 _tmp130_ = sql; 10093 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10094 _tmp131_ = left_index; 10095 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10096 _tmp132_ = v; 10097 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10098 _tmp133_ = tracker_sparql_variable_get_sql_expression (_tmp132_); 10099 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10100 _tmp134_ = _tmp133_; 10101 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10102 _tmp135_ = left_index; 10103 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10104 _tmp136_ = v; 10105 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10106 _tmp137_ = tracker_sparql_variable_get_sql_expression (_tmp136_); 10107 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10108 _tmp138_ = _tmp137_; 10109 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10110 _tmp139_ = right_index; 10111 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10112 _tmp140_ = v; 10113 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10114 _tmp141_ = tracker_sparql_variable_get_sql_expression (_tmp140_); 10115 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10116 _tmp142_ = _tmp141_; 10117 #line 1035 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10118 g_string_append_printf (_tmp130_, "(t%d_g.%s IS NULL OR t%d_g.%s = t%d_g.%s)", _tmp131_, _tmp134_, _tmp135_, _tmp138_, _tmp139_, _tmp142_); 10119 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10120 _tmp143_ = select; 10121 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10122 _tmp144_ = left_index; 10123 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10124 _tmp145_ = v; 10125 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10126 _tmp146_ = tracker_sparql_variable_get_sql_expression (_tmp145_); 10127 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10128 _tmp147_ = _tmp146_; 10129 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10130 _tmp148_ = right_index; 10131 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10132 _tmp149_ = v; 10133 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10134 _tmp150_ = tracker_sparql_variable_get_sql_expression (_tmp149_); 10135 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10136 _tmp151_ = _tmp150_; 10137 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10138 _tmp152_ = v; 10139 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10140 _tmp153_ = tracker_sparql_variable_get_sql_expression (_tmp152_); 10141 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10142 _tmp154_ = _tmp153_; 10143 #line 1036 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10144 g_string_append_printf (_tmp143_, "COALESCE (t%d_g.%s, t%d_g.%s) AS %s", _tmp144_, _tmp147_, _tmp148_, _tmp151_, _tmp154_); 10145 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10146 _tmp155_ = v; 10147 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10148 _tmp156_ = _tmp155_->binding; 10149 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10150 _tmp157_ = ((TrackerSparqlDataBinding*) _tmp156_)->data_type; 10151 #line 1038 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10152 if (_tmp157_ == TRACKER_PROPERTY_TYPE_DATETIME) { 10153 #line 10149 "tracker-sparql-pattern.c" 10154 GString* _tmp158_; 10155 gint _tmp159_; 10156 TrackerSparqlVariable* _tmp160_; 10157 gchar* _tmp161_ = NULL; 10158 gchar* _tmp162_; 10159 gint _tmp163_; 10160 TrackerSparqlVariable* _tmp164_; 10161 gchar* _tmp165_ = NULL; 10162 gchar* _tmp166_; 10163 TrackerSparqlVariable* _tmp167_; 10164 gchar* _tmp168_ = NULL; 10165 gchar* _tmp169_; 10166 GString* _tmp170_; 10167 gint _tmp171_; 10168 TrackerSparqlVariable* _tmp172_; 10169 gchar* _tmp173_ = NULL; 10170 gchar* _tmp174_; 10171 gint _tmp175_; 10172 TrackerSparqlVariable* _tmp176_; 10173 gchar* _tmp177_ = NULL; 10174 gchar* _tmp178_; 10175 TrackerSparqlVariable* _tmp179_; 10176 gchar* _tmp180_ = NULL; 10177 gchar* _tmp181_; 10178 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10179 _tmp158_ = select; 10180 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10181 _tmp159_ = left_index; 10182 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10183 _tmp160_ = v; 10184 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10185 _tmp161_ = tracker_sparql_variable_get_extra_sql_expression (_tmp160_, "localDate"); 10186 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10187 _tmp162_ = _tmp161_; 10188 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10189 _tmp163_ = right_index; 10190 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10191 _tmp164_ = v; 10192 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10193 _tmp165_ = tracker_sparql_variable_get_extra_sql_expression (_tmp164_, "localDate"); 10194 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10195 _tmp166_ = _tmp165_; 10196 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10197 _tmp167_ = v; 10198 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10199 _tmp168_ = tracker_sparql_variable_get_extra_sql_expression (_tmp167_, "localDate"); 10200 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10201 _tmp169_ = _tmp168_; 10202 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10203 g_string_append_printf (_tmp158_, ", COALESCE (t%d_g.%s, t%d_g.%s) AS %s", _tmp159_, _tmp162_, _tmp163_, _tmp166_, _tmp169_); 10204 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10205 _g_free0 (_tmp169_); 10206 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10207 _g_free0 (_tmp166_); 10208 #line 1039 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10209 _g_free0 (_tmp162_); 10210 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10211 _tmp170_ = select; 10212 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10213 _tmp171_ = left_index; 10214 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10215 _tmp172_ = v; 10216 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10217 _tmp173_ = tracker_sparql_variable_get_extra_sql_expression (_tmp172_, "localTime"); 10218 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10219 _tmp174_ = _tmp173_; 10220 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10221 _tmp175_ = right_index; 10222 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10223 _tmp176_ = v; 10224 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10225 _tmp177_ = tracker_sparql_variable_get_extra_sql_expression (_tmp176_, "localTime"); 10226 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10227 _tmp178_ = _tmp177_; 10228 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10229 _tmp179_ = v; 10230 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10231 _tmp180_ = tracker_sparql_variable_get_extra_sql_expression (_tmp179_, "localTime"); 10232 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10233 _tmp181_ = _tmp180_; 10234 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10235 g_string_append_printf (_tmp170_, ", COALESCE (t%d_g.%s, t%d_g.%s) AS %s", _tmp171_, _tmp174_, _tmp175_, _tmp178_, _tmp181_); 10236 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10237 _g_free0 (_tmp181_); 10238 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10239 _g_free0 (_tmp178_); 10240 #line 1040 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10241 _g_free0 (_tmp174_); 10242 #line 10238 "tracker-sparql-pattern.c" 10243 } 10244 } 10245 } 10246 } 10247 } 10248 } 10249 #line 999 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10250 _g_list_free0 (v_collection); 10251 #line 10247 "tracker-sparql-pattern.c" 10252 } 10253 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10254 _tmp182_ = tracker_sparql_pattern_get_context (self); 10255 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10256 _tmp183_ = _tmp182_; 10257 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10258 _tmp184_ = _tmp183_->parent_context; 10259 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10260 _tmp185_ = _tmp184_->var_set; 10261 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10262 _tmp186_ = g_hash_table_get_keys (_tmp185_); 10263 #line 10259 "tracker-sparql-pattern.c" 10264 { 10265 GList* v_collection = NULL; 10266 GList* v_it = NULL; 10267 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10268 v_collection = _tmp186_; 10269 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10270 for (v_it = v_collection; v_it != NULL; v_it = v_it->next) { 10271 #line 10267 "tracker-sparql-pattern.c" 10272 TrackerSparqlVariable* v = NULL; 10273 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10274 v = (TrackerSparqlVariable*) v_it->data; 10275 #line 10271 "tracker-sparql-pattern.c" 10276 { 10277 TrackerSparqlContext* _tmp187_; 10278 TrackerSparqlContext* _tmp188_; 10279 GHashTable* _tmp189_; 10280 TrackerSparqlVariable* _tmp190_; 10281 gconstpointer _tmp191_ = NULL; 10282 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10283 _tmp187_ = tracker_sparql_pattern_get_context (self); 10284 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10285 _tmp188_ = _tmp187_; 10286 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10287 _tmp189_ = _tmp188_->var_set; 10288 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10289 _tmp190_ = v; 10290 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10291 _tmp191_ = g_hash_table_lookup (_tmp189_, _tmp190_); 10292 #line 1046 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10293 if (((gint) ((gintptr) _tmp191_)) == 0) { 10294 #line 10290 "tracker-sparql-pattern.c" 10295 gboolean _tmp192_; 10296 GString* _tmp194_; 10297 gint _tmp195_; 10298 TrackerSparqlVariable* _tmp196_; 10299 const gchar* _tmp197_; 10300 const gchar* _tmp198_; 10301 TrackerSparqlVariable* _tmp199_; 10302 TrackerSparqlVariableBinding* _tmp200_; 10303 TrackerPropertyType _tmp201_; 10304 #line 1048 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10305 _tmp192_ = first; 10306 #line 1048 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10307 if (_tmp192_) { 10308 #line 1049 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10309 first = FALSE; 10310 #line 10306 "tracker-sparql-pattern.c" 10311 } else { 10312 GString* _tmp193_; 10313 #line 1051 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10314 _tmp193_ = select; 10315 #line 1051 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10316 g_string_append (_tmp193_, ", "); 10317 #line 10313 "tracker-sparql-pattern.c" 10318 } 10319 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10320 _tmp194_ = select; 10321 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10322 _tmp195_ = left_index; 10323 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10324 _tmp196_ = v; 10325 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10326 _tmp197_ = tracker_sparql_variable_get_sql_expression (_tmp196_); 10327 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10328 _tmp198_ = _tmp197_; 10329 #line 1054 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10330 g_string_append_printf (_tmp194_, "t%d_g.%s", _tmp195_, _tmp198_); 10331 #line 1056 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10332 _tmp199_ = v; 10333 #line 1056 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10334 _tmp200_ = _tmp199_->binding; 10335 #line 1056 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10336 _tmp201_ = ((TrackerSparqlDataBinding*) _tmp200_)->data_type; 10337 #line 1056 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10338 if (_tmp201_ == TRACKER_PROPERTY_TYPE_DATETIME) { 10339 #line 10335 "tracker-sparql-pattern.c" 10340 GString* _tmp202_; 10341 gint _tmp203_; 10342 TrackerSparqlVariable* _tmp204_; 10343 gchar* _tmp205_ = NULL; 10344 gchar* _tmp206_; 10345 GString* _tmp207_; 10346 gint _tmp208_; 10347 TrackerSparqlVariable* _tmp209_; 10348 gchar* _tmp210_ = NULL; 10349 gchar* _tmp211_; 10350 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10351 _tmp202_ = select; 10352 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10353 _tmp203_ = left_index; 10354 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10355 _tmp204_ = v; 10356 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10357 _tmp205_ = tracker_sparql_variable_get_extra_sql_expression (_tmp204_, "localDate"); 10358 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10359 _tmp206_ = _tmp205_; 10360 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10361 g_string_append_printf (_tmp202_, ", t%d_g.%s", _tmp203_, _tmp206_); 10362 #line 1057 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10363 _g_free0 (_tmp206_); 10364 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10365 _tmp207_ = select; 10366 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10367 _tmp208_ = left_index; 10368 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10369 _tmp209_ = v; 10370 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10371 _tmp210_ = tracker_sparql_variable_get_extra_sql_expression (_tmp209_, "localTime"); 10372 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10373 _tmp211_ = _tmp210_; 10374 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10375 g_string_append_printf (_tmp207_, ", t%d_g.%s", _tmp208_, _tmp211_); 10376 #line 1058 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10377 _g_free0 (_tmp211_); 10378 #line 10374 "tracker-sparql-pattern.c" 10379 } 10380 } 10381 } 10382 } 10383 #line 1045 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10384 _g_list_free0 (v_collection); 10385 #line 10381 "tracker-sparql-pattern.c" 10386 } 10387 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10388 _tmp212_ = first; 10389 #line 1062 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10390 if (_tmp212_) { 10391 #line 10387 "tracker-sparql-pattern.c" 10392 GString* _tmp213_; 10393 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10394 _tmp213_ = select; 10395 #line 1064 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10396 g_string_append (_tmp213_, "1"); 10397 #line 10393 "tracker-sparql-pattern.c" 10398 } 10399 #line 1067 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10400 _tmp214_ = tracker_sparql_pattern_get_context (self); 10401 #line 1067 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10402 _tmp215_ = _tmp214_; 10403 #line 1067 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10404 _tmp216_ = _tmp215_->parent_context; 10405 #line 1067 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10406 tracker_sparql_pattern_set_context (self, _tmp216_); 10407 #line 1069 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10408 _tmp217_ = select; 10409 #line 1069 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10410 g_string_append (_tmp217_, " FROM ("); 10411 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10412 _tmp218_ = sql; 10413 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10414 _tmp219_ = group_graph_pattern_start; 10415 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10416 _tmp220_ = select; 10417 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10418 _tmp221_ = _tmp220_->str; 10419 #line 1070 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10420 g_string_insert (_tmp218_, (gssize) _tmp219_, _tmp221_); 10421 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10422 _tmp222_ = sql; 10423 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10424 _tmp223_ = group_graph_pattern_start; 10425 #line 1074 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10426 g_string_insert (_tmp222_, (gssize) _tmp223_, "SELECT * FROM ("); 10427 #line 1075 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10428 _tmp224_ = sql; 10429 #line 1075 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10430 g_string_append (_tmp224_, ")"); 10431 #line 963 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10432 _g_string_free0 (select); 10433 #line 10429 "tracker-sparql-pattern.c" 10434 } 10435 } else { 10436 gboolean _tmp225_ = FALSE; 10437 gboolean _tmp226_; 10438 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10439 _tmp225_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_GRAPH, &_inner_error_); 10440 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10441 _tmp226_ = _tmp225_; 10442 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10443 if (_inner_error_ != NULL) { 10444 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10445 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10446 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10447 g_propagate_error (error, _inner_error_); 10448 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10449 filters = (g_free (filters), NULL); 10450 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10451 _tracker_sparql_context_unref0 (_result_); 10452 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10453 return NULL; 10454 #line 10450 "tracker-sparql-pattern.c" 10455 } else { 10456 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10457 filters = (g_free (filters), NULL); 10458 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10459 _tracker_sparql_context_unref0 (_result_); 10460 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10461 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10462 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10463 g_clear_error (&_inner_error_); 10464 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10465 return NULL; 10466 #line 10462 "tracker-sparql-pattern.c" 10467 } 10468 } 10469 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10470 if (_tmp226_) { 10471 #line 10467 "tracker-sparql-pattern.c" 10472 const gchar* _tmp227_; 10473 gchar* _tmp228_; 10474 gchar* old_graph; 10475 gboolean _tmp229_; 10476 gboolean old_graph_is_var; 10477 GString* _tmp230_; 10478 gboolean _tmp231_ = FALSE; 10479 gchar* _tmp232_ = NULL; 10480 gchar* _tmp233_; 10481 gboolean _tmp234_ = FALSE; 10482 gboolean _tmp235_; 10483 gboolean _tmp237_; 10484 const gchar* _tmp251_; 10485 gchar* _tmp252_; 10486 gboolean _tmp253_; 10487 #line 1078 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10488 _tmp227_ = self->current_graph; 10489 #line 1078 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10490 _tmp228_ = g_strdup (_tmp227_); 10491 #line 1078 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10492 old_graph = _tmp228_; 10493 #line 1079 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10494 _tmp229_ = self->priv->current_graph_is_var; 10495 #line 1079 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10496 old_graph_is_var = _tmp229_; 10497 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10498 _tmp230_ = sql; 10499 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10500 _tmp232_ = tracker_sparql_pattern_parse_var_or_term (self, _tmp230_, &_tmp231_, &_inner_error_); 10501 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10502 self->priv->current_graph_is_var = _tmp231_; 10503 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10504 _tmp233_ = _tmp232_; 10505 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10506 if (_inner_error_ != NULL) { 10507 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10508 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10509 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10510 g_propagate_error (error, _inner_error_); 10511 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10512 _g_free0 (old_graph); 10513 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10514 filters = (g_free (filters), NULL); 10515 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10516 _tracker_sparql_context_unref0 (_result_); 10517 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10518 return NULL; 10519 #line 10515 "tracker-sparql-pattern.c" 10520 } else { 10521 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10522 _g_free0 (old_graph); 10523 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10524 filters = (g_free (filters), NULL); 10525 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10526 _tracker_sparql_context_unref0 (_result_); 10527 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10528 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10529 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10530 g_clear_error (&_inner_error_); 10531 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10532 return NULL; 10533 #line 10529 "tracker-sparql-pattern.c" 10534 } 10535 } 10536 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10537 _g_free0 (self->current_graph); 10538 #line 1080 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10539 self->current_graph = _tmp233_; 10540 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10541 _tmp235_ = in_triples_block; 10542 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10543 if (!_tmp235_) { 10544 #line 10540 "tracker-sparql-pattern.c" 10545 gboolean _tmp236_; 10546 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10547 _tmp236_ = in_group_graph_pattern; 10548 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10549 _tmp234_ = !_tmp236_; 10550 #line 10546 "tracker-sparql-pattern.c" 10551 } else { 10552 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10553 _tmp234_ = FALSE; 10554 #line 10550 "tracker-sparql-pattern.c" 10555 } 10556 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10557 _tmp237_ = _tmp234_; 10558 #line 1082 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10559 if (_tmp237_) { 10560 #line 10556 "tracker-sparql-pattern.c" 10561 GString* _tmp238_; 10562 glong _tmp239_; 10563 GString* _tmp240_; 10564 GString* _tmp241_; 10565 #line 1083 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10566 in_group_graph_pattern = TRUE; 10567 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10568 _tmp238_ = sql; 10569 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10570 _tmp239_ = group_graph_pattern_start; 10571 #line 1085 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10572 g_string_insert (_tmp238_, (gssize) _tmp239_, "SELECT * FROM ("); 10573 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10574 _tmp240_ = sql; 10575 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10576 tracker_sparql_pattern_translate_group_or_union_graph_pattern (self, _tmp240_, &_inner_error_); 10577 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10578 if (_inner_error_ != NULL) { 10579 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10580 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10581 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10582 g_propagate_error (error, _inner_error_); 10583 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10584 _g_free0 (old_graph); 10585 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10586 filters = (g_free (filters), NULL); 10587 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10588 _tracker_sparql_context_unref0 (_result_); 10589 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10590 return NULL; 10591 #line 10587 "tracker-sparql-pattern.c" 10592 } else { 10593 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10594 _g_free0 (old_graph); 10595 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10596 filters = (g_free (filters), NULL); 10597 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10598 _tracker_sparql_context_unref0 (_result_); 10599 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10600 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10601 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10602 g_clear_error (&_inner_error_); 10603 #line 1086 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10604 return NULL; 10605 #line 10601 "tracker-sparql-pattern.c" 10606 } 10607 } 10608 #line 1087 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10609 _tmp241_ = sql; 10610 #line 1087 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10611 g_string_append (_tmp241_, ")"); 10612 #line 10608 "tracker-sparql-pattern.c" 10613 } else { 10614 gboolean _tmp242_; 10615 gboolean _tmp245_; 10616 GString* _tmp246_; 10617 glong _tmp247_; 10618 GString* _tmp248_; 10619 GString* _tmp249_; 10620 GString* _tmp250_; 10621 #line 1089 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10622 _tmp242_ = in_triples_block; 10623 #line 1089 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10624 if (_tmp242_) { 10625 #line 10621 "tracker-sparql-pattern.c" 10626 GString* _tmp243_; 10627 gboolean _tmp244_; 10628 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10629 _tmp243_ = sql; 10630 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10631 _tmp244_ = in_group_graph_pattern; 10632 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10633 tracker_sparql_pattern_end_triples_block (self, _tmp243_, &first_where, _tmp244_, &_inner_error_); 10634 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10635 if (_inner_error_ != NULL) { 10636 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10637 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10638 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10639 g_propagate_error (error, _inner_error_); 10640 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10641 _g_free0 (old_graph); 10642 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10643 filters = (g_free (filters), NULL); 10644 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10645 _tracker_sparql_context_unref0 (_result_); 10646 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10647 return NULL; 10648 #line 10644 "tracker-sparql-pattern.c" 10649 } else { 10650 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10651 _g_free0 (old_graph); 10652 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10653 filters = (g_free (filters), NULL); 10654 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10655 _tracker_sparql_context_unref0 (_result_); 10656 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10657 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10658 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10659 g_clear_error (&_inner_error_); 10660 #line 1090 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10661 return NULL; 10662 #line 10658 "tracker-sparql-pattern.c" 10663 } 10664 } 10665 #line 1091 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10666 in_triples_block = FALSE; 10667 #line 10663 "tracker-sparql-pattern.c" 10668 } 10669 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10670 _tmp245_ = in_group_graph_pattern; 10671 #line 1093 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10672 if (!_tmp245_) { 10673 #line 1094 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10674 in_group_graph_pattern = TRUE; 10675 #line 10671 "tracker-sparql-pattern.c" 10676 } 10677 #line 1097 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10678 _tmp246_ = sql; 10679 #line 1097 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10680 _tmp247_ = group_graph_pattern_start; 10681 #line 1097 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10682 g_string_insert (_tmp246_, (gssize) _tmp247_, "SELECT * FROM ("); 10683 #line 1098 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10684 _tmp248_ = sql; 10685 #line 1098 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10686 g_string_append (_tmp248_, ") NATURAL INNER JOIN ("); 10687 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10688 _tmp249_ = sql; 10689 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10690 tracker_sparql_pattern_translate_group_or_union_graph_pattern (self, _tmp249_, &_inner_error_); 10691 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10692 if (_inner_error_ != NULL) { 10693 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10694 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10695 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10696 g_propagate_error (error, _inner_error_); 10697 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10698 _g_free0 (old_graph); 10699 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10700 filters = (g_free (filters), NULL); 10701 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10702 _tracker_sparql_context_unref0 (_result_); 10703 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10704 return NULL; 10705 #line 10701 "tracker-sparql-pattern.c" 10706 } else { 10707 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10708 _g_free0 (old_graph); 10709 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10710 filters = (g_free (filters), NULL); 10711 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10712 _tracker_sparql_context_unref0 (_result_); 10713 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10714 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10715 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10716 g_clear_error (&_inner_error_); 10717 #line 1099 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10718 return NULL; 10719 #line 10715 "tracker-sparql-pattern.c" 10720 } 10721 } 10722 #line 1100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10723 _tmp250_ = sql; 10724 #line 1100 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10725 g_string_append (_tmp250_, ")"); 10726 #line 10722 "tracker-sparql-pattern.c" 10727 } 10728 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10729 _tmp251_ = old_graph; 10730 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10731 _tmp252_ = g_strdup (_tmp251_); 10732 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10733 _g_free0 (self->current_graph); 10734 #line 1103 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10735 self->current_graph = _tmp252_; 10736 #line 1104 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10737 _tmp253_ = old_graph_is_var; 10738 #line 1104 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10739 self->priv->current_graph_is_var = _tmp253_; 10740 #line 1077 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10741 _g_free0 (old_graph); 10742 #line 10738 "tracker-sparql-pattern.c" 10743 } else { 10744 TrackerSparqlTokenType _tmp254_ = 0; 10745 #line 1105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10746 _tmp254_ = tracker_sparql_pattern_current (self); 10747 #line 1105 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10748 if (_tmp254_ == TRACKER_SPARQL_TOKEN_TYPE_OPEN_BRACE) { 10749 #line 10745 "tracker-sparql-pattern.c" 10750 gboolean _tmp255_ = FALSE; 10751 gboolean _tmp256_; 10752 gboolean _tmp258_; 10753 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10754 _tmp256_ = in_triples_block; 10755 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10756 if (!_tmp256_) { 10757 #line 10753 "tracker-sparql-pattern.c" 10758 gboolean _tmp257_; 10759 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10760 _tmp257_ = in_group_graph_pattern; 10761 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10762 _tmp255_ = !_tmp257_; 10763 #line 10759 "tracker-sparql-pattern.c" 10764 } else { 10765 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10766 _tmp255_ = FALSE; 10767 #line 10763 "tracker-sparql-pattern.c" 10768 } 10769 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10770 _tmp258_ = _tmp255_; 10771 #line 1106 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10772 if (_tmp258_) { 10773 #line 10769 "tracker-sparql-pattern.c" 10774 GString* _tmp259_; 10775 glong _tmp260_; 10776 GString* _tmp261_; 10777 GString* _tmp262_; 10778 #line 1107 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10779 in_group_graph_pattern = TRUE; 10780 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10781 _tmp259_ = sql; 10782 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10783 _tmp260_ = group_graph_pattern_start; 10784 #line 1109 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10785 g_string_insert (_tmp259_, (gssize) _tmp260_, "SELECT * FROM ("); 10786 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10787 _tmp261_ = sql; 10788 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10789 tracker_sparql_pattern_translate_group_or_union_graph_pattern (self, _tmp261_, &_inner_error_); 10790 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10791 if (_inner_error_ != NULL) { 10792 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10793 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10794 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10795 g_propagate_error (error, _inner_error_); 10796 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10797 filters = (g_free (filters), NULL); 10798 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10799 _tracker_sparql_context_unref0 (_result_); 10800 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10801 return NULL; 10802 #line 10798 "tracker-sparql-pattern.c" 10803 } else { 10804 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10805 filters = (g_free (filters), NULL); 10806 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10807 _tracker_sparql_context_unref0 (_result_); 10808 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10809 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10810 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10811 g_clear_error (&_inner_error_); 10812 #line 1110 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10813 return NULL; 10814 #line 10810 "tracker-sparql-pattern.c" 10815 } 10816 } 10817 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10818 _tmp262_ = sql; 10819 #line 1111 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10820 g_string_append (_tmp262_, ")"); 10821 #line 10817 "tracker-sparql-pattern.c" 10822 } else { 10823 gboolean _tmp263_; 10824 gboolean _tmp266_; 10825 GString* _tmp267_; 10826 glong _tmp268_; 10827 GString* _tmp269_; 10828 GString* _tmp270_; 10829 GString* _tmp271_; 10830 #line 1113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10831 _tmp263_ = in_triples_block; 10832 #line 1113 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10833 if (_tmp263_) { 10834 #line 10830 "tracker-sparql-pattern.c" 10835 GString* _tmp264_; 10836 gboolean _tmp265_; 10837 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10838 _tmp264_ = sql; 10839 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10840 _tmp265_ = in_group_graph_pattern; 10841 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10842 tracker_sparql_pattern_end_triples_block (self, _tmp264_, &first_where, _tmp265_, &_inner_error_); 10843 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10844 if (_inner_error_ != NULL) { 10845 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10846 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10847 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10848 g_propagate_error (error, _inner_error_); 10849 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10850 filters = (g_free (filters), NULL); 10851 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10852 _tracker_sparql_context_unref0 (_result_); 10853 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10854 return NULL; 10855 #line 10851 "tracker-sparql-pattern.c" 10856 } else { 10857 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10858 filters = (g_free (filters), NULL); 10859 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10860 _tracker_sparql_context_unref0 (_result_); 10861 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10862 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10863 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10864 g_clear_error (&_inner_error_); 10865 #line 1114 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10866 return NULL; 10867 #line 10863 "tracker-sparql-pattern.c" 10868 } 10869 } 10870 #line 1115 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10871 in_triples_block = FALSE; 10872 #line 10868 "tracker-sparql-pattern.c" 10873 } 10874 #line 1117 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10875 _tmp266_ = in_group_graph_pattern; 10876 #line 1117 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10877 if (!_tmp266_) { 10878 #line 1118 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10879 in_group_graph_pattern = TRUE; 10880 #line 10876 "tracker-sparql-pattern.c" 10881 } 10882 #line 1121 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10883 _tmp267_ = sql; 10884 #line 1121 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10885 _tmp268_ = group_graph_pattern_start; 10886 #line 1121 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10887 g_string_insert (_tmp267_, (gssize) _tmp268_, "SELECT * FROM ("); 10888 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10889 _tmp269_ = sql; 10890 #line 1122 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10891 g_string_append (_tmp269_, ") NATURAL INNER JOIN ("); 10892 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10893 _tmp270_ = sql; 10894 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10895 tracker_sparql_pattern_translate_group_or_union_graph_pattern (self, _tmp270_, &_inner_error_); 10896 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10897 if (_inner_error_ != NULL) { 10898 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10899 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10900 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10901 g_propagate_error (error, _inner_error_); 10902 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10903 filters = (g_free (filters), NULL); 10904 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10905 _tracker_sparql_context_unref0 (_result_); 10906 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10907 return NULL; 10908 #line 10904 "tracker-sparql-pattern.c" 10909 } else { 10910 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10911 filters = (g_free (filters), NULL); 10912 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10913 _tracker_sparql_context_unref0 (_result_); 10914 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10915 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10916 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10917 g_clear_error (&_inner_error_); 10918 #line 1123 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10919 return NULL; 10920 #line 10916 "tracker-sparql-pattern.c" 10921 } 10922 } 10923 #line 1124 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10924 _tmp271_ = sql; 10925 #line 1124 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10926 g_string_append (_tmp271_, ")"); 10927 #line 10923 "tracker-sparql-pattern.c" 10928 } 10929 } else { 10930 TrackerSparqlTokenType _tmp272_ = 0; 10931 #line 1126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10932 _tmp272_ = tracker_sparql_pattern_current (self);
variable '_tmp273__length1' set but not used
(emitted by gcc)
10933 #line 1126 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10934 if (_tmp272_ == TRACKER_SPARQL_TOKEN_TYPE_FILTER) { 10935 #line 10931 "tracker-sparql-pattern.c" 10936 TrackerSourceLocation* _tmp273_; 10937 gint _tmp273__length1; 10938 TrackerSourceLocation _tmp274_ = {0}; 10939 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10940 _tmp273_ = filters;
Value stored to '_tmp273_' is never read
(emitted by clang-analyzer)

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

10941 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10942 _tmp273__length1 = filters_length1;
Value stored to '_tmp273__length1' is never read
(emitted by clang-analyzer)

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

10943 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10944 tracker_sparql_pattern_get_location (self, &_tmp274_); 10945 #line 1127 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10946 _vala_array_add8 (&filters, &filters_length1, &_filters_size_, &_tmp274_); 10947 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10948 tracker_sparql_pattern_skip_filter (self, &_inner_error_); 10949 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10950 if (_inner_error_ != NULL) { 10951 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10952 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10953 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10954 g_propagate_error (error, _inner_error_); 10955 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10956 filters = (g_free (filters), NULL); 10957 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10958 _tracker_sparql_context_unref0 (_result_); 10959 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10960 return NULL; 10961 #line 10957 "tracker-sparql-pattern.c" 10962 } else { 10963 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10964 filters = (g_free (filters), NULL); 10965 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10966 _tracker_sparql_context_unref0 (_result_); 10967 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10968 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 10969 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10970 g_clear_error (&_inner_error_); 10971 #line 1128 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10972 return NULL; 10973 #line 10969 "tracker-sparql-pattern.c" 10974 } 10975 } 10976 } else { 10977 #line 1130 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10978 break; 10979 #line 10975 "tracker-sparql-pattern.c" 10980 } 10981 } 10982 } 10983 } 10984 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10985 tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_DOT, &_inner_error_); 10986 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10987 if (_inner_error_ != NULL) { 10988 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10989 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 10990 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10991 g_propagate_error (error, _inner_error_); 10992 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10993 filters = (g_free (filters), NULL); 10994 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10995 _tracker_sparql_context_unref0 (_result_); 10996 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 10997 return NULL; 10998 #line 10994 "tracker-sparql-pattern.c" 10999 } else { 11000 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11001 filters = (g_free (filters), NULL); 11002 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11003 _tracker_sparql_context_unref0 (_result_); 11004 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11005 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11006 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11007 g_clear_error (&_inner_error_); 11008 #line 1133 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11009 return NULL; 11010 #line 11006 "tracker-sparql-pattern.c" 11011 } 11012 } 11013 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11014 _tmp275_ = sql; 11015 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11016 _tmp276_ = group_graph_pattern_start; 11017 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11018 _tmp277_ = found_simple_optional; 11019 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11020 tracker_sparql_pattern_parse_triples (self, _tmp275_, _tmp276_, &in_triples_block, &first_where, &in_group_graph_pattern, _tmp277_, &_inner_error_); 11021 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11022 if (_inner_error_ != NULL) { 11023 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11024 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11025 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11026 g_propagate_error (error, _inner_error_); 11027 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11028 filters = (g_free (filters), NULL); 11029 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11030 _tracker_sparql_context_unref0 (_result_); 11031 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11032 return NULL; 11033 #line 11029 "tracker-sparql-pattern.c" 11034 } else { 11035 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11036 filters = (g_free (filters), NULL); 11037 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11038 _tracker_sparql_context_unref0 (_result_); 11039 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11040 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11041 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11042 g_clear_error (&_inner_error_); 11043 #line 1136 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11044 return NULL; 11045 #line 11041 "tracker-sparql-pattern.c" 11046 } 11047 } 11048 } 11049 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11050 tracker_sparql_pattern_expect (self, TRACKER_SPARQL_TOKEN_TYPE_CLOSE_BRACE, &_inner_error_); 11051 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11052 if (_inner_error_ != NULL) { 11053 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11054 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11055 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11056 g_propagate_error (error, _inner_error_); 11057 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11058 filters = (g_free (filters), NULL); 11059 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11060 _tracker_sparql_context_unref0 (_result_); 11061 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11062 return NULL; 11063 #line 11059 "tracker-sparql-pattern.c" 11064 } else { 11065 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11066 filters = (g_free (filters), NULL); 11067 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11068 _tracker_sparql_context_unref0 (_result_); 11069 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11070 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11071 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11072 g_clear_error (&_inner_error_); 11073 #line 1139 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11074 return NULL; 11075 #line 11071 "tracker-sparql-pattern.c" 11076 } 11077 } 11078 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11079 _tmp279_ = in_triples_block; 11080 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11081 if (!_tmp279_) { 11082 #line 11078 "tracker-sparql-pattern.c" 11083 gboolean _tmp280_; 11084 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11085 _tmp280_ = in_group_graph_pattern; 11086 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11087 _tmp278_ = !_tmp280_; 11088 #line 11084 "tracker-sparql-pattern.c" 11089 } else { 11090 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11091 _tmp278_ = FALSE; 11092 #line 11088 "tracker-sparql-pattern.c" 11093 } 11094 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11095 _tmp281_ = _tmp278_; 11096 #line 1141 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11097 if (_tmp281_) { 11098 #line 11094 "tracker-sparql-pattern.c" 11099 GString* _tmp282_; 11100 #line 1143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11101 _tmp282_ = sql; 11102 #line 1143 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11103 g_string_append (_tmp282_, "SELECT 1"); 11104 #line 11100 "tracker-sparql-pattern.c" 11105 } else { 11106 gboolean _tmp283_; 11107 #line 1144 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11108 _tmp283_ = in_triples_block; 11109 #line 1144 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11110 if (_tmp283_) { 11111 #line 11107 "tracker-sparql-pattern.c" 11112 GString* _tmp284_; 11113 gboolean _tmp285_; 11114 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11115 _tmp284_ = sql; 11116 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11117 _tmp285_ = in_group_graph_pattern; 11118 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11119 tracker_sparql_pattern_end_triples_block (self, _tmp284_, &first_where, _tmp285_, &_inner_error_); 11120 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11121 if (_inner_error_ != NULL) { 11122 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11123 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11124 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11125 g_propagate_error (error, _inner_error_); 11126 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11127 filters = (g_free (filters), NULL); 11128 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11129 _tracker_sparql_context_unref0 (_result_); 11130 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11131 return NULL; 11132 #line 11128 "tracker-sparql-pattern.c" 11133 } else { 11134 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11135 filters = (g_free (filters), NULL); 11136 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11137 _tracker_sparql_context_unref0 (_result_); 11138 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11139 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11140 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11141 g_clear_error (&_inner_error_); 11142 #line 1145 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11143 return NULL; 11144 #line 11140 "tracker-sparql-pattern.c" 11145 } 11146 } 11147 #line 1146 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11148 in_triples_block = FALSE; 11149 #line 11145 "tracker-sparql-pattern.c" 11150 } 11151 } 11152 #line 1149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11153 _tmp286_ = in_group_graph_pattern; 11154 #line 1149 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11155 if (_tmp286_) { 11156 #line 1150 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11157 first_where = TRUE; 11158 #line 11154 "tracker-sparql-pattern.c" 11159 } 11160 #line 1154 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11161 _tmp287_ = filters;
Value stored to '_tmp287_' is never read
(emitted by clang-analyzer)

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

11162 #line 1154 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11163 _tmp287__length1 = filters_length1; 11164 #line 1154 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11165 if (_tmp287__length1 > 0) { 11166 #line 11162 "tracker-sparql-pattern.c" 11167 TrackerSourceLocation _tmp288_ = {0}; 11168 TrackerSourceLocation end; 11169 TrackerSourceLocation* _tmp289_; 11170 gint _tmp289__length1; 11171 TrackerSourceLocation _tmp295_; 11172 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11173 tracker_sparql_pattern_get_location (self, &_tmp288_); 11174 #line 1155 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11175 end = _tmp288_; 11176 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11177 _tmp289_ = filters; 11178 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11179 _tmp289__length1 = filters_length1; 11180 #line 11176 "tracker-sparql-pattern.c" 11181 { 11182 TrackerSourceLocation* filter_location_collection = NULL; 11183 gint filter_location_collection_length1 = 0; 11184 gint _filter_location_collection_size_ = 0; 11185 gint filter_location_it = 0; 11186 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11187 filter_location_collection = _tmp289_; 11188 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11189 filter_location_collection_length1 = _tmp289__length1;
Value stored to 'filter_location_collection_length1' is never read
(emitted by clang-analyzer)

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

11190 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11191 for (filter_location_it = 0; filter_location_it < _tmp289__length1; filter_location_it = filter_location_it + 1) { 11192 #line 11188 "tracker-sparql-pattern.c" 11193 TrackerSourceLocation filter_location = {0};
Value stored to 'filter_location' during its initialization is never read
(emitted by clang-analyzer)

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

11194 #line 1157 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11195 filter_location = filter_location_collection[filter_location_it]; 11196 #line 11192 "tracker-sparql-pattern.c" 11197 { 11198 gboolean _tmp290_; 11199 TrackerSourceLocation _tmp293_; 11200 GString* _tmp294_; 11201 #line 1158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11202 _tmp290_ = first_where; 11203 #line 1158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11204 if (!_tmp290_) { 11205 #line 11201 "tracker-sparql-pattern.c" 11206 GString* _tmp291_; 11207 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11208 _tmp291_ = sql; 11209 #line 1159 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11210 g_string_append (_tmp291_, " AND "); 11211 #line 11207 "tracker-sparql-pattern.c" 11212 } else { 11213 GString* _tmp292_; 11214 #line 1161 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11215 _tmp292_ = sql; 11216 #line 1161 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11217 g_string_append (_tmp292_, " WHERE "); 11218 #line 1162 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11219 first_where = FALSE; 11220 #line 11216 "tracker-sparql-pattern.c" 11221 } 11222 #line 1165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11223 _tmp293_ = filter_location; 11224 #line 1165 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11225 tracker_sparql_pattern_set_location (self, &_tmp293_); 11226 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11227 _tmp294_ = sql; 11228 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11229 tracker_sparql_pattern_translate_filter (self, _tmp294_, &_inner_error_); 11230 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11231 if (_inner_error_ != NULL) { 11232 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11233 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11234 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11235 g_propagate_error (error, _inner_error_); 11236 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11237 filters = (g_free (filters), NULL); 11238 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11239 _tracker_sparql_context_unref0 (_result_); 11240 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11241 return NULL; 11242 #line 11238 "tracker-sparql-pattern.c" 11243 } else { 11244 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11245 filters = (g_free (filters), NULL); 11246 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11247 _tracker_sparql_context_unref0 (_result_); 11248 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11249 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11250 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11251 g_clear_error (&_inner_error_); 11252 #line 1166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11253 return NULL; 11254 #line 11250 "tracker-sparql-pattern.c" 11255 } 11256 } 11257 } 11258 } 11259 } 11260 #line 1169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11261 _tmp295_ = end; 11262 #line 1169 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11263 tracker_sparql_pattern_set_location (self, &_tmp295_); 11264 #line 11260 "tracker-sparql-pattern.c" 11265 } 11266 #line 1172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11267 _tmp296_ = tracker_sparql_pattern_get_context (self); 11268 #line 1172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11269 _tmp297_ = _tmp296_; 11270 #line 1172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11271 _tmp298_ = _tmp297_->parent_context; 11272 #line 1172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11273 tracker_sparql_pattern_set_context (self, _tmp298_); 11274 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11275 result = _result_; 11276 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11277 filters = (g_free (filters), NULL); 11278 #line 1173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11279 return result; 11280 #line 11276 "tracker-sparql-pattern.c" 11281 } 11282 11283 11284 static void _vala_array_add9 (glong** array, int* length, int* size, glong value) { 11285 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11286 if ((*length) == (*size)) { 11287 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11288 *size = (*size) ? (2 * (*size)) : 4; 11289 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11290 *array = g_renew (glong, *array, *size); 11291 #line 11287 "tracker-sparql-pattern.c" 11292 } 11293 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11294 (*array)[(*length)++] = value; 11295 #line 11291 "tracker-sparql-pattern.c" 11296 } 11297 11298 11299 static void _vala_array_add10 (TrackerSparqlContext*** array, int* length, int* size, TrackerSparqlContext* value) { 11300 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11301 if ((*length) == (*size)) { 11302 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11303 *size = (*size) ? (2 * (*size)) : 4; 11304 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11305 *array = g_renew (TrackerSparqlContext*, *array, (*size) + 1); 11306 #line 11302 "tracker-sparql-pattern.c" 11307 } 11308 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11309 (*array)[(*length)++] = value; 11310 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11311 (*array)[*length] = NULL; 11312 #line 11308 "tracker-sparql-pattern.c" 11313 } 11314 11315 11316 static gpointer _tracker_sparql_context_ref0 (gpointer self) { 11317 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11318 return self ? tracker_sparql_context_ref (self) : NULL; 11319 #line 11315 "tracker-sparql-pattern.c" 11320 } 11321 11322 11323 static void _vala_array_add11 (TrackerSparqlVariable*** array, int* length, int* size, TrackerSparqlVariable* value) { 11324 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11325 if ((*length) == (*size)) { 11326 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11327 *size = (*size) ? (2 * (*size)) : 4; 11328 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11329 *array = g_renew (TrackerSparqlVariable*, *array, (*size) + 1); 11330 #line 11326 "tracker-sparql-pattern.c" 11331 } 11332 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11333 (*array)[(*length)++] = value; 11334 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11335 (*array)[*length] = NULL; 11336 #line 11332 "tracker-sparql-pattern.c" 11337 } 11338 11339 11340 static void tracker_sparql_pattern_translate_group_or_union_graph_pattern (TrackerSparqlPattern* self, GString* sql, GError** error) { 11341 TrackerSparqlVariable** _tmp0_ = NULL; 11342 TrackerSparqlVariable** all_vars; 11343 gint all_vars_length1; 11344 gint _all_vars_size_; 11345 GDestroyNotify _tmp1_; 11346 GHashTable* _tmp2_; 11347 GHashTable* all_var_set; 11348 TrackerSparqlContext** _tmp3_ = NULL; 11349 TrackerSparqlContext** contexts; 11350 gint contexts_length1; 11351 gint _contexts_size_; 11352 glong* _tmp4_ = NULL; 11353 glong* offsets; 11354 gint offsets_length1; 11355 gint _offsets_size_; 11356 TrackerSparqlContext** _tmp16_; 11357 gint _tmp16__length1; 11358 GError * _inner_error_ = NULL; 11359 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11360 g_return_if_fail (self != NULL); 11361 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11362 g_return_if_fail (sql != NULL); 11363 #line 1177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11364 _tmp0_ = g_new0 (TrackerSparqlVariable*, 0 + 1); 11365 #line 1177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11366 all_vars = _tmp0_; 11367 #line 1177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11368 all_vars_length1 = 0; 11369 #line 1177 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11370 _all_vars_size_ = all_vars_length1; 11371 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11372 _tmp1_ = g_object_unref; 11373 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11374 _tmp2_ = g_hash_table_new_full (_tracker_sparql_variable_hash_ghash_func, _tracker_sparql_variable_equal_gequal_func, _tmp1_, NULL); 11375 #line 1178 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11376 all_var_set = _tmp2_; 11377 #line 1180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11378 _tmp3_ = g_new0 (TrackerSparqlContext*, 0 + 1); 11379 #line 1180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11380 contexts = _tmp3_; 11381 #line 1180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11382 contexts_length1 = 0; 11383 #line 1180 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11384 _contexts_size_ = contexts_length1; 11385 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11386 _tmp4_ = g_new0 (glong, 0); 11387 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11388 offsets = _tmp4_; 11389 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11390 offsets_length1 = 0; 11391 #line 1181 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11392 _offsets_size_ = offsets_length1; 11393 #line 11389 "tracker-sparql-pattern.c" 11394 { 11395 gboolean _tmp5_; 11396 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11397 _tmp5_ = TRUE; 11398 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11399 while (TRUE) { 11400 #line 11396 "tracker-sparql-pattern.c" 11401 gboolean _tmp6_; 11402 glong* _tmp9_; 11403 gint _tmp9__length1; 11404 GString* _tmp10_; 11405 gssize _tmp11_;
variable '_tmp15__length1' set but not used
(emitted by gcc)
11406 GString* _tmp12_; 11407 TrackerSparqlContext* _tmp13_ = NULL; 11408 TrackerSparqlContext* _tmp14_; 11409 TrackerSparqlContext** _tmp15_; 11410 gint _tmp15__length1; 11411 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11412 _tmp6_ = _tmp5_; 11413 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11414 if (!_tmp6_) { 11415 #line 11411 "tracker-sparql-pattern.c" 11416 gboolean _tmp7_ = FALSE; 11417 gboolean _tmp8_; 11418 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11419 _tmp7_ = tracker_sparql_pattern_accept (self, TRACKER_SPARQL_TOKEN_TYPE_UNION, &_inner_error_); 11420 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11421 _tmp8_ = _tmp7_; 11422 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11423 if (_inner_error_ != NULL) { 11424 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11425 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11426 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11427 g_propagate_error (error, _inner_error_); 11428 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11429 offsets = (g_free (offsets), NULL); 11430 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11431 contexts = (_vala_array_free (contexts, contexts_length1, (GDestroyNotify) tracker_sparql_context_unref), NULL); 11432 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11433 _g_hash_table_unref0 (all_var_set); 11434 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11435 all_vars = (_vala_array_free (all_vars, all_vars_length1, (GDestroyNotify) g_object_unref), NULL); 11436 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11437 return; 11438 #line 11434 "tracker-sparql-pattern.c" 11439 } else { 11440 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11441 offsets = (g_free (offsets), NULL); 11442 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11443 contexts = (_vala_array_free (contexts, contexts_length1, (GDestroyNotify) tracker_sparql_context_unref), NULL); 11444 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11445 _g_hash_table_unref0 (all_var_set); 11446 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11447 all_vars = (_vala_array_free (all_vars, all_vars_length1, (GDestroyNotify) g_object_unref), NULL); 11448 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11449 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11450 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11451 g_clear_error (&_inner_error_); 11452 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11453 return; 11454 #line 11450 "tracker-sparql-pattern.c" 11455 } 11456 } 11457 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11458 if (!_tmp8_) { 11459 #line 1186 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11460 break; 11461 #line 11457 "tracker-sparql-pattern.c" 11462 } 11463 } 11464 #line 1183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11465 _tmp5_ = FALSE; 11466 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11467 _tmp9_ = offsets;
Value stored to '_tmp9_' is never read
(emitted by clang-analyzer)

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

11468 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11469 _tmp9__length1 = offsets_length1;
Value stored to '_tmp9__length1' is never read
(emitted by clang-analyzer)

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

11470 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11471 _tmp10_ = sql; 11472 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11473 _tmp11_ = _tmp10_->len; 11474 #line 1184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11475 _vala_array_add9 (&offsets, &offsets_length1, &_offsets_size_, (glong) _tmp11_); 11476 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11477 _tmp12_ = sql; 11478 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11479 _tmp13_ = tracker_sparql_pattern_translate_group_graph_pattern (self, _tmp12_, &_inner_error_); 11480 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11481 _tmp14_ = _tmp13_; 11482 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11483 if (_inner_error_ != NULL) { 11484 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11485 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 11486 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11487 g_propagate_error (error, _inner_error_); 11488 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11489 offsets = (g_free (offsets), NULL); 11490 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11491 contexts = (_vala_array_free (contexts, contexts_length1, (GDestroyNotify) tracker_sparql_context_unref), NULL); 11492 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11493 _g_hash_table_unref0 (all_var_set); 11494 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11495 all_vars = (_vala_array_free (all_vars, all_vars_length1, (GDestroyNotify) g_object_unref), NULL); 11496 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11497 return; 11498 #line 11494 "tracker-sparql-pattern.c" 11499 } else { 11500 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11501 offsets = (g_free (offsets), NULL); 11502 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11503 contexts = (_vala_array_free (contexts, contexts_length1, (GDestroyNotify) tracker_sparql_context_unref), NULL); 11504 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11505 _g_hash_table_unref0 (all_var_set); 11506 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11507 all_vars = (_vala_array_free (all_vars, all_vars_length1, (GDestroyNotify) g_object_unref), NULL); 11508 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11509 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 11510 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11511 g_clear_error (&_inner_error_); 11512 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11513 return; 11514 #line 11510 "tracker-sparql-pattern.c" 11515 } 11516 } 11517 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11518 _tmp15_ = contexts;
Value stored to '_tmp15_' is never read
(emitted by clang-analyzer)

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

11519 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11520 _tmp15__length1 = contexts_length1;
Value stored to '_tmp15__length1' is never read
(emitted by clang-analyzer)

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

11521 #line 1185 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11522 _vala_array_add10 (&contexts, &contexts_length1, &_contexts_size_, _tmp14_); 11523 #line 11519 "tracker-sparql-pattern.c" 11524 } 11525 } 11526 #line 1188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11527 _tmp16_ = contexts;
Value stored to '_tmp16_' is never read
(emitted by clang-analyzer)

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

11528 #line 1188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11529 _tmp16__length1 = contexts_length1; 11530 #line 1188 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11531 if (_tmp16__length1 > 1) { 11532 #line 11528 "tracker-sparql-pattern.c" 11533 TrackerSparqlContext** _tmp17_; 11534 gint _tmp17__length1; 11535 glong extra_offset; 11536 GString* _tmp72_; 11537 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11538 _tmp17_ = contexts; 11539 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11540 _tmp17__length1 = contexts_length1; 11541 #line 11537 "tracker-sparql-pattern.c" 11542 { 11543 TrackerSparqlContext** sub_context_collection = NULL; 11544 gint sub_context_collection_length1 = 0; 11545 gint _sub_context_collection_size_ = 0; 11546 gint sub_context_it = 0; 11547 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11548 sub_context_collection = _tmp17_; 11549 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11550 sub_context_collection_length1 = _tmp17__length1;
Value stored to 'sub_context_collection_length1' is never read
(emitted by clang-analyzer)

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

11551 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11552 for (sub_context_it = 0; sub_context_it < _tmp17__length1; sub_context_it = sub_context_it + 1) { 11553 #line 11549 "tracker-sparql-pattern.c" 11554 TrackerSparqlContext* _tmp18_; 11555 TrackerSparqlContext* sub_context = NULL; 11556 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11557 _tmp18_ = _tracker_sparql_context_ref0 (sub_context_collection[sub_context_it]); 11558 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11559 sub_context = _tmp18_; 11560 #line 11556 "tracker-sparql-pattern.c" 11561 { 11562 TrackerSparqlContext* _tmp19_; 11563 GHashTable* _tmp20_; 11564 GList* _tmp21_ = NULL; 11565 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11566 _tmp19_ = sub_context; 11567 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11568 _tmp20_ = _tmp19_->var_set; 11569 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11570 _tmp21_ = g_hash_table_get_keys (_tmp20_); 11571 #line 11567 "tracker-sparql-pattern.c" 11572 { 11573 GList* v_collection = NULL; 11574 GList* v_it = NULL; 11575 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11576 v_collection = _tmp21_; 11577 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11578 for (v_it = v_collection; v_it != NULL; v_it = v_it->next) { 11579 #line 11575 "tracker-sparql-pattern.c" 11580 TrackerSparqlVariable* v = NULL; 11581 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11582 v = (TrackerSparqlVariable*) v_it->data; 11583 #line 11579 "tracker-sparql-pattern.c" 11584 { 11585 GHashTable* _tmp22_; 11586 TrackerSparqlVariable* _tmp23_; 11587 gconstpointer _tmp24_ = NULL; 11588 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11589 _tmp22_ = all_var_set; 11590 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11591 _tmp23_ = v; 11592 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11593 _tmp24_ = g_hash_table_lookup (_tmp22_, _tmp23_); 11594 #line 1194 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11595 if (((gint) ((gintptr) _tmp24_)) == 0) { 11596 #line 11592 "tracker-sparql-pattern.c" 11597 TrackerSparqlVariable** _tmp25_; 11598 gint _tmp25__length1; 11599 TrackerSparqlVariable* _tmp26_; 11600 TrackerSparqlVariable* _tmp27_; 11601 GHashTable* _tmp28_; 11602 TrackerSparqlVariable* _tmp29_; 11603 TrackerSparqlVariable* _tmp30_; 11604 TrackerSparqlContext* _tmp31_; 11605 TrackerSparqlContext* _tmp32_; 11606 GHashTable* _tmp33_; 11607 TrackerSparqlVariable* _tmp34_; 11608 TrackerSparqlVariable* _tmp35_; 11609 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11610 _tmp25_ = all_vars;
Value stored to '_tmp25_' is never read
(emitted by clang-analyzer)

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

11611 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11612 _tmp25__length1 = all_vars_length1;
Value stored to '_tmp25__length1' is never read
(emitted by clang-analyzer)

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

11613 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11614 _tmp26_ = v; 11615 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11616 _tmp27_ = _g_object_ref0 (_tmp26_); 11617 #line 1195 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11618 _vala_array_add11 (&all_vars, &all_vars_length1, &_all_vars_size_, _tmp27_); 11619 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11620 _tmp28_ = all_var_set; 11621 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11622 _tmp29_ = v; 11623 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11624 _tmp30_ = _g_object_ref0 (_tmp29_); 11625 #line 1196 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11626 g_hash_table_insert (_tmp28_, _tmp30_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 11627 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11628 _tmp31_ = tracker_sparql_pattern_get_context (self); 11629 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11630 _tmp32_ = _tmp31_; 11631 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11632 _tmp33_ = _tmp32_->var_set; 11633 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11634 _tmp34_ = v; 11635 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11636 _tmp35_ = _g_object_ref0 (_tmp34_); 11637 #line 1197 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11638 g_hash_table_insert (_tmp33_, _tmp35_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 11639 #line 11635 "tracker-sparql-pattern.c" 11640 } 11641 } 11642 } 11643 #line 1193 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11644 _g_list_free0 (v_collection); 11645 #line 11641 "tracker-sparql-pattern.c" 11646 } 11647 #line 1192 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11648 _tracker_sparql_context_unref0 (sub_context); 11649 #line 11645 "tracker-sparql-pattern.c" 11650 } 11651 } 11652 } 11653 #line 1202 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11654 extra_offset = (glong) 0; 11655 #line 11651 "tracker-sparql-pattern.c" 11656 { 11657 gint i; 11658 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11659 i = 0; 11660 #line 11656 "tracker-sparql-pattern.c" 11661 { 11662 gboolean _tmp36_; 11663 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11664 _tmp36_ = TRUE; 11665 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11666 while (TRUE) { 11667 #line 11663 "tracker-sparql-pattern.c" 11668 gboolean _tmp37_; 11669 gint _tmp39_; 11670 TrackerSparqlContext** _tmp40_; 11671 gint _tmp40__length1; 11672 GString* _tmp41_; 11673 GString* projection; 11674 gint _tmp42_; 11675 GString* _tmp44_; 11676 TrackerSparqlVariable** _tmp45_; 11677 gint _tmp45__length1; 11678 GString* _tmp58_; 11679 GString* _tmp59_; 11680 gssize _tmp60_; 11681 GString* _tmp61_; 11682 GString* _tmp62_; 11683 glong* _tmp63_; 11684 gint _tmp63__length1; 11685 gint _tmp64_; 11686 glong _tmp65_; 11687 glong _tmp66_; 11688 GString* _tmp67_; 11689 const gchar* _tmp68_; 11690 glong _tmp69_; 11691 GString* _tmp70_; 11692 gssize _tmp71_; 11693 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11694 _tmp37_ = _tmp36_; 11695 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11696 if (!_tmp37_) { 11697 #line 11693 "tracker-sparql-pattern.c" 11698 gint _tmp38_; 11699 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11700 _tmp38_ = i; 11701 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11702 i = _tmp38_ + 1; 11703 #line 11699 "tracker-sparql-pattern.c" 11704 } 11705 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11706 _tmp36_ = FALSE; 11707 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11708 _tmp39_ = i; 11709 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11710 _tmp40_ = contexts;
Value stored to '_tmp40_' is never read
(emitted by clang-analyzer)

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

11711 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11712 _tmp40__length1 = contexts_length1; 11713 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11714 if (!(_tmp39_ < _tmp40__length1)) { 11715 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11716 break; 11717 #line 11713 "tracker-sparql-pattern.c" 11718 } 11719 #line 1204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11720 _tmp41_ = g_string_new (""); 11721 #line 1204 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11722 projection = _tmp41_; 11723 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11724 _tmp42_ = i; 11725 #line 1205 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11726 if (_tmp42_ > 0) { 11727 #line 11723 "tracker-sparql-pattern.c" 11728 GString* _tmp43_; 11729 #line 1206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11730 _tmp43_ = projection; 11731 #line 1206 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11732 g_string_append (_tmp43_, ") UNION ALL "); 11733 #line 11729 "tracker-sparql-pattern.c" 11734 } 11735 #line 1208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11736 _tmp44_ = projection; 11737 #line 1208 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11738 g_string_append (_tmp44_, "SELECT "); 11739 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11740 _tmp45_ = all_vars; 11741 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11742 _tmp45__length1 = all_vars_length1; 11743 #line 11739 "tracker-sparql-pattern.c" 11744 { 11745 TrackerSparqlVariable** v_collection = NULL; 11746 gint v_collection_length1 = 0; 11747 gint _v_collection_size_ = 0; 11748 gint v_it = 0; 11749 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11750 v_collection = _tmp45_; 11751 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11752 v_collection_length1 = _tmp45__length1;
Value stored to 'v_collection_length1' is never read
(emitted by clang-analyzer)

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

11753 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11754 for (v_it = 0; v_it < _tmp45__length1; v_it = v_it + 1) { 11755 #line 11751 "tracker-sparql-pattern.c" 11756 TrackerSparqlVariable* _tmp46_; 11757 TrackerSparqlVariable* v = NULL; 11758 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11759 _tmp46_ = _g_object_ref0 (v_collection[v_it]); 11760 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11761 v = _tmp46_; 11762 #line 11758 "tracker-sparql-pattern.c" 11763 { 11764 TrackerSparqlContext** _tmp47_; 11765 gint _tmp47__length1; 11766 gint _tmp48_; 11767 TrackerSparqlContext* _tmp49_; 11768 GHashTable* _tmp50_; 11769 TrackerSparqlVariable* _tmp51_; 11770 gconstpointer _tmp52_ = NULL; 11771 GString* _tmp54_; 11772 TrackerSparqlVariable* _tmp55_; 11773 const gchar* _tmp56_; 11774 const gchar* _tmp57_; 11775 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11776 _tmp47_ = contexts; 11777 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11778 _tmp47__length1 = contexts_length1;
Value stored to '_tmp47__length1' is never read
(emitted by clang-analyzer)

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

11779 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11780 _tmp48_ = i; 11781 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11782 _tmp49_ = _tmp47_[_tmp48_]; 11783 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11784 _tmp50_ = _tmp49_->var_set; 11785 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11786 _tmp51_ = v; 11787 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11788 _tmp52_ = g_hash_table_lookup (_tmp50_, _tmp51_); 11789 #line 1210 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11790 if (((gint) ((gintptr) _tmp52_)) == 0) { 11791 #line 11787 "tracker-sparql-pattern.c" 11792 GString* _tmp53_; 11793 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11794 _tmp53_ = projection; 11795 #line 1213 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11796 g_string_append (_tmp53_, "NULL AS "); 11797 #line 11793 "tracker-sparql-pattern.c" 11798 } 11799 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11800 _tmp54_ = projection; 11801 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11802 _tmp55_ = v; 11803 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11804 _tmp56_ = tracker_sparql_variable_get_sql_expression (_tmp55_); 11805 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11806 _tmp57_ = _tmp56_; 11807 #line 1215 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11808 g_string_append_printf (_tmp54_, "%s, ", _tmp57_); 11809 #line 1209 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11810 _g_object_unref0 (v); 11811 #line 11807 "tracker-sparql-pattern.c" 11812 } 11813 } 11814 } 11815 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11816 _tmp58_ = projection; 11817 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11818 _tmp59_ = projection; 11819 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11820 _tmp60_ = _tmp59_->len; 11821 #line 1218 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11822 g_string_truncate (_tmp58_, (gsize) (_tmp60_ - 2)); 11823 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11824 _tmp61_ = projection; 11825 #line 1219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11826 g_string_append (_tmp61_, " FROM ("); 11827 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11828 _tmp62_ = sql; 11829 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11830 _tmp63_ = offsets; 11831 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11832 _tmp63__length1 = offsets_length1;
Value stored to '_tmp63__length1' is never read
(emitted by clang-analyzer)

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

11833 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11834 _tmp64_ = i; 11835 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11836 _tmp65_ = _tmp63_[_tmp64_]; 11837 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11838 _tmp66_ = extra_offset; 11839 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11840 _tmp67_ = projection; 11841 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11842 _tmp68_ = _tmp67_->str; 11843 #line 1221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11844 g_string_insert (_tmp62_, (gssize) (_tmp65_ + _tmp66_), _tmp68_); 11845 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11846 _tmp69_ = extra_offset; 11847 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11848 _tmp70_ = projection; 11849 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11850 _tmp71_ = _tmp70_->len; 11851 #line 1222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11852 extra_offset = _tmp69_ + _tmp71_; 11853 #line 1203 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11854 _g_string_free0 (projection); 11855 #line 11851 "tracker-sparql-pattern.c" 11856 } 11857 } 11858 } 11859 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11860 _tmp72_ = sql; 11861 #line 1224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11862 g_string_append (_tmp72_, ")"); 11863 #line 11859 "tracker-sparql-pattern.c" 11864 } else { 11865 TrackerSparqlContext** _tmp73_; 11866 gint _tmp73__length1; 11867 TrackerSparqlContext* _tmp74_; 11868 GHashTable* _tmp75_; 11869 GList* _tmp76_ = NULL; 11870 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11871 _tmp73_ = contexts; 11872 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11873 _tmp73__length1 = contexts_length1;
Value stored to '_tmp73__length1' is never read
(emitted by clang-analyzer)

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

11874 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11875 _tmp74_ = _tmp73_[0]; 11876 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11877 _tmp75_ = _tmp74_->var_set; 11878 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11879 _tmp76_ = g_hash_table_get_keys (_tmp75_); 11880 #line 11876 "tracker-sparql-pattern.c" 11881 { 11882 GList* key_collection = NULL; 11883 GList* key_it = NULL; 11884 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11885 key_collection = _tmp76_; 11886 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11887 for (key_it = key_collection; key_it != NULL; key_it = key_it->next) { 11888 #line 11884 "tracker-sparql-pattern.c" 11889 TrackerSparqlVariable* key = NULL; 11890 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11891 key = (TrackerSparqlVariable*) key_it->data; 11892 #line 11888 "tracker-sparql-pattern.c" 11893 { 11894 TrackerSparqlContext* _tmp77_; 11895 TrackerSparqlContext* _tmp78_; 11896 GHashTable* _tmp79_; 11897 TrackerSparqlVariable* _tmp80_; 11898 TrackerSparqlVariable* _tmp81_; 11899 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11900 _tmp77_ = tracker_sparql_pattern_get_context (self); 11901 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11902 _tmp78_ = _tmp77_; 11903 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11904 _tmp79_ = _tmp78_->var_set; 11905 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11906 _tmp80_ = key; 11907 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11908 _tmp81_ = _g_object_ref0 (_tmp80_); 11909 #line 1227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11910 g_hash_table_insert (_tmp79_, _tmp81_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 11911 #line 11907 "tracker-sparql-pattern.c" 11912 } 11913 } 11914 #line 1226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11915 _g_list_free0 (key_collection); 11916 #line 11912 "tracker-sparql-pattern.c" 11917 } 11918 } 11919 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11920 offsets = (g_free (offsets), NULL); 11921 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11922 contexts = (_vala_array_free (contexts, contexts_length1, (GDestroyNotify) tracker_sparql_context_unref), NULL); 11923 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11924 _g_hash_table_unref0 (all_var_set); 11925 #line 1176 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11926 all_vars = (_vala_array_free (all_vars, all_vars_length1, (GDestroyNotify) g_object_unref), NULL); 11927 #line 11923 "tracker-sparql-pattern.c" 11928 } 11929 11930 11931 static TrackerSparqlVariableBindingList* tracker_sparql_pattern_get_variable_binding_list (TrackerSparqlPattern* self, TrackerSparqlVariable* variable) { 11932 TrackerSparqlVariableBindingList* result = NULL; 11933 TrackerSparqlVariableBindingList* binding_list; 11934 TrackerSparqlPatternTripleContext* _tmp0_; 11935 gboolean _tmp6_ = FALSE; 11936 TrackerSparqlVariableBindingList* _tmp7_; 11937 gboolean _tmp10_; 11938 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11939 g_return_val_if_fail (self != NULL, NULL); 11940 #line 1232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11941 g_return_val_if_fail (variable != NULL, NULL); 11942 #line 1233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11943 binding_list = NULL; 11944 #line 1234 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11945 _tmp0_ = self->priv->triple_context; 11946 #line 1234 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11947 if (_tmp0_ != NULL) { 11948 #line 11944 "tracker-sparql-pattern.c" 11949 TrackerSparqlPatternTripleContext* _tmp1_; 11950 GHashTable* _tmp2_; 11951 TrackerSparqlVariable* _tmp3_; 11952 gconstpointer _tmp4_ = NULL; 11953 TrackerSparqlVariableBindingList* _tmp5_; 11954 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11955 _tmp1_ = self->priv->triple_context; 11956 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11957 _tmp2_ = _tmp1_->var_bindings; 11958 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11959 _tmp3_ = variable; 11960 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11961 _tmp4_ = g_hash_table_lookup (_tmp2_, _tmp3_); 11962 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11963 _tmp5_ = _g_object_ref0 ((TrackerSparqlVariableBindingList*) _tmp4_); 11964 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11965 _g_object_unref0 (binding_list); 11966 #line 1235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11967 binding_list = _tmp5_; 11968 #line 11964 "tracker-sparql-pattern.c" 11969 } 11970 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11971 _tmp7_ = binding_list; 11972 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11973 if (_tmp7_ == NULL) { 11974 #line 11970 "tracker-sparql-pattern.c" 11975 TrackerSparqlVariable* _tmp8_; 11976 TrackerSparqlVariableBinding* _tmp9_; 11977 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11978 _tmp8_ = variable; 11979 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11980 _tmp9_ = _tmp8_->binding; 11981 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11982 _tmp6_ = _tmp9_ != NULL; 11983 #line 11979 "tracker-sparql-pattern.c" 11984 } else { 11985 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11986 _tmp6_ = FALSE; 11987 #line 11983 "tracker-sparql-pattern.c" 11988 } 11989 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11990 _tmp10_ = _tmp6_; 11991 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11992 if (_tmp10_) { 11993 #line 11989 "tracker-sparql-pattern.c" 11994 TrackerSparqlContext* _tmp11_; 11995 TrackerSparqlContext* _tmp12_; 11996 TrackerSparqlContext* _tmp13_; 11997 TrackerSparqlContext* current_context; 11998 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 11999 _tmp11_ = tracker_sparql_pattern_get_context (self); 12000 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12001 _tmp12_ = _tmp11_; 12002 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12003 _tmp13_ = _tracker_sparql_context_ref0 (_tmp12_); 12004 #line 1239 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12005 current_context = _tmp13_; 12006 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12007 while (TRUE) { 12008 #line 12004 "tracker-sparql-pattern.c" 12009 TrackerSparqlContext* _tmp14_; 12010 gboolean _tmp15_ = FALSE; 12011 TrackerSparqlContext* _tmp16_; 12012 gboolean _tmp17_; 12013 gboolean _tmp23_; 12014 TrackerSparqlContext* _tmp64_; 12015 TrackerSparqlContext* _tmp65_; 12016 TrackerSparqlContext* _tmp66_; 12017 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12018 _tmp14_ = current_context; 12019 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12020 if (!(_tmp14_ != NULL)) { 12021 #line 1240 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12022 break; 12023 #line 12019 "tracker-sparql-pattern.c" 12024 } 12025 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12026 _tmp16_ = current_context; 12027 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12028 _tmp17_ = _tmp16_->scalar_subquery; 12029 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12030 if (_tmp17_) { 12031 #line 12027 "tracker-sparql-pattern.c" 12032 TrackerSparqlContext* _tmp18_; 12033 TrackerSparqlContext* _tmp19_; 12034 GHashTable* _tmp20_; 12035 TrackerSparqlVariable* _tmp21_; 12036 gconstpointer _tmp22_ = NULL; 12037 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12038 _tmp18_ = current_context; 12039 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12040 _tmp19_ = _tmp18_->parent_context; 12041 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12042 _tmp20_ = _tmp19_->var_set; 12043 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12044 _tmp21_ = variable; 12045 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12046 _tmp22_ = g_hash_table_lookup (_tmp20_, _tmp21_); 12047 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12048 _tmp15_ = ((gint) ((gintptr) _tmp22_)) != 0; 12049 #line 12045 "tracker-sparql-pattern.c" 12050 } else { 12051 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12052 _tmp15_ = FALSE; 12053 #line 12049 "tracker-sparql-pattern.c" 12054 } 12055 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12056 _tmp23_ = _tmp15_; 12057 #line 1243 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12058 if (_tmp23_) { 12059 #line 12055 "tracker-sparql-pattern.c" 12060 TrackerSparqlVariableBinding* _tmp24_; 12061 TrackerSparqlVariableBinding* binding; 12062 TrackerSparqlVariableBinding* _tmp25_; 12063 TrackerSparqlVariable* _tmp26_; 12064 TrackerSparqlVariableBinding* _tmp27_; 12065 TrackerPropertyType _tmp28_; 12066 TrackerSparqlVariableBinding* _tmp29_; 12067 TrackerSparqlContext* _tmp30_; 12068 TrackerSparqlContext* _tmp31_; 12069 TrackerSparqlVariable* _tmp32_; 12070 const gchar* _tmp33_; 12071 const gchar* _tmp34_; 12072 TrackerSparqlVariable* _tmp35_ = NULL; 12073 TrackerSparqlVariableBinding* _tmp36_; 12074 TrackerSparqlVariable* _tmp37_; 12075 TrackerSparqlVariableBinding* _tmp38_; 12076 TrackerClass* _tmp39_; 12077 TrackerClass* _tmp40_; 12078 TrackerSparqlVariableBinding* _tmp41_; 12079 TrackerSparqlVariable* _tmp42_; 12080 const gchar* _tmp43_; 12081 const gchar* _tmp44_; 12082 TrackerSparqlVariableBindingList* _tmp45_; 12083 TrackerSparqlPatternTripleContext* _tmp46_; 12084 TrackerSparqlContext* _tmp56_; 12085 TrackerSparqlContext* _tmp57_; 12086 GHashTable* _tmp58_; 12087 TrackerSparqlVariable* _tmp59_; 12088 TrackerSparqlVariable* _tmp60_; 12089 TrackerSparqlVariableBindingList* _tmp61_; 12090 TrackerSparqlVariableBinding* _tmp62_; 12091 TrackerSparqlVariableBinding* _tmp63_; 12092 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12093 _tmp24_ = tracker_sparql_variable_binding_new (); 12094 #line 1245 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12095 binding = _tmp24_; 12096 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12097 _tmp25_ = binding; 12098 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12099 _tmp26_ = variable; 12100 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12101 _tmp27_ = _tmp26_->binding; 12102 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12103 _tmp28_ = ((TrackerSparqlDataBinding*) _tmp27_)->data_type; 12104 #line 1246 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12105 ((TrackerSparqlDataBinding*) _tmp25_)->data_type = _tmp28_; 12106 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12107 _tmp29_ = binding; 12108 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12109 _tmp30_ = tracker_sparql_pattern_get_context (self); 12110 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12111 _tmp31_ = _tmp30_; 12112 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12113 _tmp32_ = variable; 12114 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12115 _tmp33_ = tracker_sparql_variable_get_name (_tmp32_); 12116 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12117 _tmp34_ = _tmp33_; 12118 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12119 _tmp35_ = tracker_sparql_context_get_variable (_tmp31_, _tmp34_); 12120 #line 1247 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12121 _tmp29_->variable = _tmp35_; 12122 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12123 _tmp36_ = binding; 12124 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12125 _tmp37_ = variable; 12126 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12127 _tmp38_ = _tmp37_->binding; 12128 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12129 _tmp39_ = _tmp38_->type; 12130 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12131 _tmp40_ = _g_object_ref0 (_tmp39_); 12132 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12133 _g_object_unref0 (_tmp36_->type); 12134 #line 1248 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12135 _tmp36_->type = _tmp40_; 12136 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12137 _tmp41_ = binding; 12138 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12139 _tmp42_ = variable; 12140 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12141 _tmp43_ = tracker_sparql_variable_get_sql_expression (_tmp42_); 12142 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12143 _tmp44_ = _tmp43_; 12144 #line 1249 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12145 tracker_sparql_data_binding_set_sql_expression ((TrackerSparqlDataBinding*) _tmp41_, _tmp44_); 12146 #line 1250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12147 _tmp45_ = tracker_sparql_variable_binding_list_new (); 12148 #line 1250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12149 _g_object_unref0 (binding_list); 12150 #line 1250 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12151 binding_list = _tmp45_; 12152 #line 1251 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12153 _tmp46_ = self->priv->triple_context; 12154 #line 1251 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12155 if (_tmp46_ != NULL) { 12156 #line 12152 "tracker-sparql-pattern.c" 12157 TrackerSparqlPatternTripleContext* _tmp47_; 12158 TrackerSparqlVariable* _tmp48_; 12159 TrackerSparqlVariable* _tmp49_; 12160 TrackerSparqlPatternTripleContext* _tmp50_; 12161 GHashTable* _tmp51_; 12162 TrackerSparqlVariable* _tmp52_; 12163 TrackerSparqlVariable* _tmp53_; 12164 TrackerSparqlVariableBindingList* _tmp54_; 12165 TrackerSparqlVariableBindingList* _tmp55_; 12166 #line 1252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12167 _tmp47_ = self->priv->triple_context; 12168 #line 1252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12169 _tmp48_ = variable; 12170 #line 1252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12171 _tmp49_ = _g_object_ref0 (_tmp48_); 12172 #line 1252 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12173 _tmp47_->variables = g_list_append (_tmp47_->variables, _tmp49_); 12174 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12175 _tmp50_ = self->priv->triple_context; 12176 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12177 _tmp51_ = _tmp50_->var_bindings; 12178 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12179 _tmp52_ = variable; 12180 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12181 _tmp53_ = _g_object_ref0 (_tmp52_); 12182 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12183 _tmp54_ = binding_list; 12184 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12185 _tmp55_ = _g_object_ref0 (_tmp54_); 12186 #line 1253 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12187 g_hash_table_insert (_tmp51_, _tmp53_, _tmp55_); 12188 #line 12184 "tracker-sparql-pattern.c" 12189 } 12190 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12191 _tmp56_ = tracker_sparql_pattern_get_context (self); 12192 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12193 _tmp57_ = _tmp56_; 12194 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12195 _tmp58_ = _tmp57_->var_set; 12196 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12197 _tmp59_ = variable; 12198 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12199 _tmp60_ = _g_object_ref0 (_tmp59_); 12200 #line 1256 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12201 g_hash_table_insert (_tmp58_, _tmp60_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_BOUND))); 12202 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12203 _tmp61_ = binding_list; 12204 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12205 _tmp62_ = binding; 12206 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12207 _tmp63_ = _g_object_ref0 (_tmp62_); 12208 #line 1257 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12209 _tmp61_->list = g_list_append (_tmp61_->list, _tmp63_); 12210 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12211 _g_object_unref0 (binding); 12212 #line 1258 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12213 break; 12214 #line 12210 "tracker-sparql-pattern.c" 12215 } 12216 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12217 _tmp64_ = current_context; 12218 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12219 _tmp65_ = _tmp64_->parent_context; 12220 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12221 _tmp66_ = _tracker_sparql_context_ref0 (_tmp65_); 12222 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12223 _tracker_sparql_context_unref0 (current_context); 12224 #line 1260 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12225 current_context = _tmp66_; 12226 #line 12222 "tracker-sparql-pattern.c" 12227 } 12228 #line 1237 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12229 _tracker_sparql_context_unref0 (current_context); 12230 #line 12226 "tracker-sparql-pattern.c" 12231 } 12232 #line 1263 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12233 result = binding_list; 12234 #line 1263 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12235 return result; 12236 #line 12232 "tracker-sparql-pattern.c" 12237 } 12238 12239 12240 void tracker_sparql_pattern_add_variable_binding (TrackerSparqlPattern* self, GString* sql, TrackerSparqlVariableBinding* binding, TrackerSparqlVariableState variable_state) { 12241 TrackerSparqlVariableBinding* _tmp0_; 12242 TrackerSparqlVariable* _tmp1_; 12243 TrackerSparqlVariableBindingList* _tmp2_ = NULL; 12244 TrackerSparqlVariableBindingList* binding_list; 12245 TrackerSparqlVariableBindingList* _tmp3_; 12246 TrackerSparqlVariableBindingList* _tmp50_; 12247 TrackerSparqlVariableBinding* _tmp51_; 12248 TrackerSparqlVariableBinding* _tmp52_; 12249 TrackerSparqlVariableBinding* _tmp53_; 12250 TrackerSparqlVariable* _tmp54_; 12251 TrackerSparqlVariableBinding* _tmp55_; 12252 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12253 g_return_if_fail (self != NULL); 12254 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12255 g_return_if_fail (sql != NULL); 12256 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12257 g_return_if_fail (binding != NULL); 12258 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12259 _tmp0_ = binding; 12260 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12261 _tmp1_ = _tmp0_->variable; 12262 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12263 _tmp2_ = tracker_sparql_pattern_get_variable_binding_list (self, _tmp1_); 12264 #line 1267 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12265 binding_list = _tmp2_; 12266 #line 1268 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12267 _tmp3_ = binding_list; 12268 #line 1268 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12269 if (_tmp3_ == NULL) { 12270 #line 12266 "tracker-sparql-pattern.c" 12271 TrackerSparqlVariableBindingList* _tmp4_; 12272 TrackerSparqlPatternTripleContext* _tmp5_; 12273 GString* _tmp17_; 12274 TrackerSparqlVariableBinding* _tmp18_; 12275 const gchar* _tmp19_; 12276 const gchar* _tmp20_; 12277 TrackerSparqlVariableBinding* _tmp21_; 12278 TrackerSparqlVariable* _tmp22_; 12279 const gchar* _tmp23_; 12280 const gchar* _tmp24_; 12281 TrackerSparqlVariableBinding* _tmp25_; 12282 TrackerPropertyType _tmp26_; 12283 TrackerSparqlContext* _tmp43_; 12284 TrackerSparqlContext* _tmp44_; 12285 GHashTable* _tmp45_; 12286 TrackerSparqlVariableBinding* _tmp46_; 12287 TrackerSparqlVariable* _tmp47_; 12288 TrackerSparqlVariable* _tmp48_; 12289 TrackerSparqlVariableState _tmp49_; 12290 #line 1269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12291 _tmp4_ = tracker_sparql_variable_binding_list_new (); 12292 #line 1269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12293 _g_object_unref0 (binding_list); 12294 #line 1269 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12295 binding_list = _tmp4_; 12296 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12297 _tmp5_ = self->priv->triple_context; 12298 #line 1270 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12299 if (_tmp5_ != NULL) { 12300 #line 12296 "tracker-sparql-pattern.c" 12301 TrackerSparqlPatternTripleContext* _tmp6_; 12302 TrackerSparqlVariableBinding* _tmp7_; 12303 TrackerSparqlVariable* _tmp8_; 12304 TrackerSparqlVariable* _tmp9_; 12305 TrackerSparqlPatternTripleContext* _tmp10_; 12306 GHashTable* _tmp11_; 12307 TrackerSparqlVariableBinding* _tmp12_; 12308 TrackerSparqlVariable* _tmp13_; 12309 TrackerSparqlVariable* _tmp14_; 12310 TrackerSparqlVariableBindingList* _tmp15_; 12311 TrackerSparqlVariableBindingList* _tmp16_; 12312 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12313 _tmp6_ = self->priv->triple_context; 12314 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12315 _tmp7_ = binding; 12316 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12317 _tmp8_ = _tmp7_->variable; 12318 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12319 _tmp9_ = _g_object_ref0 (_tmp8_); 12320 #line 1271 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12321 _tmp6_->variables = g_list_append (_tmp6_->variables, _tmp9_); 12322 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12323 _tmp10_ = self->priv->triple_context; 12324 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12325 _tmp11_ = _tmp10_->var_bindings; 12326 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12327 _tmp12_ = binding; 12328 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12329 _tmp13_ = _tmp12_->variable; 12330 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12331 _tmp14_ = _g_object_ref0 (_tmp13_); 12332 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12333 _tmp15_ = binding_list; 12334 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12335 _tmp16_ = _g_object_ref0 (_tmp15_); 12336 #line 1272 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12337 g_hash_table_insert (_tmp11_, _tmp14_, _tmp16_); 12338 #line 12334 "tracker-sparql-pattern.c" 12339 } 12340 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12341 _tmp17_ = sql; 12342 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12343 _tmp18_ = binding; 12344 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12345 _tmp19_ = tracker_sparql_data_binding_get_sql_expression ((TrackerSparqlDataBinding*) _tmp18_); 12346 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12347 _tmp20_ = _tmp19_; 12348 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12349 _tmp21_ = binding; 12350 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12351 _tmp22_ = _tmp21_->variable; 12352 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12353 _tmp23_ = tracker_sparql_variable_get_sql_expression (_tmp22_); 12354 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12355 _tmp24_ = _tmp23_; 12356 #line 1275 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12357 g_string_append_printf (_tmp17_, "%s AS %s, ", _tmp20_, _tmp24_); 12358 #line 1279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12359 _tmp25_ = binding; 12360 #line 1279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12361 _tmp26_ = ((TrackerSparqlDataBinding*) _tmp25_)->data_type; 12362 #line 1279 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12363 if (_tmp26_ == TRACKER_PROPERTY_TYPE_DATETIME) { 12364 #line 12360 "tracker-sparql-pattern.c" 12365 GString* _tmp27_; 12366 TrackerSparqlVariableBinding* _tmp28_; 12367 gchar* _tmp29_ = NULL; 12368 gchar* _tmp30_; 12369 TrackerSparqlVariableBinding* _tmp31_; 12370 TrackerSparqlVariable* _tmp32_; 12371 gchar* _tmp33_ = NULL; 12372 gchar* _tmp34_; 12373 GString* _tmp35_; 12374 TrackerSparqlVariableBinding* _tmp36_; 12375 gchar* _tmp37_ = NULL; 12376 gchar* _tmp38_; 12377 TrackerSparqlVariableBinding* _tmp39_; 12378 TrackerSparqlVariable* _tmp40_; 12379 gchar* _tmp41_ = NULL; 12380 gchar* _tmp42_; 12381 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12382 _tmp27_ = sql; 12383 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12384 _tmp28_ = binding; 12385 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12386 _tmp29_ = tracker_sparql_data_binding_get_extra_sql_expression ((TrackerSparqlDataBinding*) _tmp28_, "localDate"); 12387 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12388 _tmp30_ = _tmp29_; 12389 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12390 _tmp31_ = binding; 12391 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12392 _tmp32_ = _tmp31_->variable; 12393 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12394 _tmp33_ = tracker_sparql_variable_get_extra_sql_expression (_tmp32_, "localDate"); 12395 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12396 _tmp34_ = _tmp33_; 12397 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12398 g_string_append_printf (_tmp27_, "%s AS %s, ", _tmp30_, _tmp34_); 12399 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12400 _g_free0 (_tmp34_); 12401 #line 1280 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12402 _g_free0 (_tmp30_); 12403 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12404 _tmp35_ = sql; 12405 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12406 _tmp36_ = binding; 12407 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12408 _tmp37_ = tracker_sparql_data_binding_get_extra_sql_expression ((TrackerSparqlDataBinding*) _tmp36_, "localTime"); 12409 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12410 _tmp38_ = _tmp37_; 12411 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12412 _tmp39_ = binding; 12413 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12414 _tmp40_ = _tmp39_->variable; 12415 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12416 _tmp41_ = tracker_sparql_variable_get_extra_sql_expression (_tmp40_, "localTime"); 12417 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12418 _tmp42_ = _tmp41_; 12419 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12420 g_string_append_printf (_tmp35_, "%s AS %s, ", _tmp38_, _tmp42_); 12421 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12422 _g_free0 (_tmp42_); 12423 #line 1283 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12424 _g_free0 (_tmp38_); 12425 #line 12421 "tracker-sparql-pattern.c" 12426 } 12427 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12428 _tmp43_ = tracker_sparql_pattern_get_context (self); 12429 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12430 _tmp44_ = _tmp43_; 12431 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12432 _tmp45_ = _tmp44_->var_set; 12433 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12434 _tmp46_ = binding; 12435 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12436 _tmp47_ = _tmp46_->variable; 12437 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12438 _tmp48_ = _g_object_ref0 (_tmp47_); 12439 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12440 _tmp49_ = variable_state; 12441 #line 1288 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12442 g_hash_table_insert (_tmp45_, _tmp48_, (gpointer) ((gintptr) ((gint) _tmp49_))); 12443 #line 12439 "tracker-sparql-pattern.c" 12444 } 12445 #line 1290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12446 _tmp50_ = binding_list; 12447 #line 1290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12448 _tmp51_ = binding; 12449 #line 1290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12450 _tmp52_ = _g_object_ref0 (_tmp51_); 12451 #line 1290 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12452 _tmp50_->list = g_list_append (_tmp50_->list, _tmp52_); 12453 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12454 _tmp53_ = binding; 12455 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12456 _tmp54_ = _tmp53_->variable; 12457 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12458 _tmp55_ = _tmp54_->binding; 12459 #line 1291 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12460 if (_tmp55_ == NULL) { 12461 #line 12457 "tracker-sparql-pattern.c" 12462 TrackerSparqlVariableBinding* _tmp56_; 12463 TrackerSparqlVariable* _tmp57_; 12464 TrackerSparqlVariableBinding* _tmp58_; 12465 TrackerSparqlVariableBinding* _tmp59_; 12466 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12467 _tmp56_ = binding; 12468 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12469 _tmp57_ = _tmp56_->variable; 12470 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12471 _tmp58_ = binding; 12472 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12473 _tmp59_ = _g_object_ref0 (_tmp58_); 12474 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12475 _g_object_unref0 (_tmp57_->binding); 12476 #line 1292 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12477 _tmp57_->binding = _tmp59_; 12478 #line 12474 "tracker-sparql-pattern.c" 12479 } 12480 #line 1266 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12481 _g_object_unref0 (binding_list); 12482 #line 12478 "tracker-sparql-pattern.c" 12483 } 12484 12485 12486 static void tracker_sparql_pattern_parse_object (TrackerSparqlPattern* self, GString* sql, gboolean in_simple_optional, GError** error) { 12487 GString* _tmp0_; 12488 gssize _tmp1_; 12489 glong begin_sql_len; 12490 gboolean object_is_var = FALSE; 12491 GString* _tmp2_; 12492 gboolean _tmp3_ = FALSE; 12493 gchar* _tmp4_ = NULL; 12494 gchar* object; 12495 gchar* db_table; 12496 gboolean rdftype; 12497 gboolean share_table; 12498 gboolean is_fts_match; 12499 gboolean newtable = FALSE; 12500 TrackerSparqlDataTable* table = NULL; 12501 TrackerProperty* prop; 12502 TrackerClass* subject_type; 12503 gboolean _tmp5_; 12504 gboolean _tmp268_; 12505 gboolean _tmp303_; 12506 GString* _tmp439_; 12507 gssize _tmp440_; 12508 glong _tmp441_; 12509 GError * _inner_error_ = NULL; 12510 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12511 g_return_if_fail (self != NULL); 12512 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12513 g_return_if_fail (sql != NULL); 12514 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12515 _tmp0_ = sql; 12516 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12517 _tmp1_ = _tmp0_->len; 12518 #line 1297 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12519 begin_sql_len = (glong) _tmp1_; 12520 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12521 _tmp2_ = sql; 12522 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12523 _tmp4_ = tracker_sparql_pattern_parse_var_or_term (self, _tmp2_, &_tmp3_, &_inner_error_); 12524 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12525 object_is_var = _tmp3_; 12526 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12527 object = _tmp4_; 12528 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12529 if (_inner_error_ != NULL) { 12530 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12531 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12532 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12533 g_propagate_error (error, _inner_error_); 12534 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12535 return; 12536 #line 12532 "tracker-sparql-pattern.c" 12537 } else { 12538 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12539 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12540 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12541 g_clear_error (&_inner_error_); 12542 #line 1300 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12543 return; 12544 #line 12540 "tracker-sparql-pattern.c" 12545 } 12546 } 12547 #line 1302 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12548 db_table = NULL; 12549 #line 1303 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12550 rdftype = FALSE; 12551 #line 1304 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12552 share_table = TRUE; 12553 #line 1305 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12554 is_fts_match = FALSE; 12555 #line 1309 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12556 prop = NULL; 12557 #line 1311 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12558 subject_type = NULL; 12559 #line 1313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12560 _tmp5_ = self->priv->current_predicate_is_var; 12561 #line 1313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12562 if (!_tmp5_) { 12563 #line 12559 "tracker-sparql-pattern.c" 12564 const gchar* _tmp6_; 12565 TrackerProperty* _tmp7_ = NULL; 12566 TrackerProperty* _tmp8_; 12567 gboolean _tmp9_ = FALSE; 12568 gboolean _tmp10_ = FALSE; 12569 const gchar* _tmp11_; 12570 gboolean _tmp13_; 12571 gboolean _tmp15_; 12572 const gchar* _tmp200_; 12573 const gchar* _tmp201_; 12574 gboolean _tmp202_; 12575 gboolean _tmp203_ = FALSE; 12576 TrackerSparqlDataTable* _tmp204_ = NULL; 12577 #line 1314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12578 _tmp6_ = self->priv->current_predicate; 12579 #line 1314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12580 _tmp7_ = tracker_ontologies_get_property_by_uri (_tmp6_); 12581 #line 1314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12582 _tmp8_ = _g_object_ref0 (_tmp7_); 12583 #line 1314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12584 _g_object_unref0 (prop); 12585 #line 1314 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12586 prop = _tmp8_; 12587 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12588 _tmp11_ = self->priv->current_predicate; 12589 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12590 if (g_strcmp0 (_tmp11_, "http://www.w3.org/1999/02/22-rdf-syntax-ns#type") == 0) { 12591 #line 12587 "tracker-sparql-pattern.c" 12592 gboolean _tmp12_; 12593 #line 1317 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12594 _tmp12_ = object_is_var; 12595 #line 1317 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12596 _tmp10_ = !_tmp12_; 12597 #line 12593 "tracker-sparql-pattern.c" 12598 } else { 12599 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12600 _tmp10_ = FALSE; 12601 #line 12597 "tracker-sparql-pattern.c" 12602 } 12603 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12604 _tmp13_ = _tmp10_; 12605 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12606 if (_tmp13_) { 12607 #line 12603 "tracker-sparql-pattern.c" 12608 const gchar* _tmp14_; 12609 #line 1317 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12610 _tmp14_ = self->current_graph; 12611 #line 1317 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12612 _tmp9_ = _tmp14_ == NULL; 12613 #line 12609 "tracker-sparql-pattern.c" 12614 } else { 12615 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12616 _tmp9_ = FALSE; 12617 #line 12613 "tracker-sparql-pattern.c" 12618 } 12619 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12620 _tmp15_ = _tmp9_; 12621 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12622 if (_tmp15_) { 12623 #line 12619 "tracker-sparql-pattern.c" 12624 const gchar* _tmp16_; 12625 TrackerClass* _tmp17_ = NULL; 12626 TrackerClass* _tmp18_; 12627 TrackerClass* cl; 12628 TrackerClass* _tmp19_; 12629 TrackerClass* _tmp25_; 12630 const gchar* _tmp26_; 12631 const gchar* _tmp27_; 12632 gchar* _tmp28_; 12633 TrackerClass* _tmp29_; 12634 TrackerClass* _tmp30_; 12635 #line 1320 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12636 rdftype = TRUE; 12637 #line 1321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12638 _tmp16_ = object; 12639 #line 1321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12640 _tmp17_ = tracker_ontologies_get_class_by_uri (_tmp16_); 12641 #line 1321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12642 _tmp18_ = _g_object_ref0 (_tmp17_); 12643 #line 1321 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12644 cl = _tmp18_; 12645 #line 1322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12646 _tmp19_ = cl; 12647 #line 1322 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12648 if (_tmp19_ == NULL) { 12649 #line 12645 "tracker-sparql-pattern.c" 12650 const gchar* _tmp20_; 12651 gchar* _tmp21_ = NULL; 12652 gchar* _tmp22_; 12653 GError* _tmp23_; 12654 GError* _tmp24_; 12655 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12656 _tmp20_ = object; 12657 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12658 _tmp21_ = g_strdup_printf ("Unknown class `%s'", _tmp20_); 12659 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12660 _tmp22_ = _tmp21_; 12661 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12662 _tmp23_ = g_error_new_literal (TRACKER_SPARQL_ERROR, TRACKER_SPARQL_ERROR_UNKNOWN_CLASS, _tmp22_); 12663 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12664 _tmp24_ = _tmp23_; 12665 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12666 _g_free0 (_tmp22_); 12667 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12668 _inner_error_ = _tmp24_; 12669 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12670 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12671 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12672 g_propagate_error (error, _inner_error_); 12673 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12674 _g_object_unref0 (cl); 12675 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12676 _g_object_unref0 (subject_type); 12677 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12678 _g_object_unref0 (prop); 12679 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12680 _g_object_unref0 (table); 12681 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12682 _g_free0 (db_table); 12683 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12684 _g_free0 (object); 12685 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12686 return; 12687 #line 12683 "tracker-sparql-pattern.c" 12688 } else { 12689 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12690 _g_object_unref0 (cl); 12691 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12692 _g_object_unref0 (subject_type); 12693 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12694 _g_object_unref0 (prop); 12695 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12696 _g_object_unref0 (table); 12697 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12698 _g_free0 (db_table); 12699 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12700 _g_free0 (object); 12701 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12702 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12703 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12704 g_clear_error (&_inner_error_); 12705 #line 1323 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12706 return; 12707 #line 12703 "tracker-sparql-pattern.c" 12708 } 12709 } 12710 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12711 _tmp25_ = cl; 12712 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12713 _tmp26_ = tracker_class_get_name (_tmp25_); 12714 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12715 _tmp27_ = _tmp26_; 12716 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12717 _tmp28_ = g_strdup (_tmp27_); 12718 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12719 _g_free0 (db_table); 12720 #line 1325 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12721 db_table = _tmp28_; 12722 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12723 _tmp29_ = cl; 12724 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12725 _tmp30_ = _g_object_ref0 (_tmp29_); 12726 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12727 _g_object_unref0 (subject_type); 12728 #line 1326 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12729 subject_type = _tmp30_; 12730 #line 1316 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12731 _g_object_unref0 (cl); 12732 #line 12728 "tracker-sparql-pattern.c" 12733 } else { 12734 TrackerProperty* _tmp31_; 12735 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12736 _tmp31_ = prop; 12737 #line 1327 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12738 if (_tmp31_ == NULL) { 12739 #line 12735 "tracker-sparql-pattern.c" 12740 const gchar* _tmp32_; 12741 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12742 _tmp32_ = self->priv->current_predicate; 12743 #line 1328 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12744 if (g_strcmp0 (_tmp32_, "http://www.tracker-project.org/ontologies/fts#match") == 0) { 12745 #line 12741 "tracker-sparql-pattern.c" 12746 gchar* _tmp33_; 12747 TrackerSparqlContext* _tmp34_; 12748 TrackerSparqlContext* _tmp35_; 12749 const gchar* _tmp36_; 12750 TrackerSparqlVariable* _tmp37_ = NULL; 12751 TrackerSparqlVariable* _tmp38_; 12752 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12753 _tmp33_ = g_strdup ("fts"); 12754 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12755 _g_free0 (db_table); 12756 #line 1330 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12757 db_table = _tmp33_; 12758 #line 1331 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12759 share_table = FALSE; 12760 #line 1332 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12761 is_fts_match = TRUE; 12762 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12763 _tmp34_ = tracker_sparql_pattern_get_context (self); 12764 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12765 _tmp35_ = _tmp34_; 12766 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12767 _tmp36_ = self->priv->current_subject; 12768 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12769 _tmp37_ = tracker_sparql_context_get_variable (_tmp35_, _tmp36_); 12770 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12771 _tmp38_ = _g_object_ref0 (_tmp37_); 12772 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12773 _g_object_unref0 (self->fts_subject); 12774 #line 1333 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12775 self->fts_subject = _tmp38_; 12776 #line 12772 "tracker-sparql-pattern.c" 12777 } else { 12778 const gchar* _tmp39_; 12779 gchar* _tmp40_ = NULL; 12780 gchar* _tmp41_; 12781 GError* _tmp42_; 12782 GError* _tmp43_; 12783 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12784 _tmp39_ = self->priv->current_predicate; 12785 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12786 _tmp40_ = g_strdup_printf ("Unknown property `%s'", _tmp39_); 12787 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12788 _tmp41_ = _tmp40_; 12789 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12790 _tmp42_ = g_error_new_literal (TRACKER_SPARQL_ERROR, TRACKER_SPARQL_ERROR_UNKNOWN_PROPERTY, _tmp41_); 12791 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12792 _tmp43_ = _tmp42_; 12793 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12794 _g_free0 (_tmp41_); 12795 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12796 _inner_error_ = _tmp43_; 12797 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12798 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12799 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12800 g_propagate_error (error, _inner_error_); 12801 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12802 _g_object_unref0 (subject_type); 12803 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12804 _g_object_unref0 (prop); 12805 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12806 _g_object_unref0 (table); 12807 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12808 _g_free0 (db_table); 12809 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12810 _g_free0 (object); 12811 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12812 return; 12813 #line 12809 "tracker-sparql-pattern.c" 12814 } else { 12815 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12816 _g_object_unref0 (subject_type); 12817 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12818 _g_object_unref0 (prop); 12819 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12820 _g_object_unref0 (table); 12821 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12822 _g_free0 (db_table); 12823 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12824 _g_free0 (object); 12825 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12826 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12827 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12828 g_clear_error (&_inner_error_); 12829 #line 1335 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12830 return; 12831 #line 12827 "tracker-sparql-pattern.c" 12832 } 12833 } 12834 } else { 12835 gboolean _tmp44_ = FALSE; 12836 gboolean _tmp45_ = FALSE; 12837 const gchar* _tmp46_; 12838 gboolean _tmp48_; 12839 gboolean _tmp50_; 12840 gboolean _tmp84_; 12841 const gchar* _tmp115_; 12842 TrackerProperty* _tmp120_; 12843 gboolean _tmp121_; 12844 gboolean _tmp122_; 12845 TrackerProperty* _tmp123_; 12846 TrackerClass* _tmp124_; 12847 TrackerClass* _tmp125_; 12848 TrackerClass* _tmp126_; 12849 gboolean _tmp127_ = FALSE; 12850 gboolean _tmp128_; 12851 gboolean _tmp137_; 12852 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12853 _tmp46_ = self->priv->current_predicate; 12854 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12855 if (g_strcmp0 (_tmp46_, "http://www.w3.org/2000/01/rdf-schema#domain") == 0) { 12856 #line 12852 "tracker-sparql-pattern.c" 12857 gboolean _tmp47_; 12858 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12859 _tmp47_ = self->priv->current_subject_is_var; 12860 #line 1339 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12861 _tmp45_ = _tmp47_; 12862 #line 12858 "tracker-sparql-pattern.c" 12863 } else { 12864 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12865 _tmp45_ = FALSE; 12866 #line 12862 "tracker-sparql-pattern.c" 12867 } 12868 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12869 _tmp48_ = _tmp45_; 12870 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12871 if (_tmp48_) { 12872 #line 12868 "tracker-sparql-pattern.c" 12873 gboolean _tmp49_; 12874 #line 1340 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12875 _tmp49_ = object_is_var; 12876 #line 1340 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12877 _tmp44_ = !_tmp49_; 12878 #line 12874 "tracker-sparql-pattern.c" 12879 } else { 12880 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12881 _tmp44_ = FALSE; 12882 #line 12878 "tracker-sparql-pattern.c" 12883 } 12884 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12885 _tmp50_ = _tmp44_; 12886 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12887 if (_tmp50_) { 12888 #line 12884 "tracker-sparql-pattern.c" 12889 const gchar* _tmp51_; 12890 TrackerClass* _tmp52_ = NULL; 12891 TrackerClass* _tmp53_; 12892 TrackerClass* domain; 12893 TrackerClass* _tmp54_; 12894 TrackerSparqlContext* _tmp60_; 12895 TrackerSparqlContext* _tmp61_; 12896 GHashTable* _tmp62_; 12897 TrackerSparqlContext* _tmp63_; 12898 TrackerSparqlContext* _tmp64_; 12899 const gchar* _tmp65_; 12900 TrackerSparqlVariable* _tmp66_ = NULL; 12901 gconstpointer _tmp67_ = NULL; 12902 TrackerSparqlPredicateVariable* _tmp68_; 12903 TrackerSparqlPredicateVariable* pv; 12904 TrackerSparqlPredicateVariable* _tmp69_; 12905 TrackerSparqlPredicateVariable* _tmp81_; 12906 TrackerClass* _tmp82_; 12907 TrackerClass* _tmp83_; 12908 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12909 _tmp51_ = object; 12910 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12911 _tmp52_ = tracker_ontologies_get_class_by_uri (_tmp51_); 12912 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12913 _tmp53_ = _g_object_ref0 (_tmp52_); 12914 #line 1342 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12915 domain = _tmp53_; 12916 #line 1343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12917 _tmp54_ = domain; 12918 #line 1343 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12919 if (_tmp54_ == NULL) { 12920 #line 12916 "tracker-sparql-pattern.c" 12921 const gchar* _tmp55_; 12922 gchar* _tmp56_ = NULL; 12923 gchar* _tmp57_; 12924 GError* _tmp58_; 12925 GError* _tmp59_; 12926 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12927 _tmp55_ = object; 12928 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12929 _tmp56_ = g_strdup_printf ("Unknown class `%s'", _tmp55_); 12930 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12931 _tmp57_ = _tmp56_; 12932 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12933 _tmp58_ = g_error_new_literal (TRACKER_SPARQL_ERROR, TRACKER_SPARQL_ERROR_UNKNOWN_CLASS, _tmp57_); 12934 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12935 _tmp59_ = _tmp58_; 12936 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12937 _g_free0 (_tmp57_); 12938 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12939 _inner_error_ = _tmp59_; 12940 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12941 if (_inner_error_->domain == TRACKER_SPARQL_ERROR) { 12942 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12943 g_propagate_error (error, _inner_error_); 12944 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12945 _g_object_unref0 (domain); 12946 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12947 _g_object_unref0 (subject_type); 12948 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12949 _g_object_unref0 (prop); 12950 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12951 _g_object_unref0 (table); 12952 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12953 _g_free0 (db_table); 12954 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12955 _g_free0 (object); 12956 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12957 return; 12958 #line 12954 "tracker-sparql-pattern.c" 12959 } else { 12960 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12961 _g_object_unref0 (domain); 12962 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12963 _g_object_unref0 (subject_type); 12964 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12965 _g_object_unref0 (prop); 12966 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12967 _g_object_unref0 (table); 12968 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12969 _g_free0 (db_table); 12970 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12971 _g_free0 (object); 12972 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12973 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code); 12974 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12975 g_clear_error (&_inner_error_); 12976 #line 1344 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12977 return; 12978 #line 12974 "tracker-sparql-pattern.c" 12979 } 12980 } 12981 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12982 _tmp60_ = tracker_sparql_pattern_get_context (self); 12983 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12984 _tmp61_ = _tmp60_; 12985 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12986 _tmp62_ = _tmp61_->predicate_variable_map; 12987 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12988 _tmp63_ = tracker_sparql_pattern_get_context (self); 12989 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12990 _tmp64_ = _tmp63_; 12991 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12992 _tmp65_ = self->priv->current_subject; 12993 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12994 _tmp66_ = tracker_sparql_context_get_variable (_tmp64_, _tmp65_); 12995 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12996 _tmp67_ = g_hash_table_lookup (_tmp62_, _tmp66_); 12997 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 12998 _tmp68_ = _g_object_ref0 ((TrackerSparqlPredicateVariable*) _tmp67_); 12999 #line 1346 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13000 pv = _tmp68_; 13001 #line 1347 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13002 _tmp69_ = pv; 13003 #line 1347 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13004 if (_tmp69_ == NULL) { 13005 #line 13001 "tracker-sparql-pattern.c" 13006 TrackerSparqlPredicateVariable* _tmp70_; 13007 TrackerSparqlContext* _tmp71_; 13008 TrackerSparqlContext* _tmp72_; 13009 GHashTable* _tmp73_; 13010 TrackerSparqlContext* _tmp74_; 13011 TrackerSparqlContext* _tmp75_; 13012 const gchar* _tmp76_; 13013 TrackerSparqlVariable* _tmp77_ = NULL; 13014 TrackerSparqlVariable* _tmp78_; 13015 TrackerSparqlPredicateVariable* _tmp79_; 13016 TrackerSparqlPredicateVariable* _tmp80_; 13017 #line 1348 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13018 _tmp70_ = tracker_sparql_predicate_variable_new (); 13019 #line 1348 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13020 _g_object_unref0 (pv); 13021 #line 1348 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13022 pv = _tmp70_; 13023 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13024 _tmp71_ = tracker_sparql_pattern_get_context (self); 13025 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13026 _tmp72_ = _tmp71_; 13027 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13028 _tmp73_ = _tmp72_->predicate_variable_map; 13029 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13030 _tmp74_ = tracker_sparql_pattern_get_context (self); 13031 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13032 _tmp75_ = _tmp74_; 13033 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13034 _tmp76_ = self->priv->current_subject; 13035 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13036 _tmp77_ = tracker_sparql_context_get_variable (_tmp75_, _tmp76_); 13037 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13038 _tmp78_ = _g_object_ref0 (_tmp77_); 13039 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13040 _tmp79_ = pv; 13041 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13042 _tmp80_ = _g_object_ref0 (_tmp79_); 13043 #line 1349 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13044 g_hash_table_insert (_tmp73_, _tmp78_, _tmp80_); 13045 #line 13041 "tracker-sparql-pattern.c" 13046 } 13047 #line 1351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13048 _tmp81_ = pv; 13049 #line 1351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13050 _tmp82_ = domain; 13051 #line 1351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13052 _tmp83_ = _g_object_ref0 (_tmp82_); 13053 #line 1351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13054 _g_object_unref0 (_tmp81_->domain); 13055 #line 1351 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13056 _tmp81_->domain = _tmp83_; 13057 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13058 _g_object_unref0 (pv); 13059 #line 1338 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13060 _g_object_unref0 (domain); 13061 #line 13057 "tracker-sparql-pattern.c" 13062 } 13063 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13064 _tmp84_ = self->priv->current_subject_is_var; 13065 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13066 if (_tmp84_) { 13067 #line 13063 "tracker-sparql-pattern.c" 13068 TrackerSparqlContext* _tmp85_; 13069 TrackerSparqlContext* _tmp86_; 13070 const gchar* _tmp87_; 13071 TrackerSparqlVariable* _tmp88_ = NULL; 13072 TrackerSparqlVariable* _tmp89_; 13073 TrackerSparqlVariable* v; 13074 TrackerSparqlPatternTripleContext* _tmp90_; 13075 GHashTable* _tmp91_; 13076 TrackerSparqlVariable* _tmp92_; 13077 gconstpointer _tmp93_ = NULL; 13078 TrackerSparqlVariableBindingList* _tmp94_; 13079 TrackerSparqlVariableBindingList* list; 13080 gboolean _tmp95_ = FALSE; 13081 TrackerSparqlVariableBindingList* _tmp96_; 13082 gboolean _tmp99_; 13083 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13084 _tmp85_ = tracker_sparql_pattern_get_context (self); 13085 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13086 _tmp86_ = _tmp85_; 13087 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13088 _tmp87_ = self->priv->current_subject; 13089 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13090 _tmp88_ = tracker_sparql_context_get_variable (_tmp86_, _tmp87_); 13091 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13092 _tmp89_ = _g_object_ref0 (_tmp88_); 13093 #line 1356 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13094 v = _tmp89_; 13095 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13096 _tmp90_ = self->priv->triple_context; 13097 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13098 _tmp91_ = _tmp90_->var_bindings; 13099 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13100 _tmp92_ = v; 13101 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13102 _tmp93_ = g_hash_table_lookup (_tmp91_, _tmp92_); 13103 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13104 _tmp94_ = _g_object_ref0 ((TrackerSparqlVariableBindingList*) _tmp93_); 13105 #line 1357 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13106 list = _tmp94_; 13107 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13108 _tmp96_ = list; 13109 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13110 if (_tmp96_ != NULL) { 13111 #line 13107 "tracker-sparql-pattern.c" 13112 TrackerSparqlVariableBindingList* _tmp97_; 13113 GList* _tmp98_; 13114 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13115 _tmp97_ = list; 13116 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13117 _tmp98_ = _tmp97_->list; 13118 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13119 _tmp95_ = _tmp98_ != NULL; 13120 #line 13116 "tracker-sparql-pattern.c" 13121 } else { 13122 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13123 _tmp95_ = FALSE; 13124 #line 13120 "tracker-sparql-pattern.c" 13125 } 13126 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13127 _tmp99_ = _tmp95_; 13128 #line 1359 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13129 if (_tmp99_) { 13130 #line 13126 "tracker-sparql-pattern.c" 13131 gboolean stop; 13132 TrackerProperty* _tmp100_; 13133 TrackerClass** _tmp101_; 13134 TrackerClass** _tmp102_ = NULL; 13135 #line 1360 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13136 stop = FALSE; 13137 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13138 _tmp100_ = prop; 13139 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13140 _tmp102_ = _tmp101_ = tracker_property_get_domain_indexes (_tmp100_);
unused variable '_cl_collection_size_'
(emitted by gcc)
13141 #line 13137 "tracker-sparql-pattern.c" 13142 { 13143 TrackerClass** cl_collection = NULL; 13144 gint cl_collection_length1 = 0; 13145 gint _cl_collection_size_ = 0; 13146 gint cl_it = 0; 13147 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13148 cl_collection = _tmp102_; 13149 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13150 cl_collection_length1 = _vala_array_length (_tmp101_);
Value stored to 'cl_collection_length1' is never read
(emitted by clang-analyzer)

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

13151 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13152 for (cl_it = 0; cl_it < _vala_array_length (_tmp101_); cl_it = cl_it + 1) { 13153 #line 13149 "tracker-sparql-pattern.c" 13154 TrackerClass* _tmp103_; 13155 TrackerClass* cl = NULL; 13156 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13157 _tmp103_ = _g_object_ref0 (cl_collection[cl_it]); 13158 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13159 cl = _tmp103_; 13160 #line 13156 "tracker-sparql-pattern.c" 13161 { 13162 TrackerSparqlVariableBindingList* _tmp104_; 13163 GList* _tmp105_; 13164 gboolean _tmp114_; 13165 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13166 _tmp104_ = list; 13167 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13168 _tmp105_ = _tmp104_->list; 13169 #line 13165 "tracker-sparql-pattern.c" 13170 { 13171 GList* b_collection = NULL; 13172 GList* b_it = NULL; 13173 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13174 b_collection = _tmp105_; 13175 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13176 for (b_it = b_collection; b_it != NULL; b_it = b_it->next) { 13177 #line 13173 "tracker-sparql-pattern.c" 13178 TrackerSparqlVariableBinding* _tmp106_; 13179 TrackerSparqlVariableBinding* b = NULL; 13180 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13181 _tmp106_ = _g_object_ref0 ((TrackerSparqlVariableBinding*) b_it->data); 13182 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13183 b = _tmp106_; 13184 #line 13180 "tracker-sparql-pattern.c" 13185 { 13186 TrackerSparqlVariableBinding* _tmp107_; 13187 TrackerClass* _tmp108_; 13188 TrackerClass* _tmp109_; 13189 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13190 _tmp107_ = b; 13191 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13192 _tmp108_ = _tmp107_->type; 13193 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13194 _tmp109_ = cl; 13195 #line 1363 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13196 if (_tmp108_ == _tmp109_) { 13197 #line 13193 "tracker-sparql-pattern.c" 13198 TrackerClass* _tmp110_; 13199 const gchar* _tmp111_; 13200 const gchar* _tmp112_; 13201 gchar* _tmp113_; 13202 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13203 _tmp110_ = cl; 13204 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13205 _tmp111_ = tracker_class_get_name (_tmp110_); 13206 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13207 _tmp112_ = _tmp111_; 13208 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13209 _tmp113_ = g_strdup (_tmp112_); 13210 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13211 _g_free0 (db_table); 13212 #line 1364 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13213 db_table = _tmp113_; 13214 #line 1365 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13215 stop = TRUE; 13216 #line 1366 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13217 _g_object_unref0 (b); 13218 #line 1366 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13219 break; 13220 #line 13216 "tracker-sparql-pattern.c" 13221 } 13222 #line 1362 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13223 _g_object_unref0 (b); 13224 #line 13220 "tracker-sparql-pattern.c" 13225 } 13226 } 13227 } 13228 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13229 _tmp114_ = stop; 13230 #line 1369 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13231 if (_tmp114_) { 13232 #line 1370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13233 _g_object_unref0 (cl); 13234 #line 1370 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13235 break; 13236 #line 13232 "tracker-sparql-pattern.c" 13237 } 13238 #line 1361 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13239 _g_object_unref0 (cl); 13240 #line 13236 "tracker-sparql-pattern.c" 13241 } 13242 } 13243 } 13244 } 13245 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13246 _g_object_unref0 (list); 13247 #line 1354 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13248 _g_object_unref0 (v); 13249 #line 13245 "tracker-sparql-pattern.c" 13250 } 13251 #line 1376 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13252 _tmp115_ = db_table; 13253 #line 1376 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13254 if (_tmp115_ == NULL) { 13255 #line 13251 "tracker-sparql-pattern.c" 13256 TrackerProperty* _tmp116_; 13257 const gchar* _tmp117_; 13258 const gchar* _tmp118_; 13259 gchar* _tmp119_; 13260 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13261 _tmp116_ = prop; 13262 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13263 _tmp117_ = tracker_property_get_table_name (_tmp116_); 13264 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13265 _tmp118_ = _tmp117_; 13266 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13267 _tmp119_ = g_strdup (_tmp118_); 13268 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13269 _g_free0 (db_table); 13270 #line 1377 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13271 db_table = _tmp119_; 13272 #line 13268 "tracker-sparql-pattern.c" 13273 } 13274 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13275 _tmp120_ = prop; 13276 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13277 _tmp121_ = tracker_property_get_multiple_values (_tmp120_); 13278 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13279 _tmp122_ = _tmp121_; 13280 #line 1379 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13281 if (_tmp122_) { 13282 #line 1382 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13283 share_table = FALSE; 13284 #line 13280 "tracker-sparql-pattern.c" 13285 } 13286 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13287 _tmp123_ = prop; 13288 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13289 _tmp124_ = tracker_property_get_domain (_tmp123_); 13290 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13291 _tmp125_ = _tmp124_; 13292 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13293 _tmp126_ = _g_object_ref0 (_tmp125_); 13294 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13295 _g_object_unref0 (subject_type); 13296 #line 1384 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13297 subject_type = _tmp126_; 13298 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13299 _tmp128_ = in_simple_optional; 13300 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13301 if (_tmp128_) { 13302 #line 13298 "tracker-sparql-pattern.c" 13303 TrackerSparqlContext* _tmp129_; 13304 TrackerSparqlContext* _tmp130_; 13305 GHashTable* _tmp131_; 13306 TrackerSparqlContext* _tmp132_; 13307 TrackerSparqlContext* _tmp133_; 13308 const gchar* _tmp134_; 13309 TrackerSparqlVariable* _tmp135_ = NULL; 13310 gconstpointer _tmp136_ = NULL; 13311 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13312 _tmp129_ = tracker_sparql_pattern_get_context (self); 13313 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13314 _tmp130_ = _tmp129_; 13315 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13316 _tmp131_ = _tmp130_->var_set; 13317 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13318 _tmp132_ = tracker_sparql_pattern_get_context (self); 13319 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13320 _tmp133_ = _tmp132_; 13321 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13322 _tmp134_ = self->priv->current_subject; 13323 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13324 _tmp135_ = tracker_sparql_context_get_variable (_tmp133_, _tmp134_); 13325 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13326 _tmp136_ = g_hash_table_lookup (_tmp131_, _tmp135_); 13327 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13328 _tmp127_ = ((gint) ((gintptr) _tmp136_)) == 0; 13329 #line 13325 "tracker-sparql-pattern.c" 13330 } else { 13331 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13332 _tmp127_ = FALSE; 13333 #line 13329 "tracker-sparql-pattern.c" 13334 } 13335 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13336 _tmp137_ = _tmp127_; 13337 #line 1386 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13338 if (_tmp137_) { 13339 #line 13335 "tracker-sparql-pattern.c" 13340 TrackerSparqlVariableBinding* _tmp138_; 13341 TrackerSparqlVariableBinding* binding; 13342 TrackerSparqlVariableBinding* _tmp139_; 13343 TrackerSparqlVariableBinding* _tmp140_; 13344 TrackerSparqlContext* _tmp141_; 13345 TrackerSparqlContext* _tmp142_; 13346 const gchar* _tmp143_; 13347 TrackerSparqlVariable* _tmp144_ = NULL; 13348 TrackerSparqlPatternTripleContext* _tmp145_; 13349 GHashTable* _tmp146_; 13350 TrackerSparqlVariableBinding* _tmp147_; 13351 TrackerSparqlVariable* _tmp148_; 13352 gconstpointer _tmp149_ = NULL; 13353 TrackerSparqlVariableBindingList* _tmp150_; 13354 TrackerSparqlVariableBindingList* binding_list; 13355 TrackerSparqlPatternTripleContext* _tmp151_; 13356 TrackerSparqlVariableBinding* _tmp152_; 13357 TrackerSparqlVariable* _tmp153_; 13358 TrackerSparqlVariable* _tmp154_; 13359 TrackerSparqlPatternTripleContext* _tmp155_; 13360 GHashTable* _tmp156_; 13361 TrackerSparqlVariableBinding* _tmp157_; 13362 TrackerSparqlVariable* _tmp158_; 13363 TrackerSparqlVariable* _tmp159_; 13364 TrackerSparqlVariableBindingList* _tmp160_; 13365 TrackerSparqlVariableBindingList* _tmp161_; 13366 TrackerSparqlPatternTripleContext* _tmp162_; 13367 GHashTable* _tmp163_; 13368 TrackerSparqlContext* _tmp164_; 13369 TrackerSparqlContext* _tmp165_; 13370 const gchar* _tmp166_; 13371 TrackerSparqlVariable* _tmp167_ = NULL; 13372 gconstpointer _tmp168_ = NULL; 13373 GList* _tmp169_; 13374 gconstpointer _tmp170_; 13375 TrackerSparqlVariableBinding* _tmp171_; 13376 TrackerSparqlVariableBinding* object_binding; 13377 GString* _tmp172_; 13378 const gchar* _tmp173_; 13379 TrackerProperty* _tmp174_; 13380 const gchar* _tmp175_; 13381 const gchar* _tmp176_; 13382 TrackerSparqlVariableBinding* _tmp177_; 13383 const gchar* _tmp178_; 13384 const gchar* _tmp179_; 13385 TrackerSparqlVariableBinding* _tmp180_; 13386 TrackerSparqlVariable* _tmp181_; 13387 const gchar* _tmp182_; 13388 const gchar* _tmp183_; 13389 TrackerSparqlContext* _tmp184_; 13390 TrackerSparqlContext* _tmp185_; 13391 GHashTable* _tmp186_; 13392 TrackerSparqlVariableBinding* _tmp187_; 13393 TrackerSparqlVariable* _tmp188_; 13394 TrackerSparqlVariable* _tmp189_; 13395 TrackerSparqlVariableBindingList* _tmp190_; 13396 TrackerSparqlVariableBinding* _tmp191_; 13397 TrackerSparqlVariableBinding* _tmp192_; 13398 TrackerSparqlVariableBinding* _tmp193_; 13399 TrackerSparqlVariable* _tmp194_; 13400 TrackerSparqlVariableBinding* _tmp195_; 13401 TrackerSparqlVariableBinding* _tmp196_; 13402 TrackerSparqlVariable* _tmp197_; 13403 TrackerSparqlVariableBinding* _tmp198_; 13404 TrackerSparqlVariableBinding* _tmp199_; 13405 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13406 _tmp138_ = tracker_sparql_variable_binding_new (); 13407 #line 1389 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13408 binding = _tmp138_; 13409 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13410 _tmp139_ = binding; 13411 #line 1390 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13412 ((TrackerSparqlDataBinding*) _tmp139_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 13413 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13414 _tmp140_ = binding; 13415 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13416 _tmp141_ = tracker_sparql_pattern_get_context (self); 13417 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13418 _tmp142_ = _tmp141_; 13419 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13420 _tmp143_ = self->priv->current_subject; 13421 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13422 _tmp144_ = tracker_sparql_context_get_variable (_tmp142_, _tmp143_); 13423 #line 1391 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13424 _tmp140_->variable = _tmp144_; 13425 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13426 _tmp145_ = self->priv->triple_context; 13427 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13428 _tmp146_ = _tmp145_->var_bindings; 13429 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13430 _tmp147_ = binding; 13431 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13432 _tmp148_ = _tmp147_->variable; 13433 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13434 _tmp149_ = g_hash_table_lookup (_tmp146_, _tmp148_); 13435 #line 1393 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13436 _vala_assert (((TrackerSparqlVariableBindingList*) _tmp149_) == NULL, "triple_context.var_bindings.lookup (binding.variable) == null"); 13437 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13438 _tmp150_ = tracker_sparql_variable_binding_list_new (); 13439 #line 1394 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13440 binding_list = _tmp150_; 13441 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13442 _tmp151_ = self->priv->triple_context; 13443 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13444 _tmp152_ = binding; 13445 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13446 _tmp153_ = _tmp152_->variable; 13447 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13448 _tmp154_ = _g_object_ref0 (_tmp153_); 13449 #line 1395 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13450 _tmp151_->variables = g_list_append (_tmp151_->variables, _tmp154_); 13451 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13452 _tmp155_ = self->priv->triple_context; 13453 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13454 _tmp156_ = _tmp155_->var_bindings; 13455 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13456 _tmp157_ = binding; 13457 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13458 _tmp158_ = _tmp157_->variable; 13459 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13460 _tmp159_ = _g_object_ref0 (_tmp158_); 13461 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13462 _tmp160_ = binding_list; 13463 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13464 _tmp161_ = _g_object_ref0 (_tmp160_); 13465 #line 1396 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13466 g_hash_table_insert (_tmp156_, _tmp159_, _tmp161_); 13467 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13468 _tmp162_ = self->priv->triple_context; 13469 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13470 _tmp163_ = _tmp162_->var_bindings; 13471 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13472 _tmp164_ = tracker_sparql_pattern_get_context (self); 13473 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13474 _tmp165_ = _tmp164_; 13475 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13476 _tmp166_ = object; 13477 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13478 _tmp167_ = tracker_sparql_context_get_variable (_tmp165_, _tmp166_); 13479 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13480 _tmp168_ = g_hash_table_lookup (_tmp163_, _tmp167_); 13481 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13482 _tmp169_ = ((TrackerSparqlVariableBindingList*) _tmp168_)->list; 13483 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13484 _tmp170_ = _tmp169_->data; 13485 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13486 _tmp171_ = _g_object_ref0 ((TrackerSparqlVariableBinding*) _tmp170_); 13487 #line 1399 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13488 object_binding = _tmp171_; 13489 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13490 _tmp172_ = sql; 13491 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13492 _tmp173_ = db_table; 13493 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13494 _tmp174_ = prop; 13495 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13496 _tmp175_ = tracker_property_get_name (_tmp174_); 13497 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13498 _tmp176_ = _tmp175_; 13499 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13500 _tmp177_ = object_binding; 13501 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13502 _tmp178_ = tracker_sparql_data_binding_get_sql_expression ((TrackerSparqlDataBinding*) _tmp177_); 13503 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13504 _tmp179_ = _tmp178_; 13505 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13506 _tmp180_ = binding; 13507 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13508 _tmp181_ = _tmp180_->variable; 13509 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13510 _tmp182_ = tracker_sparql_variable_get_sql_expression (_tmp181_); 13511 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13512 _tmp183_ = _tmp182_; 13513 #line 1401 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13514 g_string_append_printf (_tmp172_, "(SELECT ID FROM \"%s\" WHERE \"%s\" = %s) AS %s, ", _tmp173_, _tmp176_, _tmp179_, _tmp183_); 13515 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13516 _tmp184_ = tracker_sparql_pattern_get_context (self); 13517 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13518 _tmp185_ = _tmp184_; 13519 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13520 _tmp186_ = _tmp185_->var_set; 13521 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13522 _tmp187_ = binding; 13523 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13524 _tmp188_ = _tmp187_->variable; 13525 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13526 _tmp189_ = _g_object_ref0 (_tmp188_); 13527 #line 1407 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13528 g_hash_table_insert (_tmp186_, _tmp189_, (gpointer) ((gintptr) ((gint) TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL))); 13529 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13530 _tmp190_ = binding_list; 13531 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13532 _tmp191_ = binding; 13533 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13534 _tmp192_ = _g_object_ref0 (_tmp191_); 13535 #line 1408 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13536 _tmp190_->list = g_list_append (_tmp190_->list, _tmp192_); 13537 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13538 _tmp193_ = binding; 13539 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13540 _tmp194_ = _tmp193_->variable; 13541 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13542 _tmp195_ = _tmp194_->binding; 13543 #line 1410 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13544 _vala_assert (_tmp195_ == NULL, "binding.variable.binding == null"); 13545 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13546 _tmp196_ = binding; 13547 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13548 _tmp197_ = _tmp196_->variable; 13549 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13550 _tmp198_ = binding; 13551 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13552 _tmp199_ = _g_object_ref0 (_tmp198_); 13553 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13554 _g_object_unref0 (_tmp197_->binding); 13555 #line 1411 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13556 _tmp197_->binding = _tmp199_; 13557 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13558 _g_object_unref0 (object_binding); 13559 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13560 _g_object_unref0 (binding_list); 13561 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13562 _g_object_unref0 (binding); 13563 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13564 _g_object_unref0 (subject_type); 13565 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13566 _g_object_unref0 (prop); 13567 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13568 _g_object_unref0 (table); 13569 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13570 _g_free0 (db_table); 13571 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13572 _g_free0 (object); 13573 #line 1413 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13574 return; 13575 #line 13571 "tracker-sparql-pattern.c" 13576 } 13577 } 13578 } 13579 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13580 _tmp200_ = self->priv->current_subject; 13581 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13582 _tmp201_ = db_table; 13583 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13584 _tmp202_ = share_table; 13585 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13586 _tmp204_ = tracker_sparql_pattern_get_table (self, _tmp200_, _tmp201_, _tmp202_, &_tmp203_); 13587 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13588 newtable = _tmp203_; 13589 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13590 _g_object_unref0 (table); 13591 #line 1416 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13592 table = _tmp204_; 13593 #line 13589 "tracker-sparql-pattern.c" 13594 } else { 13595 TrackerSparqlDataTable* _tmp205_; 13596 TrackerSparqlDataTable* _tmp206_; 13597 TrackerSparqlContext* _tmp207_; 13598 TrackerSparqlContext* _tmp208_; 13599 GHashTable* _tmp209_; 13600 TrackerSparqlContext* _tmp210_; 13601 TrackerSparqlContext* _tmp211_; 13602 const gchar* _tmp212_; 13603 TrackerSparqlVariable* _tmp213_ = NULL; 13604 gconstpointer _tmp214_ = NULL; 13605 TrackerSparqlPredicateVariable* _tmp215_; 13606 TrackerSparqlDataTable* _tmp216_; 13607 TrackerSparqlPredicateVariable* _tmp217_; 13608 gboolean _tmp231_; 13609 gboolean _tmp236_; 13610 const gchar* _tmp241_; 13611 TrackerSparqlDataTable* _tmp244_; 13612 const gchar* _tmp245_; 13613 gint _tmp246_; 13614 gint _tmp247_; 13615 gchar* _tmp248_ = NULL; 13616 gchar* _tmp249_; 13617 gchar* _tmp250_; 13618 TrackerSparqlPatternTripleContext* _tmp251_; 13619 TrackerSparqlDataTable* _tmp252_; 13620 TrackerSparqlDataTable* _tmp253_; 13621 TrackerSparqlVariableBinding* _tmp254_; 13622 TrackerSparqlVariableBinding* binding; 13623 TrackerSparqlVariableBinding* _tmp255_; 13624 TrackerSparqlVariableBinding* _tmp256_; 13625 TrackerSparqlContext* _tmp257_; 13626 TrackerSparqlContext* _tmp258_; 13627 const gchar* _tmp259_; 13628 TrackerSparqlVariable* _tmp260_ = NULL; 13629 TrackerSparqlVariableBinding* _tmp261_; 13630 TrackerSparqlDataTable* _tmp262_; 13631 TrackerSparqlDataTable* _tmp263_; 13632 TrackerSparqlVariableBinding* _tmp264_; 13633 gchar* _tmp265_; 13634 GString* _tmp266_; 13635 TrackerSparqlVariableBinding* _tmp267_; 13636 #line 1419 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13637 newtable = TRUE; 13638 #line 1420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13639 _tmp205_ = tracker_sparql_data_table_new (); 13640 #line 1420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13641 _g_object_unref0 (table); 13642 #line 1420 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13643 table = _tmp205_; 13644 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13645 _tmp206_ = table; 13646 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13647 _tmp207_ = tracker_sparql_pattern_get_context (self); 13648 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13649 _tmp208_ = _tmp207_; 13650 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13651 _tmp209_ = _tmp208_->predicate_variable_map; 13652 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13653 _tmp210_ = tracker_sparql_pattern_get_context (self); 13654 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13655 _tmp211_ = _tmp210_; 13656 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13657 _tmp212_ = self->priv->current_predicate; 13658 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13659 _tmp213_ = tracker_sparql_context_get_variable (_tmp211_, _tmp212_); 13660 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13661 _tmp214_ = g_hash_table_lookup (_tmp209_, _tmp213_); 13662 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13663 _tmp215_ = _g_object_ref0 ((TrackerSparqlPredicateVariable*) _tmp214_); 13664 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13665 _g_object_unref0 (_tmp206_->predicate_variable); 13666 #line 1421 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13667 _tmp206_->predicate_variable = _tmp215_; 13668 #line 1422 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13669 _tmp216_ = table; 13670 #line 1422 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13671 _tmp217_ = _tmp216_->predicate_variable; 13672 #line 1422 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13673 if (_tmp217_ == NULL) { 13674 #line 13670 "tracker-sparql-pattern.c" 13675 TrackerSparqlDataTable* _tmp218_; 13676 TrackerSparqlPredicateVariable* _tmp219_; 13677 TrackerSparqlContext* _tmp220_; 13678 TrackerSparqlContext* _tmp221_; 13679 GHashTable* _tmp222_; 13680 TrackerSparqlContext* _tmp223_; 13681 TrackerSparqlContext* _tmp224_; 13682 const gchar* _tmp225_; 13683 TrackerSparqlVariable* _tmp226_ = NULL; 13684 TrackerSparqlVariable* _tmp227_; 13685 TrackerSparqlDataTable* _tmp228_; 13686 TrackerSparqlPredicateVariable* _tmp229_; 13687 TrackerSparqlPredicateVariable* _tmp230_; 13688 #line 1423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13689 _tmp218_ = table; 13690 #line 1423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13691 _tmp219_ = tracker_sparql_predicate_variable_new (); 13692 #line 1423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13693 _g_object_unref0 (_tmp218_->predicate_variable); 13694 #line 1423 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13695 _tmp218_->predicate_variable = _tmp219_; 13696 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13697 _tmp220_ = tracker_sparql_pattern_get_context (self); 13698 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13699 _tmp221_ = _tmp220_; 13700 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13701 _tmp222_ = _tmp221_->predicate_variable_map; 13702 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13703 _tmp223_ = tracker_sparql_pattern_get_context (self); 13704 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13705 _tmp224_ = _tmp223_; 13706 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13707 _tmp225_ = self->priv->current_predicate; 13708 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13709 _tmp226_ = tracker_sparql_context_get_variable (_tmp224_, _tmp225_); 13710 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13711 _tmp227_ = _g_object_ref0 (_tmp226_); 13712 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13713 _tmp228_ = table; 13714 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13715 _tmp229_ = _tmp228_->predicate_variable; 13716 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13717 _tmp230_ = _g_object_ref0 (_tmp229_); 13718 #line 1424 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13719 g_hash_table_insert (_tmp222_, _tmp227_, _tmp230_); 13720 #line 13716 "tracker-sparql-pattern.c" 13721 } 13722 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13723 _tmp231_ = self->priv->current_subject_is_var; 13724 #line 1426 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13725 if (!_tmp231_) { 13726 #line 13722 "tracker-sparql-pattern.c" 13727 TrackerSparqlDataTable* _tmp232_; 13728 TrackerSparqlPredicateVariable* _tmp233_; 13729 const gchar* _tmp234_; 13730 gchar* _tmp235_; 13731 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13732 _tmp232_ = table; 13733 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13734 _tmp233_ = _tmp232_->predicate_variable; 13735 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13736 _tmp234_ = self->priv->current_subject; 13737 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13738 _tmp235_ = g_strdup (_tmp234_); 13739 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13740 _g_free0 (_tmp233_->subject); 13741 #line 1428 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13742 _tmp233_->subject = _tmp235_; 13743 #line 13739 "tracker-sparql-pattern.c" 13744 } 13745 #line 1430 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13746 _tmp236_ = object_is_var; 13747 #line 1430 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13748 if (!_tmp236_) { 13749 #line 13745 "tracker-sparql-pattern.c" 13750 TrackerSparqlDataTable* _tmp237_; 13751 TrackerSparqlPredicateVariable* _tmp238_; 13752 const gchar* _tmp239_; 13753 gchar* _tmp240_; 13754 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13755 _tmp237_ = table; 13756 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13757 _tmp238_ = _tmp237_->predicate_variable; 13758 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13759 _tmp239_ = object; 13760 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13761 _tmp240_ = g_strdup (_tmp239_); 13762 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13763 _g_free0 (_tmp238_->object); 13764 #line 1432 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13765 _tmp238_->object = _tmp240_; 13766 #line 13762 "tracker-sparql-pattern.c" 13767 } 13768 #line 1434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13769 _tmp241_ = self->current_graph; 13770 #line 1434 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13771 if (_tmp241_ != NULL) { 13772 #line 13768 "tracker-sparql-pattern.c" 13773 TrackerSparqlDataTable* _tmp242_; 13774 TrackerSparqlPredicateVariable* _tmp243_; 13775 #line 1435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13776 _tmp242_ = table; 13777 #line 1435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13778 _tmp243_ = _tmp242_->predicate_variable; 13779 #line 1435 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13780 _tmp243_->return_graph = TRUE; 13781 #line 13777 "tracker-sparql-pattern.c" 13782 } 13783 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13784 _tmp244_ = table; 13785 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13786 _tmp245_ = self->priv->current_predicate; 13787 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13788 _tmp246_ = self->priv->counter; 13789 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13790 self->priv->counter = _tmp246_ + 1; 13791 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13792 _tmp247_ = self->priv->counter; 13793 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13794 _tmp248_ = g_strdup_printf ("%i", _tmp247_); 13795 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13796 _tmp249_ = _tmp248_; 13797 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13798 _tmp250_ = g_strconcat (_tmp245_, _tmp249_, NULL); 13799 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13800 _g_free0 (_tmp244_->sql_query_tablename); 13801 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13802 _tmp244_->sql_query_tablename = _tmp250_; 13803 #line 1437 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13804 _g_free0 (_tmp249_); 13805 #line 1438 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13806 _tmp251_ = self->priv->triple_context; 13807 #line 1438 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13808 _tmp252_ = table; 13809 #line 1438 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13810 _tmp253_ = _g_object_ref0 (_tmp252_); 13811 #line 1438 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13812 _tmp251_->tables = g_list_append (_tmp251_->tables, _tmp253_); 13813 #line 1441 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13814 _tmp254_ = tracker_sparql_variable_binding_new (); 13815 #line 1441 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13816 binding = _tmp254_; 13817 #line 1442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13818 _tmp255_ = binding; 13819 #line 1442 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13820 ((TrackerSparqlDataBinding*) _tmp255_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 13821 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13822 _tmp256_ = binding; 13823 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13824 _tmp257_ = tracker_sparql_pattern_get_context (self); 13825 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13826 _tmp258_ = _tmp257_; 13827 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13828 _tmp259_ = self->priv->current_predicate; 13829 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13830 _tmp260_ = tracker_sparql_context_get_variable (_tmp258_, _tmp259_); 13831 #line 1443 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13832 _tmp256_->variable = _tmp260_; 13833 #line 1444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13834 _tmp261_ = binding; 13835 #line 1444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13836 _tmp262_ = table; 13837 #line 1444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13838 _tmp263_ = _g_object_ref0 (_tmp262_); 13839 #line 1444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13840 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp261_)->table); 13841 #line 1444 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13842 ((TrackerSparqlDataBinding*) _tmp261_)->table = _tmp263_; 13843 #line 1445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13844 _tmp264_ = binding; 13845 #line 1445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13846 _tmp265_ = g_strdup ("predicate"); 13847 #line 1445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13848 _g_free0 (((TrackerSparqlDataBinding*) _tmp264_)->sql_db_column_name); 13849 #line 1445 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13850 ((TrackerSparqlDataBinding*) _tmp264_)->sql_db_column_name = _tmp265_; 13851 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13852 _tmp266_ = sql; 13853 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13854 _tmp267_ = binding; 13855 #line 1447 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13856 tracker_sparql_pattern_add_variable_binding (self, _tmp266_, _tmp267_, TRACKER_SPARQL_VARIABLE_STATE_BOUND); 13857 #line 1313 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13858 _g_object_unref0 (binding); 13859 #line 13855 "tracker-sparql-pattern.c" 13860 } 13861 #line 1450 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13862 _tmp268_ = newtable; 13863 #line 1450 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13864 if (_tmp268_) { 13865 #line 13861 "tracker-sparql-pattern.c" 13866 gboolean _tmp269_; 13867 #line 1451 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13868 _tmp269_ = self->priv->current_subject_is_var; 13869 #line 1451 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13870 if (_tmp269_) { 13871 #line 13867 "tracker-sparql-pattern.c" 13872 TrackerSparqlVariableBinding* _tmp270_; 13873 TrackerSparqlVariableBinding* binding; 13874 TrackerSparqlVariableBinding* _tmp271_; 13875 TrackerSparqlVariableBinding* _tmp272_; 13876 TrackerSparqlContext* _tmp273_; 13877 TrackerSparqlContext* _tmp274_; 13878 const gchar* _tmp275_; 13879 TrackerSparqlVariable* _tmp276_ = NULL; 13880 TrackerSparqlVariableBinding* _tmp277_; 13881 TrackerSparqlDataTable* _tmp278_; 13882 TrackerSparqlDataTable* _tmp279_; 13883 TrackerSparqlVariableBinding* _tmp280_; 13884 TrackerClass* _tmp281_; 13885 TrackerClass* _tmp282_; 13886 gboolean _tmp283_; 13887 GString* _tmp288_; 13888 TrackerSparqlVariableBinding* _tmp289_; 13889 #line 1452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13890 _tmp270_ = tracker_sparql_variable_binding_new (); 13891 #line 1452 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13892 binding = _tmp270_; 13893 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13894 _tmp271_ = binding; 13895 #line 1453 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13896 ((TrackerSparqlDataBinding*) _tmp271_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 13897 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13898 _tmp272_ = binding; 13899 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13900 _tmp273_ = tracker_sparql_pattern_get_context (self); 13901 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13902 _tmp274_ = _tmp273_; 13903 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13904 _tmp275_ = self->priv->current_subject; 13905 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13906 _tmp276_ = tracker_sparql_context_get_variable (_tmp274_, _tmp275_); 13907 #line 1454 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13908 _tmp272_->variable = _tmp276_; 13909 #line 1455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13910 _tmp277_ = binding; 13911 #line 1455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13912 _tmp278_ = table; 13913 #line 1455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13914 _tmp279_ = _g_object_ref0 (_tmp278_); 13915 #line 1455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13916 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp277_)->table); 13917 #line 1455 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13918 ((TrackerSparqlDataBinding*) _tmp277_)->table = _tmp279_; 13919 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13920 _tmp280_ = binding; 13921 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13922 _tmp281_ = subject_type; 13923 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13924 _tmp282_ = _g_object_ref0 (_tmp281_); 13925 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13926 _g_object_unref0 (_tmp280_->type); 13927 #line 1456 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13928 _tmp280_->type = _tmp282_; 13929 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13930 _tmp283_ = is_fts_match; 13931 #line 1457 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13932 if (_tmp283_) { 13933 #line 13929 "tracker-sparql-pattern.c" 13934 TrackerSparqlVariableBinding* _tmp284_; 13935 gchar* _tmp285_; 13936 #line 1458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13937 _tmp284_ = binding; 13938 #line 1458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13939 _tmp285_ = g_strdup ("docid"); 13940 #line 1458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13941 _g_free0 (((TrackerSparqlDataBinding*) _tmp284_)->sql_db_column_name); 13942 #line 1458 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13943 ((TrackerSparqlDataBinding*) _tmp284_)->sql_db_column_name = _tmp285_; 13944 #line 13940 "tracker-sparql-pattern.c" 13945 } else { 13946 TrackerSparqlVariableBinding* _tmp286_; 13947 gchar* _tmp287_; 13948 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13949 _tmp286_ = binding; 13950 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13951 _tmp287_ = g_strdup ("ID"); 13952 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13953 _g_free0 (((TrackerSparqlDataBinding*) _tmp286_)->sql_db_column_name); 13954 #line 1460 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13955 ((TrackerSparqlDataBinding*) _tmp286_)->sql_db_column_name = _tmp287_; 13956 #line 13952 "tracker-sparql-pattern.c" 13957 } 13958 #line 1463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13959 _tmp288_ = sql; 13960 #line 1463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13961 _tmp289_ = binding; 13962 #line 1463 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13963 tracker_sparql_pattern_add_variable_binding (self, _tmp288_, _tmp289_, TRACKER_SPARQL_VARIABLE_STATE_BOUND); 13964 #line 1451 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13965 _g_object_unref0 (binding); 13966 #line 13962 "tracker-sparql-pattern.c" 13967 } else { 13968 TrackerSparqlLiteralBinding* _tmp290_; 13969 TrackerSparqlLiteralBinding* binding; 13970 TrackerSparqlLiteralBinding* _tmp291_; 13971 TrackerSparqlLiteralBinding* _tmp292_; 13972 const gchar* _tmp293_; 13973 gchar* _tmp294_; 13974 TrackerSparqlLiteralBinding* _tmp295_; 13975 TrackerSparqlDataTable* _tmp296_; 13976 TrackerSparqlDataTable* _tmp297_; 13977 TrackerSparqlLiteralBinding* _tmp298_; 13978 gchar* _tmp299_; 13979 TrackerSparqlPatternTripleContext* _tmp300_; 13980 TrackerSparqlLiteralBinding* _tmp301_; 13981 TrackerSparqlLiteralBinding* _tmp302_; 13982 #line 1465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13983 _tmp290_ = tracker_sparql_literal_binding_new (); 13984 #line 1465 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13985 binding = _tmp290_; 13986 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13987 _tmp291_ = binding; 13988 #line 1466 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13989 ((TrackerSparqlDataBinding*) _tmp291_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 13990 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13991 _tmp292_ = binding; 13992 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13993 _tmp293_ = self->priv->current_subject; 13994 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13995 _tmp294_ = g_strdup (_tmp293_); 13996 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13997 _g_free0 (_tmp292_->literal); 13998 #line 1467 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 13999 _tmp292_->literal = _tmp294_; 14000 #line 1469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14001 _tmp295_ = binding; 14002 #line 1469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14003 _tmp296_ = table; 14004 #line 1469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14005 _tmp297_ = _g_object_ref0 (_tmp296_); 14006 #line 1469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14007 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp295_)->table); 14008 #line 1469 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14009 ((TrackerSparqlDataBinding*) _tmp295_)->table = _tmp297_; 14010 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14011 _tmp298_ = binding; 14012 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14013 _tmp299_ = g_strdup ("ID"); 14014 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14015 _g_free0 (((TrackerSparqlDataBinding*) _tmp298_)->sql_db_column_name); 14016 #line 1470 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14017 ((TrackerSparqlDataBinding*) _tmp298_)->sql_db_column_name = _tmp299_; 14018 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14019 _tmp300_ = self->priv->triple_context; 14020 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14021 _tmp301_ = binding; 14022 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14023 _tmp302_ = _g_object_ref0 (_tmp301_); 14024 #line 1471 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14025 _tmp300_->bindings = g_list_append (_tmp300_->bindings, _tmp302_); 14026 #line 1451 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14027 _g_object_unref0 (binding); 14028 #line 14024 "tracker-sparql-pattern.c" 14029 } 14030 } 14031 #line 1475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14032 _tmp303_ = rdftype; 14033 #line 1475 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14034 if (!_tmp303_) { 14035 #line 14031 "tracker-sparql-pattern.c" 14036 gboolean _tmp304_; 14037 const gchar* _tmp393_; 14038 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14039 _tmp304_ = object_is_var; 14040 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14041 if (_tmp304_) { 14042 #line 14038 "tracker-sparql-pattern.c" 14043 TrackerSparqlVariableBinding* _tmp305_; 14044 TrackerSparqlVariableBinding* binding; 14045 TrackerSparqlVariableBinding* _tmp306_; 14046 TrackerSparqlContext* _tmp307_; 14047 TrackerSparqlContext* _tmp308_; 14048 const gchar* _tmp309_; 14049 TrackerSparqlVariable* _tmp310_ = NULL; 14050 TrackerSparqlVariableBinding* _tmp311_; 14051 TrackerSparqlDataTable* _tmp312_; 14052 TrackerSparqlDataTable* _tmp313_; 14053 TrackerProperty* _tmp314_; 14054 TrackerSparqlVariableState state = 0; 14055 gboolean _tmp339_; 14056 GString* _tmp340_; 14057 TrackerSparqlVariableBinding* _tmp341_; 14058 TrackerSparqlVariableState _tmp342_; 14059 #line 1477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14060 _tmp305_ = tracker_sparql_variable_binding_new (); 14061 #line 1477 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14062 binding = _tmp305_; 14063 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14064 _tmp306_ = binding; 14065 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14066 _tmp307_ = tracker_sparql_pattern_get_context (self); 14067 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14068 _tmp308_ = _tmp307_; 14069 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14070 _tmp309_ = object; 14071 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14072 _tmp310_ = tracker_sparql_context_get_variable (_tmp308_, _tmp309_); 14073 #line 1478 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14074 _tmp306_->variable = _tmp310_; 14075 #line 1479 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14076 _tmp311_ = binding; 14077 #line 1479 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14078 _tmp312_ = table; 14079 #line 1479 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14080 _tmp313_ = _g_object_ref0 (_tmp312_); 14081 #line 1479 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14082 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp311_)->table); 14083 #line 1479 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14084 ((TrackerSparqlDataBinding*) _tmp311_)->table = _tmp313_; 14085 #line 1480 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14086 _tmp314_ = prop; 14087 #line 1480 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14088 if (_tmp314_ != NULL) { 14089 #line 14085 "tracker-sparql-pattern.c" 14090 TrackerSparqlVariableBinding* _tmp315_; 14091 TrackerProperty* _tmp316_; 14092 TrackerClass* _tmp317_; 14093 TrackerClass* _tmp318_; 14094 TrackerClass* _tmp319_; 14095 TrackerSparqlVariableBinding* _tmp320_; 14096 TrackerProperty* _tmp321_; 14097 TrackerPropertyType _tmp322_; 14098 TrackerPropertyType _tmp323_; 14099 TrackerSparqlVariableBinding* _tmp324_; 14100 TrackerProperty* _tmp325_; 14101 const gchar* _tmp326_; 14102 const gchar* _tmp327_; 14103 gchar* _tmp328_; 14104 TrackerProperty* _tmp329_; 14105 gboolean _tmp330_; 14106 gboolean _tmp331_; 14107 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14108 _tmp315_ = binding; 14109 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14110 _tmp316_ = prop; 14111 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14112 _tmp317_ = tracker_property_get_range (_tmp316_); 14113 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14114 _tmp318_ = _tmp317_; 14115 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14116 _tmp319_ = _g_object_ref0 (_tmp318_); 14117 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14118 _g_object_unref0 (_tmp315_->type); 14119 #line 1482 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14120 _tmp315_->type = _tmp319_; 14121 #line 1484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14122 _tmp320_ = binding; 14123 #line 1484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14124 _tmp321_ = prop; 14125 #line 1484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14126 _tmp322_ = tracker_property_get_data_type (_tmp321_); 14127 #line 1484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14128 _tmp323_ = _tmp322_; 14129 #line 1484 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14130 ((TrackerSparqlDataBinding*) _tmp320_)->data_type = _tmp323_; 14131 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14132 _tmp324_ = binding; 14133 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14134 _tmp325_ = prop; 14135 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14136 _tmp326_ = tracker_property_get_name (_tmp325_); 14137 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14138 _tmp327_ = _tmp326_; 14139 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14140 _tmp328_ = g_strdup (_tmp327_); 14141 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14142 _g_free0 (((TrackerSparqlDataBinding*) _tmp324_)->sql_db_column_name); 14143 #line 1485 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14144 ((TrackerSparqlDataBinding*) _tmp324_)->sql_db_column_name = _tmp328_; 14145 #line 1486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14146 _tmp329_ = prop; 14147 #line 1486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14148 _tmp330_ = tracker_property_get_multiple_values (_tmp329_); 14149 #line 1486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14150 _tmp331_ = _tmp330_; 14151 #line 1486 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14152 if (!_tmp331_) { 14153 #line 14149 "tracker-sparql-pattern.c" 14154 TrackerSparqlVariableBinding* _tmp332_; 14155 TrackerSparqlVariableBinding* _tmp333_; 14156 gboolean _tmp334_; 14157 #line 1489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14158 _tmp332_ = binding; 14159 #line 1489 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14160 _tmp332_->maybe_null = TRUE; 14161 #line 1490 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14162 _tmp333_ = binding; 14163 #line 1490 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14164 _tmp334_ = in_simple_optional; 14165 #line 1490 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14166 _tmp333_->in_simple_optional = _tmp334_; 14167 #line 14163 "tracker-sparql-pattern.c" 14168 } 14169 } else { 14170 TrackerSparqlVariableBinding* _tmp335_; 14171 TrackerSparqlVariableBinding* _tmp336_; 14172 gchar* _tmp337_; 14173 TrackerSparqlVariableBinding* _tmp338_; 14174 #line 1494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14175 _tmp335_ = binding; 14176 #line 1494 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14177 ((TrackerSparqlDataBinding*) _tmp335_)->data_type = TRACKER_PROPERTY_TYPE_STRING; 14178 #line 1495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14179 _tmp336_ = binding; 14180 #line 1495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14181 _tmp337_ = g_strdup ("object"); 14182 #line 1495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14183 _g_free0 (((TrackerSparqlDataBinding*) _tmp336_)->sql_db_column_name); 14184 #line 1495 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14185 ((TrackerSparqlDataBinding*) _tmp336_)->sql_db_column_name = _tmp337_; 14186 #line 1496 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14187 _tmp338_ = binding; 14188 #line 1496 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14189 _tmp338_->maybe_null = TRUE; 14190 #line 14186 "tracker-sparql-pattern.c" 14191 } 14192 #line 1500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14193 _tmp339_ = in_simple_optional; 14194 #line 1500 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14195 if (_tmp339_) { 14196 #line 1501 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14197 state = TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL; 14198 #line 14194 "tracker-sparql-pattern.c" 14199 } else { 14200 #line 1503 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14201 state = TRACKER_SPARQL_VARIABLE_STATE_BOUND; 14202 #line 14198 "tracker-sparql-pattern.c" 14203 } 14204 #line 1506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14205 _tmp340_ = sql; 14206 #line 1506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14207 _tmp341_ = binding; 14208 #line 1506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14209 _tmp342_ = state; 14210 #line 1506 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14211 tracker_sparql_pattern_add_variable_binding (self, _tmp340_, _tmp341_, _tmp342_); 14212 #line 1476 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14213 _g_object_unref0 (binding); 14214 #line 14210 "tracker-sparql-pattern.c" 14215 } else { 14216 gboolean _tmp343_; 14217 #line 1507 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14218 _tmp343_ = is_fts_match; 14219 #line 1507 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14220 if (_tmp343_) { 14221 #line 14217 "tracker-sparql-pattern.c" 14222 TrackerSparqlLiteralBinding* _tmp344_; 14223 TrackerSparqlLiteralBinding* binding; 14224 TrackerSparqlLiteralBinding* _tmp345_; 14225 TrackerSparqlLiteralBinding* _tmp346_; 14226 const gchar* _tmp347_; 14227 gchar* _tmp348_; 14228 TrackerSparqlLiteralBinding* _tmp349_; 14229 TrackerSparqlDataTable* _tmp350_; 14230 TrackerSparqlDataTable* _tmp351_; 14231 TrackerSparqlLiteralBinding* _tmp352_; 14232 gchar* _tmp353_; 14233 TrackerSparqlPatternTripleContext* _tmp354_; 14234 TrackerSparqlLiteralBinding* _tmp355_; 14235 TrackerSparqlLiteralBinding* _tmp356_; 14236 GString* _tmp357_; 14237 TrackerSparqlLiteralBinding* _tmp358_; 14238 TrackerSparqlDataTable* _tmp359_; 14239 const gchar* _tmp360_; 14240 GString* _tmp361_; 14241 TrackerSparqlLiteralBinding* _tmp362_; 14242 TrackerSparqlDataTable* _tmp363_; 14243 const gchar* _tmp364_; 14244 TrackerSparqlContext* _tmp365_; 14245 TrackerSparqlContext* _tmp366_; 14246 const gchar* _tmp367_; 14247 TrackerSparqlVariable* _tmp368_ = NULL; 14248 const gchar* _tmp369_; 14249 const gchar* _tmp370_; 14250 #line 1508 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14251 _tmp344_ = tracker_sparql_literal_binding_new (); 14252 #line 1508 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14253 binding = _tmp344_; 14254 #line 1509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14255 _tmp345_ = binding; 14256 #line 1509 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14257 _tmp345_->is_fts_match = TRUE; 14258 #line 1510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14259 _tmp346_ = binding; 14260 #line 1510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14261 _tmp347_ = object; 14262 #line 1510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14263 _tmp348_ = g_strdup (_tmp347_); 14264 #line 1510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14265 _g_free0 (_tmp346_->literal); 14266 #line 1510 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14267 _tmp346_->literal = _tmp348_; 14268 #line 1512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14269 _tmp349_ = binding; 14270 #line 1512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14271 _tmp350_ = table; 14272 #line 1512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14273 _tmp351_ = _g_object_ref0 (_tmp350_); 14274 #line 1512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14275 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp349_)->table); 14276 #line 1512 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14277 ((TrackerSparqlDataBinding*) _tmp349_)->table = _tmp351_; 14278 #line 1513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14279 _tmp352_ = binding; 14280 #line 1513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14281 _tmp353_ = g_strdup ("fts"); 14282 #line 1513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14283 _g_free0 (((TrackerSparqlDataBinding*) _tmp352_)->sql_db_column_name); 14284 #line 1513 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14285 ((TrackerSparqlDataBinding*) _tmp352_)->sql_db_column_name = _tmp353_; 14286 #line 1514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14287 _tmp354_ = self->priv->triple_context; 14288 #line 1514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14289 _tmp355_ = binding; 14290 #line 1514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14291 _tmp356_ = _g_object_ref0 (_tmp355_); 14292 #line 1514 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14293 _tmp354_->bindings = g_list_append (_tmp354_->bindings, _tmp356_); 14294 #line 1516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14295 _tmp357_ = sql; 14296 #line 1516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14297 _tmp358_ = binding; 14298 #line 1516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14299 _tmp359_ = ((TrackerSparqlDataBinding*) _tmp358_)->table; 14300 #line 1516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14301 _tmp360_ = _tmp359_->sql_query_tablename; 14302 #line 1516 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14303 g_string_append_printf (_tmp357_, "\"%s\".\"docid\" AS \"ID\", ", _tmp360_); 14304 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14305 _tmp361_ = sql; 14306 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14307 _tmp362_ = binding; 14308 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14309 _tmp363_ = ((TrackerSparqlDataBinding*) _tmp362_)->table; 14310 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14311 _tmp364_ = _tmp363_->sql_query_tablename; 14312 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14313 _tmp365_ = tracker_sparql_pattern_get_context (self); 14314 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14315 _tmp366_ = _tmp365_; 14316 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14317 _tmp367_ = self->priv->current_subject; 14318 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14319 _tmp368_ = tracker_sparql_context_get_variable (_tmp366_, _tmp367_); 14320 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14321 _tmp369_ = tracker_sparql_variable_get_name (_tmp368_); 14322 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14323 _tmp370_ = _tmp369_; 14324 #line 1518 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14325 g_string_append_printf (_tmp361_, "tracker_rank(matchinfo(\"%s\".\"fts\", 'cl'),fts_column_weights()) " "AS \"%s_u_rank\", ", _tmp364_, _tmp370_); 14326 #line 1507 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14327 _g_object_unref0 (binding); 14328 #line 14324 "tracker-sparql-pattern.c" 14329 } else { 14330 TrackerSparqlLiteralBinding* _tmp371_; 14331 TrackerSparqlLiteralBinding* binding; 14332 TrackerSparqlLiteralBinding* _tmp372_; 14333 const gchar* _tmp373_; 14334 gchar* _tmp374_; 14335 TrackerSparqlLiteralBinding* _tmp375_; 14336 TrackerSparqlDataTable* _tmp376_; 14337 TrackerSparqlDataTable* _tmp377_; 14338 TrackerProperty* _tmp378_; 14339 TrackerSparqlPatternTripleContext* _tmp390_; 14340 TrackerSparqlLiteralBinding* _tmp391_; 14341 TrackerSparqlLiteralBinding* _tmp392_; 14342 #line 1523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14343 _tmp371_ = tracker_sparql_literal_binding_new (); 14344 #line 1523 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14345 binding = _tmp371_; 14346 #line 1524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14347 _tmp372_ = binding; 14348 #line 1524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14349 _tmp373_ = object; 14350 #line 1524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14351 _tmp374_ = g_strdup (_tmp373_); 14352 #line 1524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14353 _g_free0 (_tmp372_->literal); 14354 #line 1524 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14355 _tmp372_->literal = _tmp374_; 14356 #line 1526 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14357 _tmp375_ = binding; 14358 #line 1526 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14359 _tmp376_ = table; 14360 #line 1526 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14361 _tmp377_ = _g_object_ref0 (_tmp376_); 14362 #line 1526 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14363 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp375_)->table); 14364 #line 1526 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14365 ((TrackerSparqlDataBinding*) _tmp375_)->table = _tmp377_; 14366 #line 1527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14367 _tmp378_ = prop; 14368 #line 1527 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14369 if (_tmp378_ != NULL) { 14370 #line 14366 "tracker-sparql-pattern.c" 14371 TrackerSparqlLiteralBinding* _tmp379_; 14372 TrackerProperty* _tmp380_; 14373 TrackerPropertyType _tmp381_; 14374 TrackerPropertyType _tmp382_; 14375 TrackerSparqlLiteralBinding* _tmp383_; 14376 TrackerProperty* _tmp384_; 14377 const gchar* _tmp385_; 14378 const gchar* _tmp386_; 14379 gchar* _tmp387_; 14380 #line 1528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14381 _tmp379_ = binding; 14382 #line 1528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14383 _tmp380_ = prop; 14384 #line 1528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14385 _tmp381_ = tracker_property_get_data_type (_tmp380_); 14386 #line 1528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14387 _tmp382_ = _tmp381_; 14388 #line 1528 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14389 ((TrackerSparqlDataBinding*) _tmp379_)->data_type = _tmp382_; 14390 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14391 _tmp383_ = binding; 14392 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14393 _tmp384_ = prop; 14394 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14395 _tmp385_ = tracker_property_get_name (_tmp384_); 14396 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14397 _tmp386_ = _tmp385_; 14398 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14399 _tmp387_ = g_strdup (_tmp386_); 14400 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14401 _g_free0 (((TrackerSparqlDataBinding*) _tmp383_)->sql_db_column_name); 14402 #line 1529 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14403 ((TrackerSparqlDataBinding*) _tmp383_)->sql_db_column_name = _tmp387_; 14404 #line 14400 "tracker-sparql-pattern.c" 14405 } else { 14406 TrackerSparqlLiteralBinding* _tmp388_; 14407 gchar* _tmp389_; 14408 #line 1532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14409 _tmp388_ = binding; 14410 #line 1532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14411 _tmp389_ = g_strdup ("object"); 14412 #line 1532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14413 _g_free0 (((TrackerSparqlDataBinding*) _tmp388_)->sql_db_column_name); 14414 #line 1532 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14415 ((TrackerSparqlDataBinding*) _tmp388_)->sql_db_column_name = _tmp389_; 14416 #line 14412 "tracker-sparql-pattern.c" 14417 } 14418 #line 1534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14419 _tmp390_ = self->priv->triple_context; 14420 #line 1534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14421 _tmp391_ = binding; 14422 #line 1534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14423 _tmp392_ = _g_object_ref0 (_tmp391_); 14424 #line 1534 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14425 _tmp390_->bindings = g_list_append (_tmp390_->bindings, _tmp392_); 14426 #line 1507 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14427 _g_object_unref0 (binding); 14428 #line 14424 "tracker-sparql-pattern.c" 14429 } 14430 } 14431 #line 1537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14432 _tmp393_ = self->current_graph; 14433 #line 1537 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14434 if (_tmp393_ != NULL) { 14435 #line 14431 "tracker-sparql-pattern.c" 14436 gboolean _tmp394_; 14437 #line 1538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14438 _tmp394_ = self->priv->current_graph_is_var; 14439 #line 1538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14440 if (_tmp394_) { 14441 #line 14437 "tracker-sparql-pattern.c" 14442 TrackerSparqlVariableBinding* _tmp395_; 14443 TrackerSparqlVariableBinding* binding; 14444 TrackerSparqlVariableBinding* _tmp396_; 14445 TrackerSparqlContext* _tmp397_; 14446 TrackerSparqlContext* _tmp398_; 14447 const gchar* _tmp399_; 14448 TrackerSparqlVariable* _tmp400_ = NULL; 14449 TrackerSparqlVariableBinding* _tmp401_; 14450 TrackerSparqlDataTable* _tmp402_; 14451 TrackerSparqlDataTable* _tmp403_; 14452 TrackerSparqlVariableBinding* _tmp404_; 14453 TrackerProperty* _tmp405_; 14454 TrackerSparqlVariableBinding* _tmp413_; 14455 TrackerSparqlVariableBinding* _tmp414_; 14456 gboolean _tmp415_; 14457 TrackerSparqlVariableState state = 0; 14458 gboolean _tmp416_; 14459 GString* _tmp417_; 14460 TrackerSparqlVariableBinding* _tmp418_; 14461 TrackerSparqlVariableState _tmp419_; 14462 #line 1539 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14463 _tmp395_ = tracker_sparql_variable_binding_new (); 14464 #line 1539 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14465 binding = _tmp395_; 14466 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14467 _tmp396_ = binding; 14468 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14469 _tmp397_ = tracker_sparql_pattern_get_context (self); 14470 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14471 _tmp398_ = _tmp397_; 14472 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14473 _tmp399_ = self->current_graph; 14474 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14475 _tmp400_ = tracker_sparql_context_get_variable (_tmp398_, _tmp399_); 14476 #line 1540 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14477 _tmp396_->variable = _tmp400_; 14478 #line 1541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14479 _tmp401_ = binding; 14480 #line 1541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14481 _tmp402_ = table; 14482 #line 1541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14483 _tmp403_ = _g_object_ref0 (_tmp402_); 14484 #line 1541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14485 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp401_)->table); 14486 #line 1541 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14487 ((TrackerSparqlDataBinding*) _tmp401_)->table = _tmp403_; 14488 #line 1542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14489 _tmp404_ = binding; 14490 #line 1542 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14491 ((TrackerSparqlDataBinding*) _tmp404_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 14492 #line 1544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14493 _tmp405_ = prop; 14494 #line 1544 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14495 if (_tmp405_ != NULL) { 14496 #line 14492 "tracker-sparql-pattern.c" 14497 TrackerSparqlVariableBinding* _tmp406_; 14498 TrackerProperty* _tmp407_; 14499 const gchar* _tmp408_; 14500 const gchar* _tmp409_; 14501 gchar* _tmp410_; 14502 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14503 _tmp406_ = binding; 14504 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14505 _tmp407_ = prop; 14506 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14507 _tmp408_ = tracker_property_get_name (_tmp407_); 14508 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14509 _tmp409_ = _tmp408_; 14510 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14511 _tmp410_ = g_strconcat (_tmp409_, ":graph", NULL); 14512 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14513 _g_free0 (((TrackerSparqlDataBinding*) _tmp406_)->sql_db_column_name); 14514 #line 1545 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14515 ((TrackerSparqlDataBinding*) _tmp406_)->sql_db_column_name = _tmp410_; 14516 #line 14512 "tracker-sparql-pattern.c" 14517 } else { 14518 TrackerSparqlVariableBinding* _tmp411_; 14519 gchar* _tmp412_; 14520 #line 1548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14521 _tmp411_ = binding; 14522 #line 1548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14523 _tmp412_ = g_strdup ("graph"); 14524 #line 1548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14525 _g_free0 (((TrackerSparqlDataBinding*) _tmp411_)->sql_db_column_name); 14526 #line 1548 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14527 ((TrackerSparqlDataBinding*) _tmp411_)->sql_db_column_name = _tmp412_; 14528 #line 14524 "tracker-sparql-pattern.c" 14529 } 14530 #line 1551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14531 _tmp413_ = binding; 14532 #line 1551 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14533 _tmp413_->maybe_null = TRUE; 14534 #line 1552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14535 _tmp414_ = binding; 14536 #line 1552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14537 _tmp415_ = in_simple_optional; 14538 #line 1552 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14539 _tmp414_->in_simple_optional = _tmp415_; 14540 #line 1555 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14541 _tmp416_ = in_simple_optional; 14542 #line 1555 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14543 if (_tmp416_) { 14544 #line 1556 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14545 state = TRACKER_SPARQL_VARIABLE_STATE_OPTIONAL; 14546 #line 14542 "tracker-sparql-pattern.c" 14547 } else { 14548 #line 1558 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14549 state = TRACKER_SPARQL_VARIABLE_STATE_BOUND; 14550 #line 14546 "tracker-sparql-pattern.c" 14551 } 14552 #line 1561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14553 _tmp417_ = sql; 14554 #line 1561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14555 _tmp418_ = binding; 14556 #line 1561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14557 _tmp419_ = state; 14558 #line 1561 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14559 tracker_sparql_pattern_add_variable_binding (self, _tmp417_, _tmp418_, _tmp419_); 14560 #line 1538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14561 _g_object_unref0 (binding); 14562 #line 14558 "tracker-sparql-pattern.c" 14563 } else { 14564 TrackerSparqlLiteralBinding* _tmp420_; 14565 TrackerSparqlLiteralBinding* binding; 14566 TrackerSparqlLiteralBinding* _tmp421_; 14567 const gchar* _tmp422_; 14568 gchar* _tmp423_; 14569 TrackerSparqlLiteralBinding* _tmp424_; 14570 TrackerSparqlDataTable* _tmp425_; 14571 TrackerSparqlDataTable* _tmp426_; 14572 TrackerSparqlLiteralBinding* _tmp427_; 14573 TrackerProperty* _tmp428_; 14574 TrackerSparqlPatternTripleContext* _tmp436_; 14575 TrackerSparqlLiteralBinding* _tmp437_; 14576 TrackerSparqlLiteralBinding* _tmp438_; 14577 #line 1563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14578 _tmp420_ = tracker_sparql_literal_binding_new (); 14579 #line 1563 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14580 binding = _tmp420_; 14581 #line 1564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14582 _tmp421_ = binding; 14583 #line 1564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14584 _tmp422_ = self->current_graph; 14585 #line 1564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14586 _tmp423_ = g_strdup (_tmp422_); 14587 #line 1564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14588 _g_free0 (_tmp421_->literal); 14589 #line 1564 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14590 _tmp421_->literal = _tmp423_; 14591 #line 1565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14592 _tmp424_ = binding; 14593 #line 1565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14594 _tmp425_ = table; 14595 #line 1565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14596 _tmp426_ = _g_object_ref0 (_tmp425_); 14597 #line 1565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14598 _g_object_unref0 (((TrackerSparqlDataBinding*) _tmp424_)->table); 14599 #line 1565 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14600 ((TrackerSparqlDataBinding*) _tmp424_)->table = _tmp426_; 14601 #line 1566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14602 _tmp427_ = binding; 14603 #line 1566 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14604 ((TrackerSparqlDataBinding*) _tmp427_)->data_type = TRACKER_PROPERTY_TYPE_RESOURCE; 14605 #line 1568 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14606 _tmp428_ = prop; 14607 #line 1568 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14608 if (_tmp428_ != NULL) { 14609 #line 14605 "tracker-sparql-pattern.c" 14610 TrackerSparqlLiteralBinding* _tmp429_; 14611 TrackerProperty* _tmp430_; 14612 const gchar* _tmp431_; 14613 const gchar* _tmp432_; 14614 gchar* _tmp433_; 14615 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14616 _tmp429_ = binding; 14617 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14618 _tmp430_ = prop; 14619 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14620 _tmp431_ = tracker_property_get_name (_tmp430_); 14621 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14622 _tmp432_ = _tmp431_; 14623 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14624 _tmp433_ = g_strconcat (_tmp432_, ":graph", NULL); 14625 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14626 _g_free0 (((TrackerSparqlDataBinding*) _tmp429_)->sql_db_column_name); 14627 #line 1569 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14628 ((TrackerSparqlDataBinding*) _tmp429_)->sql_db_column_name = _tmp433_; 14629 #line 14625 "tracker-sparql-pattern.c" 14630 } else { 14631 TrackerSparqlLiteralBinding* _tmp434_; 14632 gchar* _tmp435_; 14633 #line 1572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14634 _tmp434_ = binding; 14635 #line 1572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14636 _tmp435_ = g_strdup ("graph"); 14637 #line 1572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14638 _g_free0 (((TrackerSparqlDataBinding*) _tmp434_)->sql_db_column_name); 14639 #line 1572 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14640 ((TrackerSparqlDataBinding*) _tmp434_)->sql_db_column_name = _tmp435_; 14641 #line 14637 "tracker-sparql-pattern.c" 14642 } 14643 #line 1575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14644 _tmp436_ = self->priv->triple_context; 14645 #line 1575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14646 _tmp437_ = binding; 14647 #line 1575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14648 _tmp438_ = _g_object_ref0 (_tmp437_); 14649 #line 1575 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14650 _tmp436_->bindings = g_list_append (_tmp436_->bindings, _tmp438_); 14651 #line 1538 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14652 _g_object_unref0 (binding); 14653 #line 14649 "tracker-sparql-pattern.c" 14654 } 14655 } 14656 } 14657 #line 1580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14658 _tmp439_ = sql; 14659 #line 1580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14660 _tmp440_ = _tmp439_->len; 14661 #line 1580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14662 _tmp441_ = begin_sql_len; 14663 #line 1580 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14664 if (_tmp440_ == ((gssize) _tmp441_)) { 14665 #line 14661 "tracker-sparql-pattern.c" 14666 GString* _tmp442_; 14667 #line 1583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14668 _tmp442_ = sql; 14669 #line 1583 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14670 g_string_append (_tmp442_, "1, "); 14671 #line 14667 "tracker-sparql-pattern.c" 14672 } 14673 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14674 _g_object_unref0 (subject_type); 14675 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14676 _g_object_unref0 (prop); 14677 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14678 _g_object_unref0 (table); 14679 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14680 _g_free0 (db_table); 14681 #line 1296 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14682 _g_free0 (object); 14683 #line 14679 "tracker-sparql-pattern.c" 14684 } 14685 14686 14687 static TrackerSparqlDataTable* tracker_sparql_pattern_get_table (TrackerSparqlPattern* self, const gchar* subject, const gchar* db_table, gboolean share_table, gboolean* newtable) { 14688 gboolean _vala_newtable = FALSE; 14689 TrackerSparqlDataTable* result = NULL; 14690 const gchar* _tmp0_; 14691 const gchar* _tmp1_; 14692 gchar* _tmp2_ = NULL; 14693 gchar* tablestring; 14694 TrackerSparqlDataTable* table; 14695 gboolean _tmp3_; 14696 TrackerSparqlDataTable* _tmp9_; 14697 #line 1587 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14698 g_return_val_if_fail (self != NULL, NULL); 14699 #line 1587 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14700 g_return_val_if_fail (subject != NULL, NULL); 14701 #line 1587 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14702 g_return_val_if_fail (db_table != NULL, NULL); 14703 #line 1588 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14704 _tmp0_ = subject; 14705 #line 1588 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14706 _tmp1_ = db_table; 14707 #line 1588 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14708 _tmp2_ = g_strdup_printf ("%s.%s", _tmp0_, _tmp1_); 14709 #line 1588 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14710 tablestring = _tmp2_; 14711 #line 1589 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14712 table = NULL; 14713 #line 1590 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14714 _vala_newtable = FALSE; 14715 #line 1591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14716 _tmp3_ = share_table; 14717 #line 1591 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14718 if (_tmp3_) { 14719 #line 14715 "tracker-sparql-pattern.c" 14720 TrackerSparqlPatternTripleContext* _tmp4_; 14721 GHashTable* _tmp5_; 14722 const gchar* _tmp6_; 14723 gconstpointer _tmp7_ = NULL; 14724 TrackerSparqlDataTable* _tmp8_; 14725 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14726 _tmp4_ = self->priv->triple_context; 14727 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14728 _tmp5_ = _tmp4_->table_map; 14729 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14730 _tmp6_ = tablestring; 14731 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14732 _tmp7_ = g_hash_table_lookup (_tmp5_, _tmp6_); 14733 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14734 _tmp8_ = _g_object_ref0 ((TrackerSparqlDataTable*) _tmp7_); 14735 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14736 _g_object_unref0 (table); 14737 #line 1592 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14738 table = _tmp8_; 14739 #line 14735 "tracker-sparql-pattern.c" 14740 } 14741 #line 1594 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14742 _tmp9_ = table; 14743 #line 1594 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14744 if (_tmp9_ == NULL) { 14745 #line 14741 "tracker-sparql-pattern.c" 14746 TrackerSparqlDataTable* _tmp10_; 14747 TrackerSparqlDataTable* _tmp11_; 14748 const gchar* _tmp12_; 14749 gchar* _tmp13_; 14750 TrackerSparqlDataTable* _tmp14_; 14751 const gchar* _tmp15_; 14752 gint _tmp16_; 14753 gint _tmp17_; 14754 gchar* _tmp18_ = NULL; 14755 gchar* _tmp19_; 14756 gchar* _tmp20_; 14757 TrackerSparqlPatternTripleContext* _tmp21_; 14758 TrackerSparqlDataTable* _tmp22_; 14759 TrackerSparqlDataTable* _tmp23_; 14760 TrackerSparqlPatternTripleContext* _tmp24_; 14761 GHashTable* _tmp25_; 14762 const gchar* _tmp26_; 14763 gchar* _tmp27_; 14764 TrackerSparqlDataTable* _tmp28_; 14765 TrackerSparqlDataTable* _tmp29_; 14766 #line 1595 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14767 _vala_newtable = TRUE; 14768 #line 1596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14769 _tmp10_ = tracker_sparql_data_table_new (); 14770 #line 1596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14771 _g_object_unref0 (table); 14772 #line 1596 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14773 table = _tmp10_; 14774 #line 1597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14775 _tmp11_ = table; 14776 #line 1597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14777 _tmp12_ = db_table; 14778 #line 1597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14779 _tmp13_ = g_strdup (_tmp12_); 14780 #line 1597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14781 _g_free0 (_tmp11_->sql_db_tablename); 14782 #line 1597 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14783 _tmp11_->sql_db_tablename = _tmp13_; 14784 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14785 _tmp14_ = table; 14786 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14787 _tmp15_ = db_table; 14788 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14789 _tmp16_ = self->priv->counter; 14790 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14791 self->priv->counter = _tmp16_ + 1; 14792 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14793 _tmp17_ = self->priv->counter; 14794 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14795 _tmp18_ = g_strdup_printf ("%i", _tmp17_); 14796 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14797 _tmp19_ = _tmp18_; 14798 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14799 _tmp20_ = g_strconcat (_tmp15_, _tmp19_, NULL); 14800 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14801 _g_free0 (_tmp14_->sql_query_tablename); 14802 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14803 _tmp14_->sql_query_tablename = _tmp20_; 14804 #line 1598 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14805 _g_free0 (_tmp19_); 14806 #line 1599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14807 _tmp21_ = self->priv->triple_context; 14808 #line 1599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14809 _tmp22_ = table; 14810 #line 1599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14811 _tmp23_ = _g_object_ref0 (_tmp22_); 14812 #line 1599 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14813 _tmp21_->tables = g_list_append (_tmp21_->tables, _tmp23_); 14814 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14815 _tmp24_ = self->priv->triple_context; 14816 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14817 _tmp25_ = _tmp24_->table_map; 14818 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14819 _tmp26_ = tablestring; 14820 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14821 _tmp27_ = g_strdup (_tmp26_); 14822 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14823 _tmp28_ = table; 14824 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14825 _tmp29_ = _g_object_ref0 (_tmp28_); 14826 #line 1600 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14827 g_hash_table_insert (_tmp25_, _tmp27_, _tmp29_); 14828 #line 14824 "tracker-sparql-pattern.c" 14829 } 14830 #line 1602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14831 result = table; 14832 #line 1602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14833 _g_free0 (tablestring); 14834 #line 1602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14835 if (newtable) { 14836 #line 1602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14837 *newtable = _vala_newtable; 14838 #line 14834 "tracker-sparql-pattern.c" 14839 } 14840 #line 1602 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14841 return result; 14842 #line 14838 "tracker-sparql-pattern.c" 14843 } 14844 14845 14846 static TrackerSparqlContext* tracker_sparql_pattern_get_context (TrackerSparqlPattern* self) { 14847 TrackerSparqlContext* result; 14848 TrackerSparqlQuery* _tmp0_; 14849 TrackerSparqlContext* _tmp1_; 14850 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14851 g_return_val_if_fail (self != NULL, NULL); 14852 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14853 _tmp0_ = self->priv->query; 14854 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14855 _tmp1_ = _tmp0_->context; 14856 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14857 result = _tmp1_; 14858 #line 183 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14859 return result; 14860 #line 14856 "tracker-sparql-pattern.c" 14861 } 14862 14863 14864 static void tracker_sparql_pattern_set_context (TrackerSparqlPattern* self, TrackerSparqlContext* value) { 14865 TrackerSparqlQuery* _tmp0_; 14866 TrackerSparqlContext* _tmp1_; 14867 TrackerSparqlContext* _tmp2_; 14868 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14869 g_return_if_fail (self != NULL); 14870 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14871 _tmp0_ = self->priv->query; 14872 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14873 _tmp1_ = value; 14874 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14875 _tmp2_ = _tracker_sparql_context_ref0 (_tmp1_); 14876 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14877 _tracker_sparql_context_unref0 (_tmp0_->context); 14878 #line 184 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14879 _tmp0_->context = _tmp2_; 14880 #line 14876 "tracker-sparql-pattern.c" 14881 } 14882 14883 14884 static TrackerSparqlPatternTripleContext* tracker_sparql_pattern_triple_context_construct (GType object_type, TrackerSparqlQuery* query, TrackerSparqlContext* parent_context) { 14885 TrackerSparqlPatternTripleContext* self = NULL; 14886 TrackerSparqlQuery* _tmp0_; 14887 TrackerSparqlContext* _tmp1_; 14888 GHashFunc _tmp2_; 14889 GEqualFunc _tmp3_; 14890 GDestroyNotify _tmp4_; 14891 GDestroyNotify _tmp5_; 14892 GHashTable* _tmp6_; 14893 GDestroyNotify _tmp7_; 14894 GDestroyNotify _tmp8_; 14895 GHashTable* _tmp9_; 14896 #line 229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14897 g_return_val_if_fail (query != NULL, NULL); 14898 #line 229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14899 g_return_val_if_fail (parent_context != NULL, NULL); 14900 #line 230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14901 _tmp0_ = query; 14902 #line 230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14903 _tmp1_ = parent_context; 14904 #line 230 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14905 self = (TrackerSparqlPatternTripleContext*) tracker_sparql_context_construct (object_type, _tmp0_, _tmp1_); 14906 #line 232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14907 __g_list_free__g_object_unref0_0 (self->tables); 14908 #line 232 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14909 self->tables = NULL; 14910 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14911 _tmp2_ = g_str_hash; 14912 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14913 _tmp3_ = g_str_equal; 14914 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14915 _tmp4_ = g_free; 14916 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14917 _tmp5_ = g_object_unref; 14918 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14919 _tmp6_ = g_hash_table_new_full (_tmp2_, _tmp3_, _tmp4_, _tmp5_); 14920 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14921 _g_hash_table_unref0 (self->table_map); 14922 #line 233 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14923 self->table_map = _tmp6_; 14924 #line 235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14925 __g_list_free__g_object_unref0_0 (self->variables); 14926 #line 235 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14927 self->variables = NULL; 14928 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14929 _tmp7_ = g_object_unref; 14930 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14931 _tmp8_ = g_object_unref; 14932 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14933 _tmp9_ = g_hash_table_new_full (_tracker_sparql_variable_hash_ghash_func, _tracker_sparql_variable_equal_gequal_func, _tmp7_, _tmp8_); 14934 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14935 _g_hash_table_unref0 (self->var_bindings); 14936 #line 236 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14937 self->var_bindings = _tmp9_; 14938 #line 238 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14939 __g_list_free__g_object_unref0_0 (self->bindings); 14940 #line 238 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14941 self->bindings = NULL; 14942 #line 229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14943 return self; 14944 #line 14940 "tracker-sparql-pattern.c" 14945 } 14946 14947 14948 static TrackerSparqlPatternTripleContext* tracker_sparql_pattern_triple_context_new (TrackerSparqlQuery* query, TrackerSparqlContext* parent_context) { 14949 #line 229 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14950 return tracker_sparql_pattern_triple_context_construct (TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT, query, parent_context); 14951 #line 14947 "tracker-sparql-pattern.c" 14952 } 14953 14954 14955 static void tracker_sparql_pattern_triple_context_class_init (TrackerSparqlPatternTripleContextClass * klass) { 14956 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14957 tracker_sparql_pattern_triple_context_parent_class = g_type_class_peek_parent (klass); 14958 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14959 TRACKER_SPARQL_CONTEXT_CLASS (klass)->finalize = tracker_sparql_pattern_triple_context_finalize; 14960 #line 14956 "tracker-sparql-pattern.c" 14961 } 14962 14963 14964 static void tracker_sparql_pattern_triple_context_instance_init (TrackerSparqlPatternTripleContext * self) { 14965 } 14966 14967 14968 static void tracker_sparql_pattern_triple_context_finalize (TrackerSparqlContext* obj) { 14969 TrackerSparqlPatternTripleContext * self; 14970 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14971 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_SPARQL_PATTERN_TYPE_TRIPLE_CONTEXT, TrackerSparqlPatternTripleContext); 14972 #line 221 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14973 __g_list_free__g_object_unref0_0 (self->tables); 14974 #line 222 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14975 _g_hash_table_unref0 (self->table_map); 14976 #line 224 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14977 __g_list_free__g_object_unref0_0 (self->bindings); 14978 #line 226 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14979 __g_list_free__g_object_unref0_0 (self->variables); 14980 #line 227 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14981 _g_hash_table_unref0 (self->var_bindings); 14982 #line 219 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 14983 TRACKER_SPARQL_CONTEXT_CLASS (tracker_sparql_pattern_triple_context_parent_class)->finalize (obj); 14984 #line 14980 "tracker-sparql-pattern.c" 14985 } 14986 14987 14988 static GType tracker_sparql_pattern_triple_context_get_type (void) { 14989 static volatile gsize tracker_sparql_pattern_triple_context_type_id__volatile = 0; 14990 if (g_once_init_enter (&tracker_sparql_pattern_triple_context_type_id__volatile)) { 14991 static const GTypeInfo g_define_type_info = { sizeof (TrackerSparqlPatternTripleContextClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_sparql_pattern_triple_context_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerSparqlPatternTripleContext), 0, (GInstanceInitFunc) tracker_sparql_pattern_triple_context_instance_init, NULL }; 14992 GType tracker_sparql_pattern_triple_context_type_id; 14993 tracker_sparql_pattern_triple_context_type_id = g_type_register_static (TRACKER_SPARQL_TYPE_CONTEXT, "TrackerSparqlPatternTripleContext", &g_define_type_info, 0); 14994 g_once_init_leave (&tracker_sparql_pattern_triple_context_type_id__volatile, tracker_sparql_pattern_triple_context_type_id); 14995 } 14996 return tracker_sparql_pattern_triple_context_type_id__volatile; 14997 } 14998 14999 15000 static void tracker_sparql_pattern_class_init (TrackerSparqlPatternClass * klass) { 15001 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15002 tracker_sparql_pattern_parent_class = g_type_class_peek_parent (klass); 15003 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15004 g_type_class_add_private (klass, sizeof (TrackerSparqlPatternPrivate)); 15005 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15006 G_OBJECT_CLASS (klass)->get_property = _vala_tracker_sparql_pattern_get_property; 15007 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15008 G_OBJECT_CLASS (klass)->set_property = _vala_tracker_sparql_pattern_set_property; 15009 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15010 G_OBJECT_CLASS (klass)->finalize = tracker_sparql_pattern_finalize; 15011 #line 15007 "tracker-sparql-pattern.c" 15012 } 15013 15014 15015 static void tracker_sparql_pattern_instance_init (TrackerSparqlPattern * self) { 15016 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15017 self->priv = TRACKER_SPARQL_PATTERN_GET_PRIVATE (self); 15018 #line 175 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15019 self->queries_fts_data = FALSE; 15020 #line 15016 "tracker-sparql-pattern.c" 15021 } 15022 15023 15024 static void tracker_sparql_pattern_finalize (GObject* obj) { 15025 TrackerSparqlPattern * self; 15026 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15027 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPattern); 15028 #line 166 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15029 _g_free0 (self->current_graph); 15030 #line 168 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15031 _g_free0 (self->priv->current_subject); 15032 #line 170 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15033 _g_free0 (self->priv->current_predicate); 15034 #line 172 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15035 _g_object_unref0 (self->fts_subject); 15036 #line 173 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15037 self->fts_variables = (_vala_array_free (self->fts_variables, self->fts_variables_length1, (GDestroyNotify) g_free), NULL); 15038 #line 174 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15039 _g_string_free0 (self->match_str); 15040 #line 242 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15041 _tracker_sparql_context_unref0 (self->priv->triple_context); 15042 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15043 G_OBJECT_CLASS (tracker_sparql_pattern_parent_class)->finalize (obj); 15044 #line 15040 "tracker-sparql-pattern.c" 15045 } 15046 15047 15048 GType tracker_sparql_pattern_get_type (void) { 15049 static volatile gsize tracker_sparql_pattern_type_id__volatile = 0; 15050 if (g_once_init_enter (&tracker_sparql_pattern_type_id__volatile)) { 15051 static const GTypeInfo g_define_type_info = { sizeof (TrackerSparqlPatternClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) tracker_sparql_pattern_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (TrackerSparqlPattern), 0, (GInstanceInitFunc) tracker_sparql_pattern_instance_init, NULL }; 15052 GType tracker_sparql_pattern_type_id; 15053 tracker_sparql_pattern_type_id = g_type_register_static (G_TYPE_OBJECT, "TrackerSparqlPattern", &g_define_type_info, 0); 15054 g_once_init_leave (&tracker_sparql_pattern_type_id__volatile, tracker_sparql_pattern_type_id); 15055 } 15056 return tracker_sparql_pattern_type_id__volatile;
variable 'self' set but not used
(emitted by gcc)
15057 } 15058 15059 15060 static void _vala_tracker_sparql_pattern_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) { 15061 TrackerSparqlPattern * self; 15062 self = G_TYPE_CHECK_INSTANCE_CAST (object, TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPattern);
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)

15063 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15064 switch (property_id) { 15065 #line 15061 "tracker-sparql-pattern.c" 15066 default: 15067 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15068 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); 15069 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15070 break; 15071 #line 15067 "tracker-sparql-pattern.c" 15072 }
variable 'self' set but not used
(emitted by gcc)
15073 } 15074 15075 15076 static void _vala_tracker_sparql_pattern_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) { 15077 TrackerSparqlPattern * self; 15078 self = G_TYPE_CHECK_INSTANCE_CAST (object, TRACKER_SPARQL_TYPE_PATTERN, TrackerSparqlPattern);
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)

15079 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15080 switch (property_id) { 15081 #line 15077 "tracker-sparql-pattern.c" 15082 default: 15083 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15084 G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec); 15085 #line 158 "/home/martyn/Source/tracker/src/libtracker-data/tracker-sparql-pattern.vala" 15086 break; 15087 #line 15083 "tracker-sparql-pattern.c" 15088 } 15089 } 15090 15091 15092 static void _vala_array_destroy (gpointer array, gint array_length, GDestroyNotify destroy_func) { 15093 if ((array != NULL) && (destroy_func != NULL)) { 15094 int i; 15095 for (i = 0; i < array_length; i = i + 1) { 15096 if (((gpointer*) array)[i] != NULL) { 15097 destroy_func (((gpointer*) array)[i]); 15098 } 15099 } 15100 } 15101 } 15102 15103 15104 static void _vala_array_free (gpointer array, gint array_length, GDestroyNotify destroy_func) { 15105 _vala_array_destroy (array, array_length, destroy_func); 15106 g_free (array); 15107 } 15108 15109 15110 static gint _vala_array_length (gpointer array) { 15111 int length; 15112 length = 0; 15113 if (array) { 15114 while (((gpointer*) array)[length]) { 15115 length++; 15116 } 15117 } 15118 return length; 15119 }