-/* A Bison parser, made by GNU Bison 2.3. */\r
-\r
-/* Skeleton interface for Bison's Yacc-like parsers in C\r
-\r
- Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006\r
- Free Software Foundation, Inc.\r
-\r
- This program is free software; you can redistribute it and/or modify\r
- it under the terms of the GNU General Public License as published by\r
- the Free Software Foundation; either version 2, or (at your option)\r
- any later version.\r
-\r
- This program is distributed in the hope that it will be useful,\r
- but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- GNU General Public License for more details.\r
-\r
- You should have received a copy of the GNU General Public License\r
- along with this program; if not, write to the Free Software\r
- Foundation, Inc., 51 Franklin Street, Fifth Floor,\r
- Boston, MA 02110-1301, USA. */\r
-\r
-/* As a special exception, you may create a larger work that contains\r
- part or all of the Bison parser skeleton and distribute that work\r
- under terms of your choice, so long as that work isn't itself a\r
- parser generator using the skeleton or a modified version thereof\r
- as a parser skeleton. Alternatively, if you modify or redistribute\r
- the parser skeleton itself, you may (at your option) remove this\r
- special exception, which will cause the skeleton and the resulting\r
- Bison output files to be licensed under the GNU General Public\r
- License without this special exception.\r
-\r
- This special exception was added by the Free Software Foundation in\r
- version 2.2 of Bison. */\r
-\r
-/* Tokens. */\r
-#ifndef YYTOKENTYPE\r
-# define YYTOKENTYPE\r
- /* Put the tokens into the symbol table, so that GDB and other debuggers\r
- know about them. */\r
- enum yytokentype {\r
- NAME = 258,\r
- STRING_TOKEN = 259,\r
- INTNUM = 260,\r
- LONGINTNUM = 261,\r
- APPROXNUM = 262,\r
- OR = 263,\r
- AND = 264,\r
- NOT = 265,\r
- COMPARISON = 266,\r
- SHIFT_OP = 267,\r
- UMINUS = 268,\r
- SEMICOLON = 269,\r
- LEFTBRACE = 270,\r
- RIGHTBRACE = 271,\r
- BY = 272,\r
- AS = 273,\r
- AGGR = 274,\r
- FROM = 275,\r
- INNER_JOIN = 276,\r
- FILTER_JOIN = 277,\r
- OUTER_JOIN = 278,\r
- LEFT_OUTER_JOIN = 279,\r
- RIGHT_OUTER_JOIN = 280,\r
- GROUP = 281,\r
- HAVING = 282,\r
- IN = 283,\r
- SELECT = 284,\r
- WHERE = 285,\r
- SUPERGROUP = 286,\r
- CLEANING_WHEN = 287,\r
- CLEANING_BY = 288,\r
- CLOSING_WHEN = 289,\r
- SUCH = 290,\r
- THAT = 291,\r
- CUBE = 292,\r
- ROLLUP = 293,\r
- GROUPING_SETS = 294,\r
- TRUE_V = 295,\r
- FALSE_V = 296,\r
- TIMEVAL_L = 297,\r
- HEX_L = 298,\r
- LHEX_L = 299,\r
- IP_L = 300,\r
- IPV6_L = 301,\r
- MERGE = 302,\r
- SLACK = 303,\r
- DEFINE_SEC = 304,\r
- PARAM_SEC = 305,\r
- PROTOCOL = 306,\r
- TABLE = 307,\r
- STREAM = 308,\r
- FTA = 309,\r
- UNPACK_FCNS = 310,\r
- OPERATOR = 311,\r
- OPERATOR_VIEW = 312,\r
- FIELDS = 313,\r
- SUBQUERIES = 314,\r
- SELECTION_PUSHDOWN = 315\r
- };\r
-#endif\r
-/* Tokens. */\r
-#define NAME 258\r
-#define STRING_TOKEN 259\r
-#define INTNUM 260\r
-#define LONGINTNUM 261\r
-#define APPROXNUM 262\r
-#define OR 263\r
-#define AND 264\r
-#define NOT 265\r
-#define COMPARISON 266\r
-#define SHIFT_OP 267\r
-#define UMINUS 268\r
-#define SEMICOLON 269\r
-#define LEFTBRACE 270\r
-#define RIGHTBRACE 271\r
-#define BY 272\r
-#define AS 273\r
-#define AGGR 274\r
-#define FROM 275\r
-#define INNER_JOIN 276\r
-#define FILTER_JOIN 277\r
-#define OUTER_JOIN 278\r
-#define LEFT_OUTER_JOIN 279\r
-#define RIGHT_OUTER_JOIN 280\r
-#define GROUP 281\r
-#define HAVING 282\r
-#define IN 283\r
-#define SELECT 284\r
-#define WHERE 285\r
-#define SUPERGROUP 286\r
-#define CLEANING_WHEN 287\r
-#define CLEANING_BY 288\r
-#define CLOSING_WHEN 289\r
-#define SUCH 290\r
-#define THAT 291\r
-#define CUBE 292\r
-#define ROLLUP 293\r
-#define GROUPING_SETS 294\r
-#define TRUE_V 295\r
-#define FALSE_V 296\r
-#define TIMEVAL_L 297\r
-#define HEX_L 298\r
-#define LHEX_L 299\r
-#define IP_L 300\r
-#define IPV6_L 301\r
-#define MERGE 302\r
-#define SLACK 303\r
-#define DEFINE_SEC 304\r
-#define PARAM_SEC 305\r
-#define PROTOCOL 306\r
-#define TABLE 307\r
-#define STREAM 308\r
-#define FTA 309\r
-#define UNPACK_FCNS 310\r
-#define OPERATOR 311\r
-#define OPERATOR_VIEW 312\r
-#define FIELDS 313\r
-#define SUBQUERIES 314\r
-#define SELECTION_PUSHDOWN 315\r
-\r
-\r
-\r
-\r
-#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED\r
-typedef union YYSTYPE\r
-#line 37 "fta.y"\r
-{\r
- int intval;\r
- double floatval;\r
- char *strval;\r
- int subtok;\r
-\r
- string_t *stringval;\r
-\r
-/* for FTA definition. */\r
- literal_t *litval;\r
- scalarexp_t *scalarval;\r
- se_list_t *se_listval;\r
- select_list_t *select_listval;\r
- table_exp_t *tblp;\r
- predicate_t *predp;\r
- literal_list_t *lit_l;\r
- tablevar_t *table;\r
- tablevar_list_t *tbl_list;\r
- colref_t *colref;\r
- ifpref_t *ifpref;\r
- colref_list_t *clist;\r
- var_defs_t *var_defs;\r
- var_pair_t *var_pair;\r
- gb_t *gb_val;\r
- gb_list_t *gb_list;\r
- list_of_gb_list_t *list_of_gb_list;\r
- extended_gb_t *extended_gb;\r
- extended_gb_list_t *extended_gb_list;\r
-\r
- query_list_t *q_list;\r
-\r
-/* For table definition */\r
- field_entry *field_t;\r
- field_entry_list *field_list_t;\r
- table_def *table_def_t;\r
- table_list *table_list_schema;\r
- param_list *plist_t;\r
- name_vec *namevec_t;\r
- subquery_spec *subq_spec_t;\r
- subqueryspec_list *subqueryspec_list_t;\r
- unpack_fcn *ufcn;\r
- unpack_fcn_list *ufcnl;\r
-\r
-}\r
-/* Line 1529 of yacc.c. */\r
-#line 214 "fta.tab.cc.h"\r
- YYSTYPE;\r
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */\r
-# define YYSTYPE_IS_DECLARED 1\r
-# define YYSTYPE_IS_TRIVIAL 1\r
-#endif\r
-\r
-extern YYSTYPE FtaParserlval;\r
-\r
+/* A Bison parser, made by GNU Bison 3.0.4. */
+
+/* Bison interface for Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+#ifndef YY_FTAPARSER_FTA_TAB_CC_H_INCLUDED
+# define YY_FTAPARSER_FTA_TAB_CC_H_INCLUDED
+/* Debug traces. */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+#if YYDEBUG
+extern int FtaParserdebug;
+#endif
+
+/* Token type. */
+#ifndef YYTOKENTYPE
+# define YYTOKENTYPE
+ enum yytokentype
+ {
+ NAME = 258,
+ STRING_TOKEN = 259,
+ INTNUM = 260,
+ LONGINTNUM = 261,
+ APPROXNUM = 262,
+ OR = 263,
+ AND = 264,
+ NOT = 265,
+ COMPARISON = 266,
+ SHIFT_OP = 267,
+ UMINUS = 268,
+ SEMICOLON = 269,
+ LEFTBRACE = 270,
+ RIGHTBRACE = 271,
+ BY = 272,
+ AS = 273,
+ AGGR = 274,
+ FROM = 275,
+ INNER_JOIN = 276,
+ FILTER_JOIN = 277,
+ OUTER_JOIN = 278,
+ LEFT_OUTER_JOIN = 279,
+ RIGHT_OUTER_JOIN = 280,
+ WATCHLIST_JOIN = 281,
+ GROUP = 282,
+ HAVING = 283,
+ IN = 284,
+ SELECT = 285,
+ WATCHLIST = 286,
+ WHERE = 287,
+ SUPERGROUP = 288,
+ CLEANING_WHEN = 289,
+ CLEANING_BY = 290,
+ CLOSING_WHEN = 291,
+ SUCH = 292,
+ THAT = 293,
+ CUBE = 294,
+ ROLLUP = 295,
+ GROUPING_SETS = 296,
+ TRUE_V = 297,
+ FALSE_V = 298,
+ TIMEVAL_L = 299,
+ HEX_L = 300,
+ LHEX_L = 301,
+ IP_L = 302,
+ IPV6_L = 303,
+ MERGE = 304,
+ SLACK = 305,
+ DEFINE_SEC = 306,
+ PARAM_SEC = 307,
+ PROTOCOL = 308,
+ TABLE = 309,
+ STREAM = 310,
+ FTA = 311,
+ UNPACK_FCNS = 312,
+ OPERATOR = 313,
+ OPERATOR_VIEW = 314,
+ FIELDS = 315,
+ SUBQUERIES = 316,
+ SELECTION_PUSHDOWN = 317
+ };
+#endif
+
+/* Value type. */
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+
+union YYSTYPE
+{
+#line 52 "fta.y" /* yacc.c:1909 */
+
+ int intval;
+ double floatval;
+ char *strval;
+ int subtok;
+
+ string_t *stringval;
+
+/* for FTA definition. */
+ literal_t *litval;
+ scalarexp_t *scalarval;
+ se_list_t *se_listval;
+ select_list_t *select_listval;
+ table_exp_t *tblp;
+ predicate_t *predp;
+ literal_list_t *lit_l;
+ tablevar_t *table;
+ tablevar_list_t *tbl_list;
+ colref_t *colref;
+ ifpref_t *ifpref;
+ colref_list_t *clist;
+ var_defs_t *var_defs;
+ var_pair_t *var_pair;
+ gb_t *gb_val;
+ gb_list_t *gb_list;
+ list_of_gb_list_t *list_of_gb_list;
+ extended_gb_t *extended_gb;
+ extended_gb_list_t *extended_gb_list;
+
+ query_list_t *q_list;
+
+/* For table definition */
+ field_entry *field_t;
+ field_entry_list *field_list_t;
+ table_def *table_def_t;
+ table_list *table_list_schema;
+ param_list *plist_t;
+ name_vec *namevec_t;
+ subquery_spec *subq_spec_t;
+ subqueryspec_list *subqueryspec_list_t;
+ unpack_fcn *ufcn;
+ unpack_fcn_list *ufcnl;
+
+
+#line 162 "fta.tab.cc.h" /* yacc.c:1909 */
+};
+
+typedef union YYSTYPE YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1
+# define YYSTYPE_IS_DECLARED 1
+#endif
+
+
+extern YYSTYPE FtaParserlval;
+
+int FtaParserparse (void);
+
+#endif /* !YY_FTAPARSER_FTA_TAB_CC_H_INCLUDED */