1 /* A Bison parser, made by GNU Bison 2.3. */
\r
3 /* Skeleton interface for Bison's Yacc-like parsers in C
\r
5 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
\r
6 Free Software Foundation, Inc.
\r
8 This program is free software; you can redistribute it and/or modify
\r
9 it under the terms of the GNU General Public License as published by
\r
10 the Free Software Foundation; either version 2, or (at your option)
\r
13 This program is distributed in the hope that it will be useful,
\r
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
\r
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\r
16 GNU General Public License for more details.
\r
18 You should have received a copy of the GNU General Public License
\r
19 along with this program; if not, write to the Free Software
\r
20 Foundation, Inc., 51 Franklin Street, Fifth Floor,
\r
21 Boston, MA 02110-1301, USA. */
\r
23 /* As a special exception, you may create a larger work that contains
\r
24 part or all of the Bison parser skeleton and distribute that work
\r
25 under terms of your choice, so long as that work isn't itself a
\r
26 parser generator using the skeleton or a modified version thereof
\r
27 as a parser skeleton. Alternatively, if you modify or redistribute
\r
28 the parser skeleton itself, you may (at your option) remove this
\r
29 special exception, which will cause the skeleton and the resulting
\r
30 Bison output files to be licensed under the GNU General Public
\r
31 License without this special exception.
\r
33 This special exception was added by the Free Software Foundation in
\r
34 version 2.2 of Bison. */
\r
38 # define YYTOKENTYPE
\r
39 /* Put the tokens into the symbol table, so that GDB and other debuggers
\r
63 LEFT_OUTER_JOIN = 279,
\r
64 RIGHT_OUTER_JOIN = 280,
\r
71 CLEANING_WHEN = 287,
\r
78 GROUPING_SETS = 294,
\r
96 OPERATOR_VIEW = 312,
\r
99 SELECTION_PUSHDOWN = 315
\r
104 #define STRING_TOKEN 259
\r
106 #define LONGINTNUM 261
\r
107 #define APPROXNUM 262
\r
111 #define COMPARISON 266
\r
112 #define SHIFT_OP 267
\r
114 #define SEMICOLON 269
\r
115 #define LEFTBRACE 270
\r
116 #define RIGHTBRACE 271
\r
121 #define INNER_JOIN 276
\r
122 #define FILTER_JOIN 277
\r
123 #define OUTER_JOIN 278
\r
124 #define LEFT_OUTER_JOIN 279
\r
125 #define RIGHT_OUTER_JOIN 280
\r
131 #define SUPERGROUP 286
\r
132 #define CLEANING_WHEN 287
\r
133 #define CLEANING_BY 288
\r
134 #define CLOSING_WHEN 289
\r
139 #define GROUPING_SETS 294
\r
141 #define FALSE_V 296
\r
142 #define TIMEVAL_L 297
\r
149 #define DEFINE_SEC 304
\r
150 #define PARAM_SEC 305
\r
151 #define PROTOCOL 306
\r
155 #define UNPACK_FCNS 310
\r
156 #define OPERATOR 311
\r
157 #define OPERATOR_VIEW 312
\r
159 #define SUBQUERIES 314
\r
160 #define SELECTION_PUSHDOWN 315
\r
165 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
\r
166 typedef union YYSTYPE
\r
174 string_t *stringval;
\r
176 /* for FTA definition. */
\r
178 scalarexp_t *scalarval;
\r
179 se_list_t *se_listval;
\r
180 select_list_t *select_listval;
\r
182 predicate_t *predp;
\r
183 literal_list_t *lit_l;
\r
185 tablevar_list_t *tbl_list;
\r
188 colref_list_t *clist;
\r
189 var_defs_t *var_defs;
\r
190 var_pair_t *var_pair;
\r
192 gb_list_t *gb_list;
\r
193 list_of_gb_list_t *list_of_gb_list;
\r
194 extended_gb_t *extended_gb;
\r
195 extended_gb_list_t *extended_gb_list;
\r
197 query_list_t *q_list;
\r
199 /* For table definition */
\r
200 field_entry *field_t;
\r
201 field_entry_list *field_list_t;
\r
202 table_def *table_def_t;
\r
203 table_list *table_list_schema;
\r
204 param_list *plist_t;
\r
205 name_vec *namevec_t;
\r
206 subquery_spec *subq_spec_t;
\r
207 subqueryspec_list *subqueryspec_list_t;
\r
209 unpack_fcn_list *ufcnl;
\r
212 /* Line 1529 of yacc.c. */
\r
213 #line 214 "fta.tab.cc.h"
\r
215 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
\r
216 # define YYSTYPE_IS_DECLARED 1
\r
217 # define YYSTYPE_IS_TRIVIAL 1
\r
220 extern YYSTYPE FtaParserlval;
\r