Minor bug fixes and refactors.
diff --git a/parser/SqlLexer.lpp b/parser/SqlLexer.lpp
index d818d0b..6f75424 100644
--- a/parser/SqlLexer.lpp
+++ b/parser/SqlLexer.lpp
@@ -183,9 +183,8 @@
"blockproperties" return TOKEN_BLOCKPROPERTIES;
"blocksample" return TOKEN_BLOCKSAMPLE;
"bloomfilter" return TOKEN_BLOOM_FILTER;
- "case" return TOKEN_CASE;
- "csbtree" return TOKEN_CSB_TREE;
"by" return TOKEN_BY;
+ "case" return TOKEN_CASE;
"char" return TOKEN_CHARACTER;
"character" return TOKEN_CHARACTER;
"check" return TOKEN_CHECK;
@@ -193,6 +192,7 @@
"constraint" return TOKEN_CONSTRAINT;
"copy" return TOKEN_COPY;
"create" return TOKEN_CREATE;
+ "csbtree" return TOKEN_CSB_TREE;
"current" return TOKEN_CURRENT;
"date" return TOKEN_DATE;
"datetime" return TOKEN_DATETIME;
diff --git a/parser/SqlParser.ypp b/parser/SqlParser.ypp
index ba69b3d..12a6b29 100644
--- a/parser/SqlParser.ypp
+++ b/parser/SqlParser.ypp
@@ -259,7 +259,6 @@
%token TOKEN_BLOCKPROPERTIES;
%token TOKEN_BLOCKSAMPLE;
%token TOKEN_BLOOM_FILTER;
-%token TOKEN_CSB_TREE;
%token TOKEN_BY;
%token TOKEN_CASE;
%token TOKEN_CHARACTER;
@@ -268,6 +267,7 @@
%token TOKEN_CONSTRAINT;
%token TOKEN_COPY;
%token TOKEN_CREATE;
+%token TOKEN_CSB_TREE;
%token TOKEN_CURRENT;
%token TOKEN_DATE;
%token TOKEN_DATETIME;
@@ -281,6 +281,7 @@
%token TOKEN_DROP;
%token TOKEN_ELSE;
%token TOKEN_END;
+%token TOKEN_EOF;
%token TOKEN_EXISTS;
%token TOKEN_EXTRACT;
%token TOKEN_FALSE;
@@ -307,6 +308,7 @@
%token TOKEN_KEY;
%token TOKEN_LAST;
%token TOKEN_LEFT;
+%token TOKEN_LEX_ERROR;
%token TOKEN_LIMIT;
%token TOKEN_LONG;
%token TOKEN_MINUTE;
@@ -333,8 +335,8 @@
%token TOKEN_REGEXP;
%token TOKEN_RIGHT;
%token TOKEN_ROW;
-%token TOKEN_ROW_DELIMITER;
%token TOKEN_ROWS;
+%token TOKEN_ROW_DELIMITER;
%token TOKEN_SECOND;
%token TOKEN_SELECT;
%token TOKEN_SET;
@@ -363,8 +365,6 @@
%token TOKEN_WITH;
%token TOKEN_YEAR;
%token TOKEN_YEARMONTH;
-%token TOKEN_EOF;
-%token TOKEN_LEX_ERROR;
%type <string_value_>
any_name
diff --git a/parser/preprocessed/SqlLexer_gen.cpp b/parser/preprocessed/SqlLexer_gen.cpp
index 4800cde..ff483a4 100644
--- a/parser/preprocessed/SqlLexer_gen.cpp
+++ b/parser/preprocessed/SqlLexer_gen.cpp
@@ -611,7 +611,7 @@
158, 158, 158, 158, 137, 4, 5, 5, 3, 155,
155, 152, 156, 156, 150, 157, 157, 154, 1, 162,
130, 160, 159, 159, 159, 0, 134, 131, 135, 158,
- 158, 158, 158, 10, 158, 158, 158, 22, 158, 158,
+ 158, 158, 158, 10, 158, 158, 158, 20, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 138,
158, 158, 158, 158, 158, 158, 158, 158, 158, 158,
@@ -632,8 +632,8 @@
158, 158, 158, 158, 158, 158, 158, 98, 158, 158,
103, 104, 158, 158, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 158, 141,
- 143, 142, 158, 158, 158, 158, 158, 158, 158, 20,
- 23, 158, 158, 158, 28, 158, 158, 158, 31, 158,
+ 143, 142, 158, 158, 158, 158, 158, 158, 158, 21,
+ 22, 158, 158, 158, 27, 158, 158, 158, 31, 158,
158, 158, 37, 158, 158, 41, 42, 158, 158, 158,
158, 158, 158, 158, 52, 53, 158, 55, 158, 57,
@@ -643,7 +643,7 @@
158, 158, 158, 158, 158, 158, 158, 110, 111, 114,
158, 158, 158, 158, 158, 158, 158, 158, 123, 158,
158, 126, 127, 141, 142, 8, 158, 158, 158, 158,
- 158, 158, 158, 25, 158, 158, 158, 158, 158, 158,
+ 158, 158, 158, 24, 158, 158, 158, 158, 158, 158,
158, 158, 158, 158, 158, 158, 158, 158, 46, 47,
48, 158, 158, 54, 158, 59, 60, 158, 158, 158,
@@ -651,21 +651,21 @@
158, 93, 158, 158, 97, 158, 158, 158, 158, 158,
158, 158, 109, 158, 158, 158, 117, 158, 158, 120,
158, 158, 124, 158, 158, 158, 158, 14, 158, 158,
- 158, 158, 158, 26, 158, 29, 158, 158, 158, 158,
+ 158, 158, 158, 25, 158, 28, 158, 158, 158, 158,
158, 36, 158, 158, 40, 44, 158, 158, 158, 56,
61, 158, 158, 158, 75, 158, 158, 158, 158, 158,
158, 96, 158, 101, 102, 158, 106, 107, 158, 158,
158, 158, 118, 119, 121, 158, 125, 158, 158, 13,
- 158, 158, 158, 158, 158, 158, 21, 30, 158, 34,
+ 158, 158, 158, 158, 158, 158, 29, 30, 158, 34,
35, 158, 158, 45, 158, 51, 63, 158, 158, 158,
88, 158, 90, 158, 158, 158, 158, 158, 158, 158,
158, 122, 158, 158, 158, 158, 158, 158, 158, 158,
32, 158, 39, 158, 158, 65, 158, 158, 91, 158,
158, 105, 158, 158, 158, 158, 158, 12, 158, 158,
- 158, 158, 24, 158, 158, 49, 64, 86, 89, 158,
+ 158, 158, 23, 158, 158, 49, 64, 86, 89, 158,
158, 108, 112, 158, 116, 128, 16, 158, 158, 158,
- 27, 38, 87, 95, 158, 158, 158, 18, 19, 158,
+ 26, 38, 87, 95, 158, 158, 158, 18, 19, 158,
115, 158, 158, 158, 99, 158, 17, 0
} ;
@@ -1778,17 +1778,17 @@
case 20:
YY_RULE_SETUP
#line 186 "../SqlLexer.lpp"
-return TOKEN_CASE;
+return TOKEN_BY;
YY_BREAK
case 21:
YY_RULE_SETUP
#line 187 "../SqlLexer.lpp"
-return TOKEN_CSB_TREE;
+return TOKEN_CASE;
YY_BREAK
case 22:
YY_RULE_SETUP
#line 188 "../SqlLexer.lpp"
-return TOKEN_BY;
+return TOKEN_CHARACTER;
YY_BREAK
case 23:
YY_RULE_SETUP
@@ -1798,32 +1798,32 @@
case 24:
YY_RULE_SETUP
#line 190 "../SqlLexer.lpp"
-return TOKEN_CHARACTER;
+return TOKEN_CHECK;
YY_BREAK
case 25:
YY_RULE_SETUP
#line 191 "../SqlLexer.lpp"
-return TOKEN_CHECK;
+return TOKEN_COLUMN;
YY_BREAK
case 26:
YY_RULE_SETUP
#line 192 "../SqlLexer.lpp"
-return TOKEN_COLUMN;
+return TOKEN_CONSTRAINT;
YY_BREAK
case 27:
YY_RULE_SETUP
#line 193 "../SqlLexer.lpp"
-return TOKEN_CONSTRAINT;
+return TOKEN_COPY;
YY_BREAK
case 28:
YY_RULE_SETUP
#line 194 "../SqlLexer.lpp"
-return TOKEN_COPY;
+return TOKEN_CREATE;
YY_BREAK
case 29:
YY_RULE_SETUP
#line 195 "../SqlLexer.lpp"
-return TOKEN_CREATE;
+return TOKEN_CSB_TREE;
YY_BREAK
case 30:
YY_RULE_SETUP
diff --git a/parser/preprocessed/SqlParser_gen.cpp b/parser/preprocessed/SqlParser_gen.cpp
index 9b77875..3292904 100644
--- a/parser/preprocessed/SqlParser_gen.cpp
+++ b/parser/preprocessed/SqlParser_gen.cpp
@@ -221,15 +221,15 @@
TOKEN_BLOCKPROPERTIES = 288,
TOKEN_BLOCKSAMPLE = 289,
TOKEN_BLOOM_FILTER = 290,
- TOKEN_CSB_TREE = 291,
- TOKEN_BY = 292,
- TOKEN_CASE = 293,
- TOKEN_CHARACTER = 294,
- TOKEN_CHECK = 295,
- TOKEN_COLUMN = 296,
- TOKEN_CONSTRAINT = 297,
- TOKEN_COPY = 298,
- TOKEN_CREATE = 299,
+ TOKEN_BY = 291,
+ TOKEN_CASE = 292,
+ TOKEN_CHARACTER = 293,
+ TOKEN_CHECK = 294,
+ TOKEN_COLUMN = 295,
+ TOKEN_CONSTRAINT = 296,
+ TOKEN_COPY = 297,
+ TOKEN_CREATE = 298,
+ TOKEN_CSB_TREE = 299,
TOKEN_CURRENT = 300,
TOKEN_DATE = 301,
TOKEN_DATETIME = 302,
@@ -243,85 +243,85 @@
TOKEN_DROP = 310,
TOKEN_ELSE = 311,
TOKEN_END = 312,
- TOKEN_EXISTS = 313,
- TOKEN_EXTRACT = 314,
- TOKEN_FALSE = 315,
- TOKEN_FIRST = 316,
- TOKEN_FLOAT = 317,
- TOKEN_FOLLOWING = 318,
- TOKEN_FOR = 319,
- TOKEN_FOREIGN = 320,
- TOKEN_FROM = 321,
- TOKEN_FULL = 322,
- TOKEN_GROUP = 323,
- TOKEN_HASH = 324,
- TOKEN_HAVING = 325,
- TOKEN_HOUR = 326,
- TOKEN_IN = 327,
- TOKEN_INDEX = 328,
- TOKEN_INNER = 329,
- TOKEN_INSERT = 330,
- TOKEN_INTEGER = 331,
- TOKEN_INTERVAL = 332,
- TOKEN_INTO = 333,
- TOKEN_JOIN = 334,
- TOKEN_KEY = 335,
- TOKEN_LAST = 336,
- TOKEN_LEFT = 337,
- TOKEN_LIMIT = 338,
- TOKEN_LONG = 339,
- TOKEN_MINUTE = 340,
- TOKEN_MONTH = 341,
- TOKEN_NULL = 342,
- TOKEN_NULLS = 343,
- TOKEN_OFF = 344,
- TOKEN_ON = 345,
- TOKEN_ORDER = 346,
- TOKEN_OUTER = 347,
- TOKEN_OVER = 348,
- TOKEN_PARTITION = 349,
- TOKEN_PARTITIONS = 350,
- TOKEN_PERCENT = 351,
- TOKEN_PRECEDING = 352,
- TOKEN_PRIMARY = 353,
- TOKEN_PRIORITY = 354,
- TOKEN_QUIT = 355,
- TOKEN_RANGE = 356,
- TOKEN_REAL = 357,
- TOKEN_REFERENCES = 358,
- TOKEN_RIGHT = 359,
- TOKEN_ROW = 360,
- TOKEN_ROW_DELIMITER = 361,
- TOKEN_ROWS = 362,
- TOKEN_SECOND = 363,
- TOKEN_SELECT = 364,
- TOKEN_SET = 365,
- TOKEN_SMA = 366,
- TOKEN_SMALLINT = 367,
- TOKEN_STDERR = 368,
- TOKEN_STDOUT = 369,
- TOKEN_SUBSTRING = 370,
- TOKEN_TABLE = 371,
- TOKEN_THEN = 372,
- TOKEN_TIME = 373,
- TOKEN_TIMESTAMP = 374,
- TOKEN_TO = 375,
- TOKEN_TRUE = 376,
- TOKEN_TUPLESAMPLE = 377,
- TOKEN_UNBOUNDED = 378,
- TOKEN_UNIQUE = 379,
- TOKEN_UPDATE = 380,
- TOKEN_USING = 381,
- TOKEN_VALUES = 382,
- TOKEN_VARCHAR = 383,
- TOKEN_WHEN = 384,
- TOKEN_WHERE = 385,
- TOKEN_WINDOW = 386,
- TOKEN_WITH = 387,
- TOKEN_YEAR = 388,
- TOKEN_YEARMONTH = 389,
- TOKEN_EOF = 390,
- TOKEN_LEX_ERROR = 391
+ TOKEN_EOF = 313,
+ TOKEN_EXISTS = 314,
+ TOKEN_EXTRACT = 315,
+ TOKEN_FALSE = 316,
+ TOKEN_FIRST = 317,
+ TOKEN_FLOAT = 318,
+ TOKEN_FOLLOWING = 319,
+ TOKEN_FOR = 320,
+ TOKEN_FOREIGN = 321,
+ TOKEN_FROM = 322,
+ TOKEN_FULL = 323,
+ TOKEN_GROUP = 324,
+ TOKEN_HASH = 325,
+ TOKEN_HAVING = 326,
+ TOKEN_HOUR = 327,
+ TOKEN_IN = 328,
+ TOKEN_INDEX = 329,
+ TOKEN_INNER = 330,
+ TOKEN_INSERT = 331,
+ TOKEN_INTEGER = 332,
+ TOKEN_INTERVAL = 333,
+ TOKEN_INTO = 334,
+ TOKEN_JOIN = 335,
+ TOKEN_KEY = 336,
+ TOKEN_LAST = 337,
+ TOKEN_LEFT = 338,
+ TOKEN_LEX_ERROR = 339,
+ TOKEN_LIMIT = 340,
+ TOKEN_LONG = 341,
+ TOKEN_MINUTE = 342,
+ TOKEN_MONTH = 343,
+ TOKEN_NULL = 344,
+ TOKEN_NULLS = 345,
+ TOKEN_OFF = 346,
+ TOKEN_ON = 347,
+ TOKEN_ORDER = 348,
+ TOKEN_OUTER = 349,
+ TOKEN_OVER = 350,
+ TOKEN_PARTITION = 351,
+ TOKEN_PARTITIONS = 352,
+ TOKEN_PERCENT = 353,
+ TOKEN_PRECEDING = 354,
+ TOKEN_PRIMARY = 355,
+ TOKEN_PRIORITY = 356,
+ TOKEN_QUIT = 357,
+ TOKEN_RANGE = 358,
+ TOKEN_REAL = 359,
+ TOKEN_REFERENCES = 360,
+ TOKEN_RIGHT = 361,
+ TOKEN_ROW = 362,
+ TOKEN_ROWS = 363,
+ TOKEN_ROW_DELIMITER = 364,
+ TOKEN_SECOND = 365,
+ TOKEN_SELECT = 366,
+ TOKEN_SET = 367,
+ TOKEN_SMA = 368,
+ TOKEN_SMALLINT = 369,
+ TOKEN_STDERR = 370,
+ TOKEN_STDOUT = 371,
+ TOKEN_SUBSTRING = 372,
+ TOKEN_TABLE = 373,
+ TOKEN_THEN = 374,
+ TOKEN_TIME = 375,
+ TOKEN_TIMESTAMP = 376,
+ TOKEN_TO = 377,
+ TOKEN_TRUE = 378,
+ TOKEN_TUPLESAMPLE = 379,
+ TOKEN_UNBOUNDED = 380,
+ TOKEN_UNIQUE = 381,
+ TOKEN_UPDATE = 382,
+ TOKEN_USING = 383,
+ TOKEN_VALUES = 384,
+ TOKEN_VARCHAR = 385,
+ TOKEN_WHEN = 386,
+ TOKEN_WHERE = 387,
+ TOKEN_WINDOW = 388,
+ TOKEN_WITH = 389,
+ TOKEN_YEAR = 390,
+ TOKEN_YEARMONTH = 391
};
#endif
@@ -711,7 +711,7 @@
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 50
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 1327
+#define YYLAST 1392
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 148
@@ -828,40 +828,40 @@
"TOKEN_ALL", "TOKEN_UNION", "TOKEN_INTERSECT", "TOKEN_ADD",
"TOKEN_ALTER", "TOKEN_AS", "TOKEN_ASC", "TOKEN_BIGINT", "TOKEN_BIT",
"TOKEN_BITWEAVING", "TOKEN_BLOCKPROPERTIES", "TOKEN_BLOCKSAMPLE",
- "TOKEN_BLOOM_FILTER", "TOKEN_CSB_TREE", "TOKEN_BY", "TOKEN_CASE",
- "TOKEN_CHARACTER", "TOKEN_CHECK", "TOKEN_COLUMN", "TOKEN_CONSTRAINT",
- "TOKEN_COPY", "TOKEN_CREATE", "TOKEN_CURRENT", "TOKEN_DATE",
+ "TOKEN_BLOOM_FILTER", "TOKEN_BY", "TOKEN_CASE", "TOKEN_CHARACTER",
+ "TOKEN_CHECK", "TOKEN_COLUMN", "TOKEN_CONSTRAINT", "TOKEN_COPY",
+ "TOKEN_CREATE", "TOKEN_CSB_TREE", "TOKEN_CURRENT", "TOKEN_DATE",
"TOKEN_DATETIME", "TOKEN_DAY", "TOKEN_DECIMAL", "TOKEN_DEFAULT",
"TOKEN_DELETE", "TOKEN_DESC", "TOKEN_DISTINCT", "TOKEN_DOUBLE",
- "TOKEN_DROP", "TOKEN_ELSE", "TOKEN_END", "TOKEN_EXISTS", "TOKEN_EXTRACT",
- "TOKEN_FALSE", "TOKEN_FIRST", "TOKEN_FLOAT", "TOKEN_FOLLOWING",
- "TOKEN_FOR", "TOKEN_FOREIGN", "TOKEN_FROM", "TOKEN_FULL", "TOKEN_GROUP",
- "TOKEN_HASH", "TOKEN_HAVING", "TOKEN_HOUR", "TOKEN_IN", "TOKEN_INDEX",
- "TOKEN_INNER", "TOKEN_INSERT", "TOKEN_INTEGER", "TOKEN_INTERVAL",
- "TOKEN_INTO", "TOKEN_JOIN", "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LEFT",
+ "TOKEN_DROP", "TOKEN_ELSE", "TOKEN_END", "TOKEN_EOF", "TOKEN_EXISTS",
+ "TOKEN_EXTRACT", "TOKEN_FALSE", "TOKEN_FIRST", "TOKEN_FLOAT",
+ "TOKEN_FOLLOWING", "TOKEN_FOR", "TOKEN_FOREIGN", "TOKEN_FROM",
+ "TOKEN_FULL", "TOKEN_GROUP", "TOKEN_HASH", "TOKEN_HAVING", "TOKEN_HOUR",
+ "TOKEN_IN", "TOKEN_INDEX", "TOKEN_INNER", "TOKEN_INSERT",
+ "TOKEN_INTEGER", "TOKEN_INTERVAL", "TOKEN_INTO", "TOKEN_JOIN",
+ "TOKEN_KEY", "TOKEN_LAST", "TOKEN_LEFT", "TOKEN_LEX_ERROR",
"TOKEN_LIMIT", "TOKEN_LONG", "TOKEN_MINUTE", "TOKEN_MONTH", "TOKEN_NULL",
"TOKEN_NULLS", "TOKEN_OFF", "TOKEN_ON", "TOKEN_ORDER", "TOKEN_OUTER",
"TOKEN_OVER", "TOKEN_PARTITION", "TOKEN_PARTITIONS", "TOKEN_PERCENT",
"TOKEN_PRECEDING", "TOKEN_PRIMARY", "TOKEN_PRIORITY", "TOKEN_QUIT",
"TOKEN_RANGE", "TOKEN_REAL", "TOKEN_REFERENCES", "TOKEN_RIGHT",
- "TOKEN_ROW", "TOKEN_ROW_DELIMITER", "TOKEN_ROWS", "TOKEN_SECOND",
+ "TOKEN_ROW", "TOKEN_ROWS", "TOKEN_ROW_DELIMITER", "TOKEN_SECOND",
"TOKEN_SELECT", "TOKEN_SET", "TOKEN_SMA", "TOKEN_SMALLINT",
"TOKEN_STDERR", "TOKEN_STDOUT", "TOKEN_SUBSTRING", "TOKEN_TABLE",
"TOKEN_THEN", "TOKEN_TIME", "TOKEN_TIMESTAMP", "TOKEN_TO", "TOKEN_TRUE",
"TOKEN_TUPLESAMPLE", "TOKEN_UNBOUNDED", "TOKEN_UNIQUE", "TOKEN_UPDATE",
"TOKEN_USING", "TOKEN_VALUES", "TOKEN_VARCHAR", "TOKEN_WHEN",
"TOKEN_WHERE", "TOKEN_WINDOW", "TOKEN_WITH", "TOKEN_YEAR",
- "TOKEN_YEARMONTH", "TOKEN_EOF", "TOKEN_LEX_ERROR", "';'", "'\\n'", "'('",
- "')'", "','", "'%'", "$accept", "start", "sql_statement",
- "quit_statement", "alter_table_statement", "create_table_statement",
- "create_index_statement", "drop_table_statement", "column_def",
- "column_def_commalist", "data_type", "column_constraint_def",
- "column_constraint_def_list", "opt_column_constraint_def_list",
- "table_constraint_def", "table_constraint_def_commalist",
- "opt_table_constraint_def_commalist", "opt_column_list",
- "opt_block_properties", "opt_partition_clause", "partition_type",
- "key_value_list", "key_value", "key_string_value", "key_string_list",
- "key_integer_value", "key_bool_value", "index_type",
+ "TOKEN_YEARMONTH", "';'", "'\\n'", "'('", "')'", "','", "'%'", "$accept",
+ "start", "sql_statement", "quit_statement", "alter_table_statement",
+ "create_table_statement", "create_index_statement",
+ "drop_table_statement", "column_def", "column_def_commalist",
+ "data_type", "column_constraint_def", "column_constraint_def_list",
+ "opt_column_constraint_def_list", "table_constraint_def",
+ "table_constraint_def_commalist", "opt_table_constraint_def_commalist",
+ "opt_column_list", "opt_block_properties", "opt_partition_clause",
+ "partition_type", "key_value_list", "key_value", "key_string_value",
+ "key_string_list", "key_integer_value", "key_bool_value", "index_type",
"opt_index_properties", "insert_statement", "copy_statement",
"copy_to_target", "opt_copy_params", "update_statement",
"delete_statement", "assignment_list", "assignment_item",
@@ -916,10 +916,10 @@
};
# endif
-#define YYPACT_NINF -410
+#define YYPACT_NINF -388
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-410)))
+ (!!((Yystate) == (-388)))
#define YYTABLE_NINF -139
@@ -930,62 +930,62 @@
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 405, -410, -410, -52, 43, -13, 34, -38, 116, -410,
- 48, 231, 231, -410, 115, 119, -410, -410, -410, -410,
- -410, -410, -410, -410, -410, -410, 166, 46, 49, -410,
- -36, 205, 231, -410, -410, 38, 132, 231, 231, 231,
- 231, 231, -410, -410, 652, 97, 72, -410, 203, 95,
- -410, -410, -410, 130, 175, 46, 48, 158, -410, 130,
- -410, -410, -410, 25, 61, 128, 270, 128, 184, 142,
- 149, -410, 106, -410, -410, 309, 313, -410, -410, -410,
- 743, 153, -410, 218, -410, -410, 189, -410, -410, 331,
- -410, -410, -410, -410, 199, -410, -410, 207, 272, 837,
- 347, 305, 211, -410, -410, 328, 19, -410, -410, 262,
- -410, -410, -410, -410, -410, 1019, 5, 231, 231, 220,
- 231, 38, 231, -410, 130, 373, -410, 148, 243, -410,
- -410, -410, 244, -410, 128, -410, 231, 231, 561, -410,
- -410, 245, 231, -410, -410, -410, 561, 52, 17, -410,
- 400, -410, 140, 140, 1110, 402, -410, 1, 29, -410,
- 20, 149, 1110, -410, -410, 231, 1110, -410, -410, -410,
- -410, 1110, 21, 313, -410, 231, 323, -64, -410, 416,
- -410, 130, -410, 167, -410, 128, 130, 49, -410, 231,
- 152, 231, 231, 231, -410, 269, -410, 169, 1177, 928,
- 220, 470, 426, 433, -410, -410, 407, 428, 1188, 303,
- 173, 23, 1110, 64, -410, 1110, -410, 388, 306, -410,
- -410, -410, -410, -410, -410, 381, -410, 66, 310, -410,
- -410, 8, 209, 215, -410, 311, 209, 9, 385, -410,
- -410, 19, -410, 360, -410, -410, 315, 1110, -410, 301,
- 180, 231, -410, 1110, -410, 231, -410, -410, -410, 320,
- 384, 386, 329, -410, -410, -410, 196, -410, -410, -410,
- -410, -410, 16, 231, 341, 152, 231, -410, 174, -410,
- -410, 2, 81, 561, 561, 206, -410, -410, -410, -410,
- -410, -410, -410, -410, 1110, 334, 1110, 58, -410, 210,
- 335, 349, 1110, 68, -410, 420, 301, -410, -410, 1110,
- 476, -410, 162, 231, -410, -410, 389, -410, 390, 391,
- 406, 20, -410, 486, 487, 209, 453, 421, 455, 353,
- 403, -410, 223, -410, 1110, -410, 301, -410, 561, 357,
- 358, 231, -410, 231, -410, -410, -410, -410, -410, -410,
- -410, 231, -410, -410, -410, 225, 477, 86, -410, 361,
- 366, -410, 417, 364, 1188, -410, 430, 231, -410, -410,
- 174, -410, -410, 433, -410, -410, -410, 1110, 367, 284,
- 837, -410, 301, 424, -410, -410, 1188, 1188, 374, 301,
- 1110, -410, 33, -16, -410, -410, -410, -410, -410, 20,
- 215, 419, 422, -410, 1110, 561, 429, 1110, -410, 475,
- 18, -410, 301, 31, 231, 231, 227, -410, 233, -410,
- 231, -410, -410, -410, -410, 382, 152, 489, 432, -410,
- 561, -410, -410, 392, -410, 289, 837, -410, 1110, 238,
- -410, -410, 240, 1188, 301, -410, 521, -410, 437, -410,
- -410, 393, 426, 498, 456, 393, 1110, -410, -410, -410,
- 522, -410, 246, 252, -410, -410, -410, 231, -410, -410,
- 399, 504, -410, 32, 231, 1110, 254, 301, -410, -410,
- 257, 404, 561, 1110, 540, 412, 408, -410, 274, 11,
- 442, -410, 286, 231, 127, -410, 410, 301, -410, -410,
- -410, 426, 408, -410, 231, -410, 412, -410, 1110, -410,
- -410, 460, 454, 447, 458, 549, 231, -410, 290, -410,
- -410, 425, -410, 528, -410, -410, -6, -410, -410, -410,
- -410, 12, 431, -410, 231, 434, -410, -410, 495, 462,
- 496, -410, 231, 293, 360, -410, -410, -410, 299, 473,
- 435, -410, 563, -410, -410
+ 239, -388, -388, -36, 39, -27, 28, -19, -388, 23,
+ -388, 30, 237, 237, 122, 7, -388, -388, -388, -388,
+ -388, -388, -388, -388, -388, -388, 154, 3, 156, -388,
+ -14, 187, 237, -388, -388, 53, 13, 237, 237, 237,
+ 237, 237, -388, -388, 701, 129, 103, -388, 226, 121,
+ -388, -388, -388, 161, 198, 3, 30, 190, -388, 161,
+ -388, -388, -388, 43, 16, 166, 288, 166, 211, 168,
+ 182, -388, 146, -388, -388, 329, 334, -388, -388, -388,
+ 795, 199, -388, 270, -388, -388, 216, -388, -388, 359,
+ -388, -388, -388, -388, 235, -388, -388, 258, 320, 890,
+ 410, 352, 279, -388, -388, 285, 18, -388, -388, 326,
+ -388, -388, -388, -388, -388, 1080, -17, 237, 237, 283,
+ 237, 53, 237, -388, 161, 421, -388, 163, 177, -388,
+ -388, -388, 286, -388, 166, -388, 237, 237, 607, -388,
+ -388, 287, 237, -388, -388, -388, 607, 57, 62, -388,
+ 422, -388, 141, 141, 1174, 425, -388, -2, 29, -388,
+ 19, 182, 1174, -388, -388, 237, 1174, -388, -388, -388,
+ -388, 1174, 20, 334, -388, 237, 400, 93, -388, 423,
+ -388, 161, -388, 80, -388, 166, 161, 156, -388, 237,
+ 153, 237, 237, 237, -388, 293, -388, 130, 1251, 986,
+ 283, 511, 430, 431, -388, -388, 312, 419, 1238, 298,
+ 170, 22, 1174, 78, -388, 1174, -388, 383, 301, -388,
+ -388, -388, -388, -388, -388, 375, -388, 181, 303, -388,
+ -388, 10, 77, 269, -388, 304, 77, -20, 379, -388,
+ -388, 18, -388, 348, -388, -388, 310, 1174, -388, 330,
+ 213, 237, -388, 1174, -388, 237, -388, -388, -388, 313,
+ 370, 374, 317, -388, -388, -388, 222, -388, -388, -388,
+ -388, -388, 87, 237, 331, 153, 237, -388, 256, -388,
+ -388, -1, 50, 607, 607, 219, -388, -388, -388, -388,
+ -388, -388, -388, -388, 1174, 318, 1174, 66, -388, 224,
+ 325, 333, 1174, 26, -388, 409, 330, -388, -388, 1174,
+ 465, -388, 133, 237, -388, -388, 376, -388, 377, 378,
+ 388, 19, -388, 467, 471, 77, 438, 404, 440, 339,
+ 387, -388, 227, -388, 1174, -388, 330, -388, 607, 342,
+ 343, 237, -388, 237, -388, -388, -388, -388, -388, -388,
+ -388, 237, -388, -388, -388, 229, 461, 180, -388, 344,
+ 353, -388, 399, 351, 1238, -388, 411, 237, -388, -388,
+ 256, -388, -388, 431, -388, -388, -388, 1174, 354, 292,
+ 890, -388, 330, 402, -388, -388, 1238, 1238, 355, 330,
+ 1174, -388, 32, 71, -388, -388, -388, -388, -388, 19,
+ 269, 398, 401, -388, 1174, 607, 405, 1174, -388, 464,
+ 142, -388, 330, 21, 237, 237, 231, -388, 236, -388,
+ 237, -388, -388, -388, -388, 358, 153, 468, 406, -388,
+ 607, -388, -388, 364, -388, 323, 890, -388, 1174, 238,
+ -388, -388, 240, 1238, 330, -388, 503, -388, 414, -388,
+ -388, 367, 430, 473, 433, 367, 1174, -388, -388, -388,
+ 501, -388, 243, 246, -388, -388, -388, 237, -388, -388,
+ 380, 486, -388, 31, 237, 1174, 252, 330, -388, -388,
+ 254, 384, 607, 1174, 521, 393, 390, -388, 68, 48,
+ 424, -388, 263, 237, 44, -388, 392, 330, -388, -388,
+ -388, 430, 390, -388, 237, -388, 393, -388, 1174, -388,
+ -388, 444, 436, 437, 439, 533, 237, -388, 267, -388,
+ -388, 407, -388, 515, -388, -388, 132, -388, -388, -388,
+ -388, 49, 408, -388, 237, 412, -388, -388, 481, 443,
+ 488, -388, 237, 272, 348, -388, -388, -388, 274, 456,
+ 415, -388, 552, -388, -388
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -993,8 +993,8 @@
means the default is an error. */
static const yytype_uint16 yydefact[] =
{
- 0, 6, 300, 0, 0, 0, 0, 0, 0, 18,
- 123, 0, 0, 7, 0, 0, 15, 8, 10, 11,
+ 0, 6, 300, 0, 0, 0, 0, 0, 7, 0,
+ 18, 123, 0, 0, 0, 0, 15, 8, 10, 11,
13, 14, 9, 17, 12, 16, 0, 112, 119, 121,
0, 298, 0, 292, 293, 0, 0, 0, 0, 0,
0, 0, 124, 125, 0, 0, 114, 115, 0, 156,
@@ -1054,18 +1054,18 @@
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -410, -410, -410, -410, -410, -410, -410, -410, -148, -410,
- 376, 216, -410, -410, -264, -410, -410, -410, -410, -410,
- -410, -409, 236, -410, -410, -410, -410, -410, -410, -410,
- -410, 85, -3, -410, -410, -410, 325, -410, 526, -410,
- -410, 467, 217, 464, -43, 533, -410, -410, 436, -410,
- -114, -410, -410, -186, 192, -184, -9, -410, -410, -410,
- -410, -410, -410, -410, 89, 55, -410, -410, -410, -410,
- -410, -410, 109, 92, -410, -410, 79, -410, -142, 318,
- 322, 409, -42, 441, 439, 501, -154, -410, -410, -410,
- -410, 398, -410, 469, 413, -232, -195, 449, -324, -410,
- -129, -410, -410, -410, -410, -410, -141, -4, -410, -410,
- -410
+ -388, -388, -388, -388, -388, -388, -388, -388, -145, -388,
+ 363, 194, -388, -388, -264, -388, -388, -388, -388, -388,
+ -388, -387, 223, -388, -388, -388, -388, -388, -388, -388,
+ -388, 61, -50, -388, -388, -388, 316, -388, 513, -388,
+ -388, 451, 257, 447, -41, 516, -388, -388, 416, -388,
+ -114, -388, -388, -191, 174, -214, -10, -388, -388, -388,
+ -388, -388, -388, -388, 74, 33, -388, -388, -388, -388,
+ -388, -388, 91, 73, -388, -388, -56, -388, -142, 299,
+ 300, 386, -42, 417, 418, 472, -154, -388, -388, -388,
+ -388, 373, -388, 442, 382, -232, -195, 435, -292, -388,
+ -126, -388, -388, -388, -388, -388, -141, -4, -388, -388,
+ -388
};
/* YYDEFGOTO[NTERM-NUM]. */
@@ -1090,338 +1090,352 @@
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 36, 210, 105, 48, 211, 182, 236, 45, 49, 207,
- 283, 358, 33, 298, 34, 332, 126, 207, 512, 538,
- 33, 344, 34, 345, 33, 33, 34, 34, 63, 143,
- 56, 283, 175, 68, 69, 70, 71, 72, 147, 283,
- 283, 258, 168, 169, 346, 312, 232, 33, 323, 34,
- 163, 164, 322, 446, 163, 164, 127, 158, 492, 281,
- 536, 513, 539, 442, 135, 37, 129, 56, 383, 32,
- 207, 138, 207, 163, 164, 56, 42, 236, 215, 59,
- 537, 347, 251, 40, 518, 128, 280, 163, 164, 163,
- 164, 285, 286, 287, 288, 289, 290, 291, 292, 293,
- 294, 167, 163, 164, 60, 39, 43, 61, 38, 48,
- 348, 349, 227, 179, 49, 50, 184, 232, 186, 480,
- 105, 67, 10, 421, 457, 215, 422, 423, 361, 447,
- 458, 194, 195, 198, 249, 400, 324, 310, 184, 514,
- 540, 403, 350, 257, 354, 302, 229, 372, 439, 176,
- 384, 146, 231, 176, 207, 207, 237, 10, 295, 282,
- 351, 240, 469, 64, 231, 243, 170, 236, 244, 431,
- 303, 245, 451, 306, 230, 455, 461, 495, 445, 130,
- 131, 381, 256, 57, 362, 198, 212, 264, 265, 272,
- 390, 441, 298, 219, 189, 190, 413, 259, 212, 41,
- 416, 519, 424, 66, 476, 249, 185, 232, 62, 207,
- 418, 336, 117, 33, 53, 34, 220, 27, 118, 363,
- 10, 35, 260, 375, 376, 377, 230, 237, 49, 364,
- 221, 222, 49, 520, 316, 33, 119, 34, 141, 120,
- 238, 317, 313, 55, 10, 236, 54, 179, 298, 318,
- 142, 337, 379, 223, 382, 261, 252, 64, 122, 51,
- 389, 52, 125, 452, 437, 132, 365, 392, 352, 356,
- 121, 319, 198, 462, 463, 134, 207, 366, 224, 136,
- 10, 262, 367, 378, 138, 232, 137, 316, 473, 191,
- 192, 466, 412, 438, 317, 163, 164, 150, 475, -138,
- 151, 207, 318, 368, 395, 163, 164, 394, 509, 49,
- 163, 164, 254, 255, 275, 276, 144, 237, 301, 255,
- 145, 49, 163, 164, 319, 333, 334, 33, 73, 34,
- 74, 510, 33, 152, 34, 435, 153, 184, 249, 272,
- 501, 342, 343, 154, 75, 76, 246, 184, 444, 163,
- 164, 155, 159, 207, 156, 385, 386, 162, 78, 79,
- 172, 165, 249, 433, 181, 249, 80, 81, 411, 334,
- 419, 420, 464, 255, 82, 83, 160, 84, 465, 255,
- 188, 247, 85, 478, 334, 479, 386, 86, 193, 208,
- 87, 490, 255, 543, 249, 237, 477, 491, 255, 498,
- 334, 548, 499, 386, 88, 89, 1, 218, 2, 228,
- 184, 184, 90, 273, 488, 91, 356, 285, 286, 287,
- 288, 289, 290, 291, 292, 293, 294, 253, 163, 164,
- 92, 517, 343, 497, 283, 533, 343, 3, 549, 255,
- 93, 488, 284, 94, 551, 255, 95, 96, 297, 300,
- 307, 308, 309, 4, 5, 311, 97, 321, 326, 328,
- 331, 6, 98, 272, 338, 7, 488, 99, 248, 339,
- 496, 340, 357, 341, 33, 73, 34, 74, 380, 387,
- 199, 388, 391, 393, 295, 8, 396, 397, 398, 272,
- 399, 75, 76, 401, 402, 404, 405, 407, 408, 409,
- 523, 414, 415, 427, 175, 78, 79, 426, 430, 429,
- 9, 436, 532, 80, 81, 432, 440, 456, 443, 10,
- 449, 82, 83, 450, 84, 453, 467, 470, 481, 85,
- 184, 471, 482, 200, 86, 11, 474, 87, 184, 334,
- 483, 489, 12, 493, 484, 13, 494, 503, 504, 500,
- 516, 88, 89, 526, 508, 522, 528, 529, 531, 90,
- 530, 535, 91, 545, 547, 33, 73, 34, 74, 534,
- 554, 199, 546, 552, 278, 542, 335, 92, 544, 417,
- 553, 123, 75, 76, 10, 180, 434, 93, 187, 124,
- 94, 448, 502, 95, 96, 524, 78, 79, 239, 550,
- 525, 373, 226, 97, 80, 81, 374, 241, 279, 98,
- 242, 304, 82, 83, 201, 84, 174, 216, 0, 0,
- 85, 0, 0, 0, 200, 86, 305, 0, 87, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 88, 89, 0, 0, 0, 0, 0, 0,
- 90, 0, 0, 91, 0, 0, 33, 73, 34, 74,
- 0, 0, 0, 0, 0, 0, 0, 0, 92, 0,
- 0, 0, 0, 75, 76, 77, 0, 0, 93, 0,
- 0, 94, 0, 0, 95, 96, 0, 78, 79, 0,
- 0, 0, 0, 0, 97, 80, 81, 0, 0, 0,
- 98, 0, 0, 82, 83, 201, 84, 0, 0, 0,
- 0, 85, 0, 0, 0, 0, 86, 0, 0, 87,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 88, 89, 0, 0, 0, 0, 0,
- 0, 90, 0, 0, 91, 0, 0, 33, 73, 34,
- 74, 0, 0, 0, 0, 0, 0, 0, 0, 92,
- 0, 0, 0, 0, 75, 76, 0, 0, 0, 93,
- 0, 0, 94, 0, 0, 95, 96, 0, 78, 79,
- 0, 0, 0, 0, 0, 97, 80, 81, 0, 0,
- 0, 98, 0, 0, 82, 83, 99, 84, 0, 0,
- 0, 0, 85, 0, 0, 0, 0, 86, 0, 0,
- 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 88, 89, 0, 0, 0, 0,
+ 36, 210, 105, 48, 211, 182, 236, 283, 45, 49,
+ 175, 358, 207, 298, 33, 332, 34, 135, 126, 323,
+ 207, 129, 322, 33, 33, 34, 34, 56, 63, 283,
+ 283, 143, 56, 68, 69, 70, 71, 72, 147, 283,
+ 312, 168, 169, 33, 258, 34, 232, 163, 164, 60,
+ 163, 164, 37, 163, 164, 512, 538, 158, 42, 281,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 51, 163, 164, 207, 127, 207, 383, 236, 163, 164,
+ 492, 33, 56, 34, 194, 66, 280, 32, 43, 163,
+ 164, 33, 344, 34, 345, 442, 38, 67, 513, 539,
+ 39, 167, 509, 128, 40, 238, 518, 41, 48, 324,
+ 313, 403, 227, 179, 49, 346, 184, 232, 186, 519,
+ 105, 252, 50, 215, 176, 510, 11, 176, 295, 61,
+ 400, 361, 195, 198, 249, 256, 130, 131, 184, 215,
+ 64, 446, 57, 229, 372, 257, 302, 354, 439, 52,
+ 390, 480, 520, 347, 231, 11, 237, 207, 207, 282,
+ 384, 240, 469, 231, 243, 170, 461, 236, 244, 431,
+ 303, 245, 451, 306, 230, 455, 495, 445, 514, 540,
+ 64, 381, 185, 348, 349, 198, 59, 264, 265, 272,
+ 62, 441, 298, 212, 219, 230, 413, 259, 146, 536,
+ 416, 53, 163, 164, 476, 249, 316, 232, 189, 190,
+ 418, 336, 207, 317, 212, 350, 447, 421, 220, 537,
+ 422, 318, 191, 192, 260, 254, 255, 237, 49, 423,
+ 138, 351, 49, 221, 222, 54, 375, 376, 377, 251,
+ 1, 33, 2, 34, 319, 236, 117, 179, 298, 118,
+ 457, 337, 379, 310, 382, 458, 223, 27, 261, 119,
+ 389, 35, 11, 452, 437, 120, 362, 392, 352, 356,
+ 11, 3, 198, 462, 463, 275, 276, 11, 394, 207,
+ 141, 224, 122, 55, 262, 232, 4, 5, 473, 33,
+ 142, 34, 412, 134, 466, 6, 125, 378, 424, 7,
+ 363, 438, 8, 395, 207, 132, 163, 164, 136, 49,
+ 121, 364, 137, 163, 164, 301, 255, 237, 165, 138,
+ 9, 49, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 475, 163, 164, 435, 144, 184, 249, 272,
+ 501, 145, 316, 150, 163, 164, 10, 184, 444, 317,
+ 365, 163, 164, 151, -138, 11, 207, 318, 333, 334,
+ 152, 366, 249, 433, 153, 249, 367, 342, 343, 385,
+ 386, 12, 411, 334, 419, 420, 464, 255, 13, 154,
+ 319, 465, 255, 478, 334, 479, 386, 368, 490, 255,
+ 295, 491, 255, 543, 249, 237, 477, 498, 334, 499,
+ 386, 548, 155, 156, 33, 73, 34, 74, 517, 343,
+ 184, 184, 533, 343, 488, 159, 356, 549, 255, 551,
+ 255, 75, 76, 246, 160, 162, 172, 181, 188, 218,
+ 193, 208, 228, 497, 253, 78, 79, 273, 283, 297,
+ 284, 488, 80, 81, 300, 307, 308, 309, 311, 328,
+ 321, 82, 83, 326, 84, 331, 339, 338, 247, 85,
+ 340, 341, 380, 272, 357, 86, 488, 388, 87, 387,
+ 496, 391, 393, 399, 401, 396, 397, 398, 402, 404,
+ 405, 407, 88, 89, 408, 409, 414, 415, 175, 272,
+ 426, 90, 427, 429, 91, 430, 440, 432, 436, 443,
+ 523, 449, 467, 453, 450, 456, 470, 471, 474, 92,
+ 481, 482, 532, 334, 483, 33, 73, 34, 74, 93,
+ 489, 199, 94, 484, 493, 95, 96, 494, 503, 500,
+ 184, 504, 75, 76, 516, 97, 508, 522, 184, 526,
+ 528, 98, 531, 530, 99, 248, 78, 79, 535, 529,
+ 545, 534, 542, 80, 81, 546, 544, 547, 552, 554,
+ 553, 278, 82, 83, 434, 84, 417, 335, 123, 180,
+ 85, 187, 124, 448, 502, 200, 86, 550, 239, 87,
+ 524, 525, 373, 241, 374, 279, 304, 174, 226, 242,
+ 216, 0, 0, 88, 89, 305, 0, 0, 0, 0,
0, 0, 90, 0, 0, 91, 0, 0, 0, 0,
- 0, 33, 73, 34, 74, 0, 0, 0, 0, 0,
- 92, 0, 0, 0, 0, 0, 0, 0, 75, 76,
+ 0, 33, 73, 34, 74, 0, 0, 199, 0, 0,
+ 92, 0, 0, 0, 0, 0, 0, 11, 75, 76,
93, 0, 0, 94, 0, 0, 95, 96, 0, 0,
- 0, 0, 78, 79, 0, 0, 97, 146, 0, 0,
- 80, 81, 98, 0, 0, 0, 0, 99, 82, 83,
+ 0, 0, 78, 79, 0, 0, 97, 0, 0, 80,
+ 81, 0, 98, 0, 0, 201, 0, 0, 82, 83,
0, 84, 0, 0, 0, 0, 85, 0, 0, 0,
- 0, 86, 0, 0, 87, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 88, 89,
- 0, 0, 0, 0, 0, 0, 90, 0, 0, 91,
- 0, 0, 33, 73, 34, 74, 0, 0, 0, 0,
- 0, 0, 0, 0, 92, 0, 0, 0, 0, 75,
- 76, 10, 0, 0, 93, 0, 0, 94, 0, 0,
- 95, 96, 0, 78, 79, 0, 0, 0, 0, 0,
- 97, 80, 81, 0, 0, 0, 98, 0, 0, 82,
- 83, 99, 84, 0, 0, 0, 0, 85, 0, 0,
0, 200, 86, 0, 0, 87, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 88,
- 89, 0, 0, 0, 0, 0, 0, 90, 0, 0,
- 91, 0, 0, 33, 73, 34, 74, 0, 0, 0,
- 0, 0, 0, 0, 0, 92, 0, 0, 0, 0,
- 75, 173, 0, 0, 0, 93, 0, 0, 94, 0,
- 0, 95, 96, 0, 78, 79, 0, 0, 0, 0,
- 0, 97, 80, 81, 0, 0, 0, 98, 0, 0,
- 82, 83, 201, 84, 0, 0, 0, 0, 85, 0,
- 0, 0, 0, 86, 0, 0, 87, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 88, 89, 0, 0, 0, 0, 0, 0, 90, 0,
- 0, 91, 0, 0, 33, 73, 34, 74, 0, 0,
+ 89, 0, 0, 0, 0, 0, 0, 0, 90, 0,
+ 0, 91, 0, 0, 0, 33, 73, 34, 74, 0,
0, 0, 0, 0, 0, 0, 92, 0, 0, 0,
- 0, 75, 76, 0, 0, 0, 93, 0, 0, 94,
- 0, 0, 95, 96, 0, 78, 79, 0, 0, 0,
+ 0, 0, 75, 76, 77, 0, 93, 0, 0, 94,
+ 0, 0, 95, 96, 0, 0, 78, 79, 0, 0,
0, 0, 97, 80, 81, 0, 0, 0, 98, 0,
- 0, 82, 83, 99, 84, 0, 0, 0, 0, 85,
- 0, 0, 0, 0, 86, 0, 0, 87, 0, 0,
+ 0, 201, 82, 83, 0, 84, 0, 0, 0, 0,
+ 85, 0, 0, 0, 0, 0, 86, 0, 0, 87,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 88, 89, 73, 0, 74, 0, 0, 0, 90,
- 0, 0, 91, 0, 0, 0, 0, 0, 0, 75,
- 173, 0, 78, 79, 0, 0, 0, 92, 0, 0,
- 0, 81, 0, 78, 79, 0, 0, 93, 82, 83,
- 94, 84, 81, 95, 96, 0, 85, 0, 0, 82,
- 83, 0, 84, 97, 87, 0, 0, 85, 0, 98,
- 0, 0, 0, 0, 99, 87, 0, 0, 88, 277,
- 0, 0, 0, 0, 0, 0, 90, 0, 0, 88,
- 89, 0, 0, 0, 0, 0, 0, 90, 0, 0,
- 91, 0, 0, 0, 92, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 93, 92, 0, 0, 0, 0,
- 95, 96, 0, 0, 0, 93, 0, 0, 0, 0,
- 97, 95, 96, 0, 0, 0, 98, 0, 0, 0,
- 0, 97, 0, 0, 0, 0, 0, 98
+ 0, 0, 0, 88, 89, 0, 0, 0, 0, 0,
+ 0, 0, 90, 0, 0, 91, 0, 0, 0, 33,
+ 73, 34, 74, 0, 0, 0, 0, 0, 0, 0,
+ 92, 0, 0, 0, 0, 0, 75, 76, 0, 0,
+ 93, 0, 0, 94, 0, 0, 95, 96, 0, 0,
+ 78, 79, 0, 0, 0, 0, 97, 80, 81, 0,
+ 0, 0, 98, 0, 0, 99, 82, 83, 0, 84,
+ 0, 0, 0, 0, 85, 0, 0, 0, 0, 0,
+ 86, 0, 0, 87, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 88, 89, 0,
+ 0, 0, 0, 0, 0, 0, 90, 0, 0, 91,
+ 0, 0, 0, 0, 33, 73, 34, 74, 0, 0,
+ 0, 0, 0, 0, 92, 0, 0, 0, 0, 0,
+ 0, 75, 76, 0, 93, 0, 0, 94, 0, 0,
+ 95, 96, 0, 0, 0, 78, 79, 0, 0, 0,
+ 97, 146, 80, 81, 0, 0, 98, 0, 0, 99,
+ 0, 82, 83, 0, 84, 0, 0, 0, 0, 85,
+ 0, 0, 0, 0, 0, 86, 0, 0, 87, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 88, 89, 0, 0, 0, 0, 0, 0,
+ 0, 90, 0, 0, 91, 0, 0, 0, 0, 0,
+ 33, 73, 34, 74, 0, 0, 0, 0, 0, 92,
+ 0, 0, 0, 0, 0, 0, 11, 75, 76, 93,
+ 0, 0, 94, 0, 0, 95, 96, 0, 0, 0,
+ 0, 78, 79, 0, 0, 97, 0, 0, 80, 81,
+ 0, 98, 0, 0, 99, 0, 0, 82, 83, 0,
+ 84, 0, 0, 0, 0, 85, 0, 0, 0, 0,
+ 200, 86, 0, 0, 87, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 88, 89,
+ 0, 0, 0, 0, 0, 0, 0, 90, 0, 0,
+ 91, 0, 0, 0, 33, 73, 34, 74, 0, 0,
+ 0, 0, 0, 0, 0, 92, 0, 0, 0, 0,
+ 0, 75, 173, 0, 0, 93, 0, 0, 94, 0,
+ 0, 95, 96, 0, 0, 78, 79, 0, 0, 0,
+ 0, 97, 80, 81, 0, 0, 0, 98, 0, 0,
+ 201, 82, 83, 0, 84, 0, 0, 0, 0, 85,
+ 0, 0, 0, 0, 0, 86, 0, 0, 87, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 88, 89, 0, 0, 0, 0, 0, 0,
+ 0, 90, 0, 0, 91, 0, 0, 0, 33, 73,
+ 34, 74, 0, 0, 0, 0, 0, 0, 0, 92,
+ 0, 0, 0, 0, 0, 75, 76, 0, 0, 93,
+ 0, 0, 94, 0, 0, 95, 96, 0, 0, 78,
+ 79, 0, 0, 0, 0, 97, 80, 81, 0, 0,
+ 0, 98, 0, 0, 99, 82, 83, 0, 84, 0,
+ 0, 0, 0, 85, 0, 0, 0, 0, 0, 86,
+ 0, 0, 87, 73, 0, 74, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 88, 89, 0, 75,
+ 173, 0, 0, 0, 0, 90, 0, 0, 91, 0,
+ 0, 0, 0, 78, 79, 0, 0, 0, 0, 0,
+ 0, 81, 0, 92, 0, 0, 78, 79, 0, 82,
+ 83, 0, 84, 93, 81, 0, 94, 85, 0, 95,
+ 96, 0, 82, 83, 0, 84, 87, 0, 0, 97,
+ 85, 0, 0, 0, 0, 98, 0, 0, 99, 87,
+ 88, 89, 0, 0, 0, 0, 0, 0, 0, 90,
+ 0, 0, 91, 88, 277, 0, 0, 0, 0, 0,
+ 0, 0, 90, 0, 0, 0, 0, 92, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 93, 0, 0,
+ 92, 0, 0, 95, 96, 0, 0, 0, 0, 0,
+ 93, 0, 0, 97, 0, 0, 95, 96, 0, 98,
+ 0, 0, 0, 0, 0, 0, 97, 0, 0, 0,
+ 0, 0, 98
};
static const yytype_int16 yycheck[] =
{
- 4, 142, 44, 12, 146, 119, 160, 11, 12, 138,
- 8, 275, 4, 208, 6, 247, 59, 146, 7, 7,
- 4, 5, 6, 7, 4, 4, 6, 6, 32, 72,
- 29, 8, 27, 37, 38, 39, 40, 41, 80, 8,
- 8, 189, 23, 24, 28, 231, 160, 4, 39, 6,
- 21, 22, 236, 69, 21, 22, 31, 99, 467, 201,
- 66, 50, 50, 387, 67, 78, 5, 29, 10, 121,
- 199, 135, 201, 21, 22, 29, 28, 231, 61, 30,
- 86, 65, 146, 121, 493, 60, 200, 21, 22, 21,
- 22, 10, 11, 12, 13, 14, 15, 16, 17, 18,
- 19, 105, 21, 22, 140, 71, 58, 143, 121, 118,
- 94, 95, 154, 117, 118, 0, 120, 231, 122, 443,
- 162, 36, 114, 37, 106, 61, 40, 41, 276, 145,
- 112, 134, 136, 137, 176, 321, 127, 71, 142, 128,
- 128, 325, 126, 186, 273, 122, 145, 145, 380, 144,
- 92, 134, 144, 144, 283, 284, 160, 114, 77, 201,
- 144, 165, 426, 125, 144, 144, 147, 321, 172, 364,
- 212, 175, 404, 215, 145, 407, 145, 145, 145, 118,
- 119, 295, 185, 137, 10, 189, 134, 191, 192, 193,
- 122, 386, 387, 53, 46, 47, 338, 45, 134, 83,
- 341, 74, 116, 71, 436, 247, 121, 321, 3, 338,
- 351, 253, 115, 4, 48, 6, 76, 0, 146, 45,
- 114, 4, 70, 17, 18, 19, 145, 231, 232, 55,
- 90, 91, 236, 106, 72, 4, 33, 6, 132, 144,
- 161, 79, 33, 26, 114, 399, 80, 251, 443, 87,
- 144, 255, 294, 113, 296, 103, 177, 125, 83, 140,
- 302, 142, 104, 405, 378, 137, 92, 309, 272, 273,
- 53, 109, 276, 414, 415, 5, 405, 103, 138, 95,
- 114, 129, 108, 77, 135, 399, 144, 72, 430, 46,
- 47, 420, 334, 9, 79, 21, 22, 144, 9, 84,
- 82, 430, 87, 129, 313, 21, 22, 145, 34, 313,
- 21, 22, 145, 146, 145, 146, 7, 321, 145, 146,
- 7, 325, 21, 22, 109, 145, 146, 4, 5, 6,
- 7, 57, 4, 144, 6, 377, 5, 341, 380, 343,
- 482, 145, 146, 144, 21, 22, 23, 351, 390, 21,
- 22, 144, 5, 482, 82, 145, 146, 146, 35, 36,
- 98, 33, 404, 367, 144, 407, 43, 44, 145, 146,
- 145, 146, 145, 146, 51, 52, 71, 54, 145, 146,
- 7, 58, 59, 145, 146, 145, 146, 64, 144, 144,
- 67, 145, 146, 534, 436, 399, 438, 145, 146, 145,
- 146, 542, 145, 146, 81, 82, 1, 7, 3, 7,
- 414, 415, 89, 144, 456, 92, 420, 10, 11, 12,
- 13, 14, 15, 16, 17, 18, 19, 11, 21, 22,
- 107, 145, 146, 475, 8, 145, 146, 32, 145, 146,
- 117, 483, 9, 120, 145, 146, 123, 124, 20, 146,
- 62, 145, 71, 48, 49, 145, 133, 146, 73, 99,
- 145, 56, 139, 467, 144, 60, 508, 144, 145, 85,
- 474, 85, 131, 144, 4, 5, 6, 7, 144, 144,
- 10, 132, 62, 7, 77, 80, 97, 97, 97, 493,
- 84, 21, 22, 7, 7, 42, 75, 42, 145, 96,
- 504, 144, 144, 137, 27, 35, 36, 146, 144, 92,
- 105, 144, 516, 43, 44, 85, 92, 42, 144, 114,
- 101, 51, 52, 101, 54, 96, 144, 38, 7, 59,
- 534, 99, 95, 63, 64, 130, 144, 67, 542, 146,
- 42, 19, 137, 144, 88, 140, 42, 7, 136, 145,
- 108, 81, 82, 93, 146, 145, 102, 110, 9, 89,
- 102, 33, 92, 68, 68, 4, 5, 6, 7, 144,
- 7, 10, 110, 100, 198, 144, 251, 107, 144, 343,
- 145, 55, 21, 22, 114, 118, 370, 117, 124, 56,
- 120, 399, 483, 123, 124, 506, 35, 36, 162, 544,
- 508, 283, 153, 133, 43, 44, 284, 166, 199, 139,
- 171, 213, 51, 52, 144, 54, 115, 148, -1, -1,
- 59, -1, -1, -1, 63, 64, 213, -1, 67, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 81, 82, -1, -1, -1, -1, -1, -1,
- 89, -1, -1, 92, -1, -1, 4, 5, 6, 7,
- -1, -1, -1, -1, -1, -1, -1, -1, 107, -1,
- -1, -1, -1, 21, 22, 23, -1, -1, 117, -1,
- -1, 120, -1, -1, 123, 124, -1, 35, 36, -1,
- -1, -1, -1, -1, 133, 43, 44, -1, -1, -1,
- 139, -1, -1, 51, 52, 144, 54, -1, -1, -1,
- -1, 59, -1, -1, -1, -1, 64, -1, -1, 67,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 81, 82, -1, -1, -1, -1, -1,
- -1, 89, -1, -1, 92, -1, -1, 4, 5, 6,
- 7, -1, -1, -1, -1, -1, -1, -1, -1, 107,
- -1, -1, -1, -1, 21, 22, -1, -1, -1, 117,
- -1, -1, 120, -1, -1, 123, 124, -1, 35, 36,
- -1, -1, -1, -1, -1, 133, 43, 44, -1, -1,
- -1, 139, -1, -1, 51, 52, 144, 54, -1, -1,
- -1, -1, 59, -1, -1, -1, -1, 64, -1, -1,
- 67, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 81, 82, -1, -1, -1, -1,
- -1, -1, 89, -1, -1, 92, -1, -1, -1, -1,
- -1, 4, 5, 6, 7, -1, -1, -1, -1, -1,
- 107, -1, -1, -1, -1, -1, -1, -1, 21, 22,
- 117, -1, -1, 120, -1, -1, 123, 124, -1, -1,
- -1, -1, 35, 36, -1, -1, 133, 134, -1, -1,
- 43, 44, 139, -1, -1, -1, -1, 144, 51, 52,
+ 4, 142, 44, 13, 146, 119, 160, 8, 12, 13,
+ 27, 275, 138, 208, 4, 247, 6, 67, 59, 39,
+ 146, 5, 236, 4, 4, 6, 6, 29, 32, 8,
+ 8, 72, 29, 37, 38, 39, 40, 41, 80, 8,
+ 231, 23, 24, 4, 189, 6, 160, 21, 22, 63,
+ 21, 22, 79, 21, 22, 7, 7, 99, 28, 201,
+ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
+ 63, 21, 22, 199, 31, 201, 10, 231, 21, 22,
+ 467, 4, 29, 6, 134, 72, 200, 123, 58, 21,
+ 22, 4, 5, 6, 7, 387, 123, 36, 50, 50,
+ 72, 105, 34, 60, 123, 161, 493, 84, 118, 129,
+ 33, 325, 154, 117, 118, 28, 120, 231, 122, 75,
+ 162, 177, 0, 61, 144, 57, 116, 144, 78, 143,
+ 321, 276, 136, 137, 176, 185, 120, 121, 142, 61,
+ 127, 70, 139, 145, 145, 186, 124, 273, 380, 142,
+ 124, 443, 108, 66, 144, 116, 160, 283, 284, 201,
+ 94, 165, 426, 144, 144, 147, 145, 321, 172, 364,
+ 212, 175, 404, 215, 145, 407, 145, 145, 130, 130,
+ 127, 295, 121, 96, 97, 189, 30, 191, 192, 193,
+ 3, 386, 387, 136, 53, 145, 338, 44, 136, 67,
+ 341, 47, 21, 22, 436, 247, 73, 321, 45, 46,
+ 351, 253, 338, 80, 136, 128, 145, 37, 77, 87,
+ 40, 88, 45, 46, 71, 145, 146, 231, 232, 49,
+ 137, 144, 236, 92, 93, 81, 17, 18, 19, 146,
+ 1, 4, 3, 6, 111, 399, 117, 251, 443, 146,
+ 108, 255, 294, 72, 296, 113, 115, 0, 105, 33,
+ 302, 4, 116, 405, 378, 144, 10, 309, 272, 273,
+ 116, 32, 276, 414, 415, 145, 146, 116, 145, 405,
+ 134, 140, 84, 26, 131, 399, 47, 48, 430, 4,
+ 144, 6, 334, 5, 420, 56, 106, 78, 118, 60,
+ 44, 9, 63, 313, 430, 139, 21, 22, 97, 313,
+ 53, 55, 144, 21, 22, 145, 146, 321, 33, 137,
+ 81, 325, 10, 11, 12, 13, 14, 15, 16, 17,
+ 18, 19, 9, 21, 22, 377, 7, 341, 380, 343,
+ 482, 7, 73, 144, 21, 22, 107, 351, 390, 80,
+ 94, 21, 22, 83, 85, 116, 482, 88, 145, 146,
+ 144, 105, 404, 367, 5, 407, 110, 145, 146, 145,
+ 146, 132, 145, 146, 145, 146, 145, 146, 139, 144,
+ 111, 145, 146, 145, 146, 145, 146, 131, 145, 146,
+ 78, 145, 146, 534, 436, 399, 438, 145, 146, 145,
+ 146, 542, 144, 83, 4, 5, 6, 7, 145, 146,
+ 414, 415, 145, 146, 456, 5, 420, 145, 146, 145,
+ 146, 21, 22, 23, 72, 146, 100, 144, 7, 7,
+ 144, 144, 7, 475, 11, 35, 36, 144, 8, 20,
+ 9, 483, 42, 43, 146, 62, 145, 72, 145, 101,
+ 146, 51, 52, 74, 54, 145, 86, 144, 58, 59,
+ 86, 144, 144, 467, 133, 65, 508, 134, 68, 144,
+ 474, 62, 7, 85, 7, 99, 99, 99, 7, 41,
+ 76, 41, 82, 83, 145, 98, 144, 144, 27, 493,
+ 146, 91, 139, 94, 94, 144, 94, 86, 144, 144,
+ 504, 103, 144, 98, 103, 41, 38, 101, 144, 109,
+ 7, 97, 516, 146, 41, 4, 5, 6, 7, 119,
+ 19, 10, 122, 90, 144, 125, 126, 41, 7, 145,
+ 534, 138, 21, 22, 110, 135, 146, 145, 542, 95,
+ 104, 141, 9, 104, 144, 145, 35, 36, 33, 112,
+ 69, 144, 144, 42, 43, 112, 144, 69, 102, 7,
+ 145, 198, 51, 52, 370, 54, 343, 251, 55, 118,
+ 59, 124, 56, 399, 483, 64, 65, 544, 162, 68,
+ 506, 508, 283, 166, 284, 199, 213, 115, 153, 171,
+ 148, -1, -1, 82, 83, 213, -1, -1, -1, -1,
+ -1, -1, 91, -1, -1, 94, -1, -1, -1, -1,
+ -1, 4, 5, 6, 7, -1, -1, 10, -1, -1,
+ 109, -1, -1, -1, -1, -1, -1, 116, 21, 22,
+ 119, -1, -1, 122, -1, -1, 125, 126, -1, -1,
+ -1, -1, 35, 36, -1, -1, 135, -1, -1, 42,
+ 43, -1, 141, -1, -1, 144, -1, -1, 51, 52,
-1, 54, -1, -1, -1, -1, 59, -1, -1, -1,
- -1, 64, -1, -1, 67, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 81, 82,
- -1, -1, -1, -1, -1, -1, 89, -1, -1, 92,
- -1, -1, 4, 5, 6, 7, -1, -1, -1, -1,
- -1, -1, -1, -1, 107, -1, -1, -1, -1, 21,
- 22, 114, -1, -1, 117, -1, -1, 120, -1, -1,
- 123, 124, -1, 35, 36, -1, -1, -1, -1, -1,
- 133, 43, 44, -1, -1, -1, 139, -1, -1, 51,
- 52, 144, 54, -1, -1, -1, -1, 59, -1, -1,
- -1, 63, 64, -1, -1, 67, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
- 82, -1, -1, -1, -1, -1, -1, 89, -1, -1,
- 92, -1, -1, 4, 5, 6, 7, -1, -1, -1,
- -1, -1, -1, -1, -1, 107, -1, -1, -1, -1,
- 21, 22, -1, -1, -1, 117, -1, -1, 120, -1,
- -1, 123, 124, -1, 35, 36, -1, -1, -1, -1,
- -1, 133, 43, 44, -1, -1, -1, 139, -1, -1,
- 51, 52, 144, 54, -1, -1, -1, -1, 59, -1,
- -1, -1, -1, 64, -1, -1, 67, -1, -1, -1,
+ -1, 64, 65, -1, -1, 68, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 82,
+ 83, -1, -1, -1, -1, -1, -1, -1, 91, -1,
+ -1, 94, -1, -1, -1, 4, 5, 6, 7, -1,
+ -1, -1, -1, -1, -1, -1, 109, -1, -1, -1,
+ -1, -1, 21, 22, 23, -1, 119, -1, -1, 122,
+ -1, -1, 125, 126, -1, -1, 35, 36, -1, -1,
+ -1, -1, 135, 42, 43, -1, -1, -1, 141, -1,
+ -1, 144, 51, 52, -1, 54, -1, -1, -1, -1,
+ 59, -1, -1, -1, -1, -1, 65, -1, -1, 68,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 81, 82, -1, -1, -1, -1, -1, -1, 89, -1,
- -1, 92, -1, -1, 4, 5, 6, 7, -1, -1,
- -1, -1, -1, -1, -1, -1, 107, -1, -1, -1,
- -1, 21, 22, -1, -1, -1, 117, -1, -1, 120,
- -1, -1, 123, 124, -1, 35, 36, -1, -1, -1,
- -1, -1, 133, 43, 44, -1, -1, -1, 139, -1,
- -1, 51, 52, 144, 54, -1, -1, -1, -1, 59,
- -1, -1, -1, -1, 64, -1, -1, 67, -1, -1,
+ -1, -1, -1, 82, 83, -1, -1, -1, -1, -1,
+ -1, -1, 91, -1, -1, 94, -1, -1, -1, 4,
+ 5, 6, 7, -1, -1, -1, -1, -1, -1, -1,
+ 109, -1, -1, -1, -1, -1, 21, 22, -1, -1,
+ 119, -1, -1, 122, -1, -1, 125, 126, -1, -1,
+ 35, 36, -1, -1, -1, -1, 135, 42, 43, -1,
+ -1, -1, 141, -1, -1, 144, 51, 52, -1, 54,
+ -1, -1, -1, -1, 59, -1, -1, -1, -1, -1,
+ 65, -1, -1, 68, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 82, 83, -1,
+ -1, -1, -1, -1, -1, -1, 91, -1, -1, 94,
+ -1, -1, -1, -1, 4, 5, 6, 7, -1, -1,
+ -1, -1, -1, -1, 109, -1, -1, -1, -1, -1,
+ -1, 21, 22, -1, 119, -1, -1, 122, -1, -1,
+ 125, 126, -1, -1, -1, 35, 36, -1, -1, -1,
+ 135, 136, 42, 43, -1, -1, 141, -1, -1, 144,
+ -1, 51, 52, -1, 54, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, 65, -1, -1, 68, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 81, 82, 5, -1, 7, -1, -1, -1, 89,
- -1, -1, 92, -1, -1, -1, -1, -1, -1, 21,
- 22, -1, 35, 36, -1, -1, -1, 107, -1, -1,
- -1, 44, -1, 35, 36, -1, -1, 117, 51, 52,
- 120, 54, 44, 123, 124, -1, 59, -1, -1, 51,
- 52, -1, 54, 133, 67, -1, -1, 59, -1, 139,
- -1, -1, -1, -1, 144, 67, -1, -1, 81, 82,
- -1, -1, -1, -1, -1, -1, 89, -1, -1, 81,
- 82, -1, -1, -1, -1, -1, -1, 89, -1, -1,
- 92, -1, -1, -1, 107, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 117, 107, -1, -1, -1, -1,
- 123, 124, -1, -1, -1, 117, -1, -1, -1, -1,
- 133, 123, 124, -1, -1, -1, 139, -1, -1, -1,
- -1, 133, -1, -1, -1, -1, -1, 139
+ -1, -1, 82, 83, -1, -1, -1, -1, -1, -1,
+ -1, 91, -1, -1, 94, -1, -1, -1, -1, -1,
+ 4, 5, 6, 7, -1, -1, -1, -1, -1, 109,
+ -1, -1, -1, -1, -1, -1, 116, 21, 22, 119,
+ -1, -1, 122, -1, -1, 125, 126, -1, -1, -1,
+ -1, 35, 36, -1, -1, 135, -1, -1, 42, 43,
+ -1, 141, -1, -1, 144, -1, -1, 51, 52, -1,
+ 54, -1, -1, -1, -1, 59, -1, -1, -1, -1,
+ 64, 65, -1, -1, 68, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 82, 83,
+ -1, -1, -1, -1, -1, -1, -1, 91, -1, -1,
+ 94, -1, -1, -1, 4, 5, 6, 7, -1, -1,
+ -1, -1, -1, -1, -1, 109, -1, -1, -1, -1,
+ -1, 21, 22, -1, -1, 119, -1, -1, 122, -1,
+ -1, 125, 126, -1, -1, 35, 36, -1, -1, -1,
+ -1, 135, 42, 43, -1, -1, -1, 141, -1, -1,
+ 144, 51, 52, -1, 54, -1, -1, -1, -1, 59,
+ -1, -1, -1, -1, -1, 65, -1, -1, 68, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 82, 83, -1, -1, -1, -1, -1, -1,
+ -1, 91, -1, -1, 94, -1, -1, -1, 4, 5,
+ 6, 7, -1, -1, -1, -1, -1, -1, -1, 109,
+ -1, -1, -1, -1, -1, 21, 22, -1, -1, 119,
+ -1, -1, 122, -1, -1, 125, 126, -1, -1, 35,
+ 36, -1, -1, -1, -1, 135, 42, 43, -1, -1,
+ -1, 141, -1, -1, 144, 51, 52, -1, 54, -1,
+ -1, -1, -1, 59, -1, -1, -1, -1, -1, 65,
+ -1, -1, 68, 5, -1, 7, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 82, 83, -1, 21,
+ 22, -1, -1, -1, -1, 91, -1, -1, 94, -1,
+ -1, -1, -1, 35, 36, -1, -1, -1, -1, -1,
+ -1, 43, -1, 109, -1, -1, 35, 36, -1, 51,
+ 52, -1, 54, 119, 43, -1, 122, 59, -1, 125,
+ 126, -1, 51, 52, -1, 54, 68, -1, -1, 135,
+ 59, -1, -1, -1, -1, 141, -1, -1, 144, 68,
+ 82, 83, -1, -1, -1, -1, -1, -1, -1, 91,
+ -1, -1, 94, 82, 83, -1, -1, -1, -1, -1,
+ -1, -1, 91, -1, -1, -1, -1, 109, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 119, -1, -1,
+ 109, -1, -1, 125, 126, -1, -1, -1, -1, -1,
+ 119, -1, -1, 135, -1, -1, 125, 126, -1, 141,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, 141
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint16 yystos[] =
{
- 0, 1, 3, 32, 48, 49, 56, 60, 80, 105,
- 114, 130, 137, 140, 149, 150, 151, 152, 153, 154,
+ 0, 1, 3, 32, 47, 48, 56, 60, 63, 81,
+ 107, 116, 132, 139, 149, 150, 151, 152, 153, 154,
155, 177, 178, 181, 182, 185, 187, 190, 191, 192,
- 257, 258, 121, 4, 6, 190, 255, 78, 121, 71,
- 121, 83, 28, 58, 193, 255, 188, 189, 204, 255,
- 0, 140, 142, 48, 80, 190, 29, 137, 186, 30,
- 140, 143, 3, 255, 125, 179, 71, 179, 255, 255,
+ 257, 258, 123, 4, 6, 190, 255, 79, 123, 72,
+ 123, 84, 28, 58, 193, 255, 188, 189, 204, 255,
+ 0, 63, 142, 47, 81, 190, 29, 139, 186, 30,
+ 63, 143, 3, 255, 127, 179, 72, 179, 255, 255,
255, 255, 255, 5, 7, 21, 22, 23, 35, 36,
- 43, 44, 51, 52, 54, 59, 64, 67, 81, 82,
- 89, 92, 107, 117, 120, 123, 124, 133, 139, 144,
+ 42, 43, 51, 52, 54, 59, 65, 68, 82, 83,
+ 91, 94, 109, 119, 122, 125, 126, 135, 141, 144,
158, 194, 195, 196, 198, 230, 231, 232, 233, 234,
- 235, 236, 237, 244, 248, 251, 255, 115, 146, 33,
- 144, 190, 83, 186, 193, 104, 192, 31, 60, 5,
- 118, 119, 137, 180, 5, 180, 95, 144, 135, 224,
- 225, 132, 144, 192, 7, 7, 134, 230, 240, 241,
- 144, 82, 144, 5, 144, 144, 82, 190, 230, 5,
- 71, 197, 146, 21, 22, 33, 252, 255, 23, 24,
- 147, 253, 98, 22, 233, 27, 144, 183, 184, 255,
- 189, 144, 198, 254, 255, 179, 255, 191, 7, 46,
- 47, 46, 47, 144, 180, 255, 156, 157, 255, 10,
- 63, 144, 226, 227, 228, 229, 230, 248, 144, 247,
- 254, 226, 134, 238, 239, 61, 241, 242, 7, 53,
- 76, 90, 91, 113, 138, 245, 245, 230, 7, 145,
+ 235, 236, 237, 244, 248, 251, 255, 117, 146, 33,
+ 144, 190, 84, 186, 193, 106, 192, 31, 60, 5,
+ 120, 121, 139, 180, 5, 180, 97, 144, 137, 224,
+ 225, 134, 144, 192, 7, 7, 136, 230, 240, 241,
+ 144, 83, 144, 5, 144, 144, 83, 190, 230, 5,
+ 72, 197, 146, 21, 22, 33, 252, 255, 23, 24,
+ 147, 253, 100, 22, 233, 27, 144, 183, 184, 255,
+ 189, 144, 198, 254, 255, 179, 255, 191, 7, 45,
+ 46, 45, 46, 144, 180, 255, 156, 157, 255, 10,
+ 64, 144, 226, 227, 228, 229, 230, 248, 144, 247,
+ 254, 226, 136, 238, 239, 61, 241, 242, 7, 53,
+ 77, 92, 93, 115, 140, 245, 245, 230, 7, 145,
145, 144, 198, 201, 202, 205, 234, 255, 224, 196,
255, 231, 232, 144, 255, 255, 23, 58, 145, 230,
- 243, 146, 224, 11, 145, 146, 180, 192, 156, 45,
- 70, 103, 129, 162, 255, 255, 169, 170, 171, 172,
- 173, 174, 255, 144, 165, 145, 146, 82, 158, 229,
+ 243, 146, 224, 11, 145, 146, 180, 192, 156, 44,
+ 71, 105, 131, 162, 255, 255, 169, 170, 171, 172,
+ 173, 174, 255, 144, 165, 145, 146, 83, 158, 229,
198, 226, 230, 8, 9, 10, 11, 12, 13, 14,
- 15, 16, 17, 18, 19, 77, 250, 20, 244, 246,
- 146, 145, 122, 230, 239, 242, 230, 62, 145, 71,
- 71, 145, 201, 33, 203, 204, 72, 79, 87, 109,
- 200, 146, 203, 39, 127, 199, 73, 206, 99, 213,
- 214, 145, 243, 145, 146, 184, 230, 255, 144, 85,
- 85, 144, 145, 146, 5, 7, 28, 65, 94, 95,
- 126, 144, 255, 256, 248, 249, 255, 131, 162, 163,
- 164, 156, 10, 45, 55, 92, 103, 108, 129, 159,
- 160, 161, 145, 227, 228, 17, 18, 19, 77, 230,
- 144, 198, 230, 10, 92, 145, 146, 144, 132, 230,
- 122, 62, 230, 7, 145, 204, 97, 97, 97, 84,
- 201, 7, 7, 203, 42, 75, 207, 42, 145, 96,
+ 15, 16, 17, 18, 19, 78, 250, 20, 244, 246,
+ 146, 145, 124, 230, 239, 242, 230, 62, 145, 72,
+ 72, 145, 201, 33, 203, 204, 73, 80, 88, 111,
+ 200, 146, 203, 39, 129, 199, 74, 206, 101, 213,
+ 214, 145, 243, 145, 146, 184, 230, 255, 144, 86,
+ 86, 144, 145, 146, 5, 7, 28, 66, 96, 97,
+ 128, 144, 255, 256, 248, 249, 255, 133, 162, 163,
+ 164, 156, 10, 44, 55, 94, 105, 110, 131, 159,
+ 160, 161, 145, 227, 228, 17, 18, 19, 78, 230,
+ 144, 198, 230, 10, 94, 145, 146, 144, 134, 230,
+ 124, 62, 230, 7, 145, 204, 99, 99, 99, 85,
+ 201, 7, 7, 203, 41, 76, 207, 41, 145, 98,
215, 145, 230, 226, 144, 144, 254, 170, 254, 145,
- 146, 37, 40, 41, 116, 175, 146, 137, 166, 92,
- 144, 244, 85, 255, 159, 230, 144, 198, 9, 243,
- 92, 244, 246, 144, 230, 145, 69, 145, 202, 101,
- 101, 243, 226, 96, 208, 243, 42, 106, 112, 216,
+ 146, 37, 40, 49, 118, 175, 146, 139, 166, 94,
+ 144, 244, 86, 255, 159, 230, 144, 198, 9, 243,
+ 94, 244, 246, 144, 230, 145, 70, 145, 202, 103,
+ 103, 243, 226, 98, 208, 243, 41, 108, 113, 216,
217, 145, 254, 254, 145, 145, 248, 144, 176, 162,
- 38, 99, 167, 226, 144, 9, 243, 230, 145, 145,
- 246, 7, 95, 42, 88, 209, 220, 221, 230, 19,
- 145, 145, 169, 144, 42, 145, 255, 230, 145, 145,
- 145, 226, 220, 7, 136, 210, 211, 212, 146, 34,
- 57, 222, 7, 50, 128, 218, 108, 145, 169, 74,
- 106, 168, 145, 255, 212, 221, 93, 223, 102, 110,
- 102, 9, 255, 145, 144, 33, 66, 86, 7, 50,
- 128, 219, 144, 254, 144, 68, 110, 68, 254, 145,
- 213, 145, 100, 145, 7
+ 38, 101, 167, 226, 144, 9, 243, 230, 145, 145,
+ 246, 7, 97, 41, 90, 209, 220, 221, 230, 19,
+ 145, 145, 169, 144, 41, 145, 255, 230, 145, 145,
+ 145, 226, 220, 7, 138, 210, 211, 212, 146, 34,
+ 57, 222, 7, 50, 130, 218, 110, 145, 169, 75,
+ 108, 168, 145, 255, 212, 221, 95, 223, 104, 112,
+ 104, 9, 255, 145, 144, 33, 67, 87, 7, 50,
+ 130, 219, 144, 254, 144, 69, 112, 69, 254, 145,
+ 213, 145, 102, 145, 7
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
@@ -1996,7 +2010,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2000 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2014 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 4: /* TOKEN_NAME */
@@ -2006,7 +2020,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2010 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2024 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 5: /* TOKEN_STRING_SINGLE_QUOTED */
@@ -2016,7 +2030,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2020 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2034 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 6: /* TOKEN_STRING_DOUBLE_QUOTED */
@@ -2026,7 +2040,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2030 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2044 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 7: /* TOKEN_UNSIGNED_NUMVAL */
@@ -2036,7 +2050,7 @@
delete ((*yyvaluep).numeric_literal_value_);
}
}
-#line 2040 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2054 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 150: /* sql_statement */
@@ -2046,7 +2060,7 @@
delete ((*yyvaluep).statement_);
}
}
-#line 2050 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2064 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 151: /* quit_statement */
@@ -2056,7 +2070,7 @@
delete ((*yyvaluep).quit_statement_);
}
}
-#line 2060 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2074 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 152: /* alter_table_statement */
@@ -2066,7 +2080,7 @@
delete ((*yyvaluep).statement_);
}
}
-#line 2070 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2084 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 153: /* create_table_statement */
@@ -2076,7 +2090,7 @@
delete ((*yyvaluep).create_table_statement_);
}
}
-#line 2080 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2094 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 154: /* create_index_statement */
@@ -2086,7 +2100,7 @@
delete ((*yyvaluep).statement_);
}
}
-#line 2090 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2104 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 155: /* drop_table_statement */
@@ -2096,7 +2110,7 @@
delete ((*yyvaluep).drop_table_statement_);
}
}
-#line 2100 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2114 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 156: /* column_def */
@@ -2106,7 +2120,7 @@
delete ((*yyvaluep).attribute_definition_);
}
}
-#line 2110 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2124 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 157: /* column_def_commalist */
@@ -2116,7 +2130,7 @@
delete ((*yyvaluep).attribute_definition_list_);
}
}
-#line 2120 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2134 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 158: /* data_type */
@@ -2126,7 +2140,7 @@
delete ((*yyvaluep).data_type_);
}
}
-#line 2130 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2144 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 159: /* column_constraint_def */
@@ -2136,7 +2150,7 @@
delete ((*yyvaluep).column_constraint_);
}
}
-#line 2140 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2154 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 160: /* column_constraint_def_list */
@@ -2146,7 +2160,7 @@
delete ((*yyvaluep).column_constraint_list_);
}
}
-#line 2150 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2164 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 161: /* opt_column_constraint_def_list */
@@ -2156,7 +2170,7 @@
delete ((*yyvaluep).column_constraint_list_);
}
}
-#line 2160 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2174 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 165: /* opt_column_list */
@@ -2166,7 +2180,7 @@
delete ((*yyvaluep).attribute_list_);
}
}
-#line 2170 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2184 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 166: /* opt_block_properties */
@@ -2176,7 +2190,7 @@
delete ((*yyvaluep).block_properties_);
}
}
-#line 2180 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2194 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 167: /* opt_partition_clause */
@@ -2186,7 +2200,7 @@
delete ((*yyvaluep).partition_clause_);
}
}
-#line 2190 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2204 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 168: /* partition_type */
@@ -2196,7 +2210,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2200 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2214 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 169: /* key_value_list */
@@ -2206,7 +2220,7 @@
delete ((*yyvaluep).key_value_list_);
}
}
-#line 2210 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2224 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 170: /* key_value */
@@ -2216,7 +2230,7 @@
delete ((*yyvaluep).key_value_);
}
}
-#line 2220 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2234 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 171: /* key_string_value */
@@ -2226,7 +2240,7 @@
delete ((*yyvaluep).key_string_value_);
}
}
-#line 2230 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2244 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 172: /* key_string_list */
@@ -2236,7 +2250,7 @@
delete ((*yyvaluep).key_string_list_);
}
}
-#line 2240 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2254 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 173: /* key_integer_value */
@@ -2246,7 +2260,7 @@
delete ((*yyvaluep).key_integer_value_);
}
}
-#line 2250 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2264 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 174: /* key_bool_value */
@@ -2256,7 +2270,7 @@
delete ((*yyvaluep).key_bool_value_);
}
}
-#line 2260 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2274 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 175: /* index_type */
@@ -2266,7 +2280,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2270 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2284 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 176: /* opt_index_properties */
@@ -2276,7 +2290,7 @@
delete ((*yyvaluep).key_value_list_);
}
}
-#line 2280 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2294 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 177: /* insert_statement */
@@ -2286,7 +2300,7 @@
delete ((*yyvaluep).insert_statement_);
}
}
-#line 2290 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2304 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 178: /* copy_statement */
@@ -2296,7 +2310,7 @@
delete ((*yyvaluep).copy_statement_);
}
}
-#line 2300 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2314 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 179: /* copy_to_target */
@@ -2306,7 +2320,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2310 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2324 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 180: /* opt_copy_params */
@@ -2316,7 +2330,7 @@
delete ((*yyvaluep).key_value_list_);
}
}
-#line 2320 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2334 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 181: /* update_statement */
@@ -2326,7 +2340,7 @@
delete ((*yyvaluep).update_statement_);
}
}
-#line 2330 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2344 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 182: /* delete_statement */
@@ -2336,7 +2350,7 @@
delete ((*yyvaluep).delete_statement_);
}
}
-#line 2340 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2354 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 183: /* assignment_list */
@@ -2346,7 +2360,7 @@
delete ((*yyvaluep).assignment_list_);
}
}
-#line 2350 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2364 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 184: /* assignment_item */
@@ -2356,7 +2370,7 @@
delete ((*yyvaluep).assignment_);
}
}
-#line 2360 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2374 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 185: /* set_operation_statement */
@@ -2366,7 +2380,7 @@
delete ((*yyvaluep).set_operation_statement_);
}
}
-#line 2370 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2384 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 186: /* opt_priority_clause */
@@ -2376,7 +2390,7 @@
delete ((*yyvaluep).opt_priority_clause_);
}
}
-#line 2380 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2394 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 187: /* with_clause */
@@ -2386,7 +2400,7 @@
delete ((*yyvaluep).with_list_);
}
}
-#line 2390 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2404 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 188: /* with_list */
@@ -2396,7 +2410,7 @@
delete ((*yyvaluep).with_list_);
}
}
-#line 2400 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2414 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 189: /* with_list_element */
@@ -2406,7 +2420,7 @@
delete ((*yyvaluep).with_list_element_);
}
}
-#line 2410 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2424 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 190: /* set_operation_union */
@@ -2416,7 +2430,7 @@
delete ((*yyvaluep).set_operation_);
}
}
-#line 2420 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2434 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 191: /* set_operation_intersect */
@@ -2426,7 +2440,7 @@
delete ((*yyvaluep).set_operation_);
}
}
-#line 2430 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2444 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 192: /* select_query */
@@ -2436,13 +2450,13 @@
delete ((*yyvaluep).select_query_);
}
}
-#line 2440 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2454 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 193: /* opt_all_distinct */
#line 629 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 2446 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2460 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 194: /* selection */
@@ -2452,7 +2466,7 @@
delete ((*yyvaluep).selection_);
}
}
-#line 2456 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2470 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 195: /* selection_item_commalist */
@@ -2462,7 +2476,7 @@
delete ((*yyvaluep).selection_list_);
}
}
-#line 2466 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2480 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 196: /* selection_item */
@@ -2472,7 +2486,7 @@
delete ((*yyvaluep).selection_item_);
}
}
-#line 2476 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2490 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 197: /* from_clause */
@@ -2482,7 +2496,7 @@
delete ((*yyvaluep).table_reference_list_);
}
}
-#line 2486 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2500 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 198: /* subquery_expression */
@@ -2492,7 +2506,7 @@
delete ((*yyvaluep).subquery_expression_);
}
}
-#line 2496 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2510 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 199: /* opt_sample_clause */
@@ -2502,13 +2516,13 @@
delete ((*yyvaluep).opt_sample_clause_);
}
}
-#line 2506 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2520 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 200: /* join_type */
#line 633 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 2512 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2526 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 201: /* joined_table_reference */
@@ -2518,7 +2532,7 @@
delete ((*yyvaluep).table_reference_);
}
}
-#line 2522 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2536 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 202: /* table_reference */
@@ -2528,7 +2542,7 @@
delete ((*yyvaluep).table_reference_);
}
}
-#line 2532 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2546 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 203: /* table_reference_signature */
@@ -2538,7 +2552,7 @@
delete ((*yyvaluep).table_reference_signature_);
}
}
-#line 2542 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2556 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 204: /* table_reference_signature_primary */
@@ -2548,7 +2562,7 @@
delete ((*yyvaluep).table_reference_signature_);
}
}
-#line 2552 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2566 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 205: /* joined_table_reference_commalist */
@@ -2558,7 +2572,7 @@
delete ((*yyvaluep).table_reference_list_);
}
}
-#line 2562 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2576 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 206: /* opt_group_by_clause */
@@ -2568,7 +2582,7 @@
delete ((*yyvaluep).opt_group_by_clause_);
}
}
-#line 2572 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2586 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 207: /* opt_having_clause */
@@ -2578,7 +2592,7 @@
delete ((*yyvaluep).opt_having_clause_);
}
}
-#line 2582 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2596 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 208: /* opt_order_by_clause */
@@ -2588,7 +2602,7 @@
delete ((*yyvaluep).opt_order_by_clause_);
}
}
-#line 2592 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2606 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 209: /* opt_limit_clause */
@@ -2598,7 +2612,7 @@
delete ((*yyvaluep).opt_limit_clause_);
}
}
-#line 2602 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2616 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 210: /* opt_window_clause */
@@ -2608,7 +2622,7 @@
delete ((*yyvaluep).opt_window_clause_);
}
}
-#line 2612 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2626 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 211: /* window_declaration_list */
@@ -2618,7 +2632,7 @@
delete ((*yyvaluep).opt_window_clause_);
}
}
-#line 2622 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2636 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 212: /* window_declaration */
@@ -2628,7 +2642,7 @@
delete ((*yyvaluep).window_definition_);
}
}
-#line 2632 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2646 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 213: /* window_definition */
@@ -2638,7 +2652,7 @@
delete ((*yyvaluep).window_definition_);
}
}
-#line 2642 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2656 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 214: /* opt_window_partition */
@@ -2648,7 +2662,7 @@
delete ((*yyvaluep).window_partition_by_list_);
}
}
-#line 2652 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2666 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 215: /* opt_window_order */
@@ -2658,7 +2672,7 @@
delete ((*yyvaluep).window_order_by_list_);
}
}
-#line 2662 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2676 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 216: /* opt_window_frame */
@@ -2668,13 +2682,13 @@
delete ((*yyvaluep).window_frame_info_);
}
}
-#line 2672 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2686 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 217: /* frame_mode */
#line 629 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 2678 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2692 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 218: /* frame_preceding */
@@ -2684,7 +2698,7 @@
delete ((*yyvaluep).numeric_literal_value_);
}
}
-#line 2688 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2702 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 219: /* frame_following */
@@ -2694,7 +2708,7 @@
delete ((*yyvaluep).numeric_literal_value_);
}
}
-#line 2698 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2712 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 220: /* order_commalist */
@@ -2704,7 +2718,7 @@
delete ((*yyvaluep).order_commalist_);
}
}
-#line 2708 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2722 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 221: /* order_item */
@@ -2714,7 +2728,7 @@
delete ((*yyvaluep).order_item_);
}
}
-#line 2718 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2732 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 222: /* opt_order_direction */
@@ -2724,7 +2738,7 @@
delete ((*yyvaluep).order_direction_);
}
}
-#line 2728 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2742 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 223: /* opt_nulls_first */
@@ -2734,7 +2748,7 @@
delete ((*yyvaluep).order_direction_);
}
}
-#line 2738 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2752 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 224: /* opt_where_clause */
@@ -2744,7 +2758,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2748 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2762 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 225: /* where_clause */
@@ -2754,7 +2768,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2758 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2772 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 226: /* or_expression */
@@ -2764,7 +2778,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2768 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2782 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 227: /* and_expression */
@@ -2774,7 +2788,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2778 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2792 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 228: /* not_expression */
@@ -2784,7 +2798,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2788 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2802 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 229: /* predicate_expression_base */
@@ -2794,7 +2808,7 @@
delete ((*yyvaluep).predicate_);
}
}
-#line 2798 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2812 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 230: /* add_expression */
@@ -2804,7 +2818,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2808 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2822 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 231: /* multiply_expression */
@@ -2814,7 +2828,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2818 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2832 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 232: /* unary_expression */
@@ -2824,7 +2838,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2828 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2842 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 233: /* expression_base */
@@ -2834,7 +2848,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2838 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2852 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 234: /* function_call */
@@ -2844,7 +2858,7 @@
delete ((*yyvaluep).function_call_);
}
}
-#line 2848 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2862 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 235: /* extract_function */
@@ -2854,7 +2868,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2858 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2872 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 236: /* substr_function */
@@ -2864,7 +2878,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2868 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2882 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 237: /* case_expression */
@@ -2874,7 +2888,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2878 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2892 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 238: /* simple_when_clause_list */
@@ -2884,7 +2898,7 @@
delete ((*yyvaluep).simple_when_clause_list_);
}
}
-#line 2888 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2902 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 239: /* simple_when_clause */
@@ -2894,7 +2908,7 @@
delete ((*yyvaluep).simple_when_clause_);
}
}
-#line 2898 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2912 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 240: /* searched_when_clause_list */
@@ -2904,7 +2918,7 @@
delete ((*yyvaluep).searched_when_clause_list_);
}
}
-#line 2908 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2922 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 241: /* searched_when_clause */
@@ -2914,7 +2928,7 @@
delete ((*yyvaluep).searched_when_clause_);
}
}
-#line 2918 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2932 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 242: /* opt_else_clause */
@@ -2924,7 +2938,7 @@
delete ((*yyvaluep).expression_);
}
}
-#line 2928 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2942 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 243: /* expression_list */
@@ -2934,7 +2948,7 @@
delete ((*yyvaluep).expression_list_);
}
}
-#line 2938 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2952 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 244: /* literal_value */
@@ -2944,7 +2958,7 @@
delete ((*yyvaluep).literal_value_);
}
}
-#line 2948 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2962 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 245: /* datetime_unit */
@@ -2954,7 +2968,7 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 2958 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2972 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 246: /* literal_value_commalist */
@@ -2964,7 +2978,7 @@
delete ((*yyvaluep).literal_value_list_);
}
}
-#line 2968 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2982 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 247: /* literal_value_commalist_multiple */
@@ -2974,7 +2988,7 @@
delete ((*yyvaluep).literal_value_list_multiple_);
}
}
-#line 2978 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 2992 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 248: /* attribute_ref */
@@ -2984,7 +2998,7 @@
delete ((*yyvaluep).attribute_);
}
}
-#line 2988 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3002 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 249: /* attribute_ref_list */
@@ -2994,31 +3008,31 @@
delete ((*yyvaluep).attribute_list_);
}
}
-#line 2998 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3012 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 250: /* comparison_operation */
#line 630 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 3004 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3018 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 251: /* unary_operation */
#line 631 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 3010 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3024 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 252: /* add_operation */
#line 632 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 3016 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3030 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 253: /* multiply_operation */
#line 632 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 3022 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3036 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 254: /* name_commalist */
@@ -3028,7 +3042,7 @@
delete ((*yyvaluep).string_list_);
}
}
-#line 3032 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3046 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 255: /* any_name */
@@ -3038,13 +3052,13 @@
delete ((*yyvaluep).string_value_);
}
}
-#line 3042 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3056 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 256: /* boolean_value */
#line 629 "../SqlParser.ypp" /* yacc.c:1257 */
{ }
-#line 3048 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3062 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 257: /* command */
@@ -3054,7 +3068,7 @@
delete ((*yyvaluep).command_);
}
}
-#line 3058 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3072 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
case 258: /* command_argument_list */
@@ -3064,7 +3078,7 @@
delete ((*yyvaluep).command_argument_list_);
}
}
-#line 3068 "SqlParser_gen.cpp" /* yacc.c:1257 */
+#line 3082 "SqlParser_gen.cpp" /* yacc.c:1257 */
break;
@@ -3361,7 +3375,7 @@
*parsedStatement = (yyvsp[-1].statement_);
YYACCEPT;
}
-#line 3365 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3379 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 3:
@@ -3370,7 +3384,7 @@
*parsedStatement = (yyvsp[-1].statement_);
YYACCEPT;
}
-#line 3374 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3388 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 4:
@@ -3379,7 +3393,7 @@
*parsedStatement = (yyvsp[-1].command_);
YYACCEPT;
}
-#line 3383 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3397 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 5:
@@ -3388,7 +3402,7 @@
*parsedStatement = (yyvsp[-1].command_);
YYACCEPT;
}
-#line 3392 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3406 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 6:
@@ -3396,7 +3410,7 @@
{
YYABORT;
}
-#line 3400 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3414 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 7:
@@ -3405,7 +3419,7 @@
// Regular yyparse() return codes are non-negative, so use a negative one here.
return -1;
}
-#line 3409 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3423 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 8:
@@ -3413,7 +3427,7 @@
{
(yyval.statement_) = (yyvsp[0].statement_);
}
-#line 3417 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3431 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 9:
@@ -3421,7 +3435,7 @@
{
(yyval.statement_) = (yyvsp[0].copy_statement_);
}
-#line 3425 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3439 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 10:
@@ -3429,7 +3443,7 @@
{
(yyval.statement_) = (yyvsp[0].create_table_statement_);
}
-#line 3433 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3447 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 11:
@@ -3437,7 +3451,7 @@
{
(yyval.statement_) = (yyvsp[0].statement_);
}
-#line 3441 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3455 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 12:
@@ -3445,7 +3459,7 @@
{
(yyval.statement_) = (yyvsp[0].delete_statement_);
}
-#line 3449 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3463 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 13:
@@ -3453,7 +3467,7 @@
{
(yyval.statement_) = (yyvsp[0].drop_table_statement_);
}
-#line 3457 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3471 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 14:
@@ -3461,7 +3475,7 @@
{
(yyval.statement_) = (yyvsp[0].insert_statement_);
}
-#line 3465 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3479 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 15:
@@ -3469,7 +3483,7 @@
{
(yyval.statement_) = (yyvsp[0].quit_statement_);
}
-#line 3473 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3487 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 16:
@@ -3477,7 +3491,7 @@
{
(yyval.statement_) = (yyvsp[0].set_operation_statement_);
}
-#line 3481 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3495 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 17:
@@ -3485,7 +3499,7 @@
{
(yyval.statement_) = (yyvsp[0].update_statement_);
}
-#line 3489 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3503 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 18:
@@ -3493,7 +3507,7 @@
{
(yyval.quit_statement_) = new quickstep::ParseStatementQuit((yylsp[0]).first_line, (yylsp[0]).first_column);
}
-#line 3497 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3511 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 19:
@@ -3505,7 +3519,7 @@
NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
YYERROR;
}
-#line 3509 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3523 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 20:
@@ -3516,7 +3530,7 @@
NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
YYERROR;
}
-#line 3520 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3534 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 21:
@@ -3528,7 +3542,7 @@
NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
YYERROR;
}
-#line 3532 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3546 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 22:
@@ -3540,7 +3554,7 @@
NotSupported(&(yylsp[-5]), yyscanner, "ALTER statements");
YYERROR;
}
-#line 3544 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3558 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 23:
@@ -3548,7 +3562,7 @@
{
(yyval.create_table_statement_) = new quickstep::ParseStatementCreateTable((yylsp[-8]).first_line, (yylsp[-8]).first_column, (yyvsp[-6].string_value_), (yyvsp[-4].attribute_definition_list_), (yyvsp[-1].block_properties_), (yyvsp[0].partition_clause_));
}
-#line 3552 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3566 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 24:
@@ -3560,7 +3574,7 @@
(yyval.statement_) = new quickstep::ParseStatementCreateIndex((yylsp[-8]).first_line, (yylsp[-8]).first_column, (yyvsp[-6].string_value_), (yyvsp[-4].string_value_), (yyvsp[-3].attribute_list_), (yyvsp[-1].string_value_));
}
}
-#line 3564 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3578 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 25:
@@ -3568,7 +3582,7 @@
{
(yyval.drop_table_statement_) = new quickstep::ParseStatementDropTable((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].string_value_));
}
-#line 3572 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3586 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 26:
@@ -3576,7 +3590,7 @@
{
(yyval.attribute_definition_) = new quickstep::ParseAttributeDefinition((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[-1].data_type_), (yyvsp[0].column_constraint_list_));
}
-#line 3580 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3594 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 27:
@@ -3585,7 +3599,7 @@
(yyval.attribute_definition_list_) = new quickstep::PtrList<quickstep::ParseAttributeDefinition>();
(yyval.attribute_definition_list_)->push_back((yyvsp[0].attribute_definition_));
}
-#line 3589 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3603 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 28:
@@ -3594,7 +3608,7 @@
(yyval.attribute_definition_list_) = (yyvsp[-2].attribute_definition_list_);
(yyval.attribute_definition_list_)->push_back((yyvsp[0].attribute_definition_));
}
-#line 3598 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3612 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 29:
@@ -3604,7 +3618,7 @@
NotSupported(&(yylsp[0]), yyscanner, "BIT data type");
YYERROR;
}
-#line 3608 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3622 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 30:
@@ -3612,7 +3626,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDate));
}
-#line 3616 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3630 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 31:
@@ -3620,7 +3634,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetime));
}
-#line 3624 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3638 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 32:
@@ -3630,7 +3644,7 @@
NotSupported(&(yylsp[0]), yyscanner, "TIME data type");
YYERROR;
}
-#line 3634 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3648 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 33:
@@ -3638,7 +3652,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetime));
}
-#line 3642 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3656 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 34:
@@ -3646,7 +3660,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
}
-#line 3650 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3664 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 35:
@@ -3654,7 +3668,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
}
-#line 3658 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3672 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 36:
@@ -3662,7 +3676,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDouble));
}
-#line 3666 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3680 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 37:
@@ -3670,7 +3684,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kFloat));
}
-#line 3674 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3688 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 38:
@@ -3678,7 +3692,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kInt));
}
-#line 3682 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3696 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 39:
@@ -3686,7 +3700,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kInt));
}
-#line 3690 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3704 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 40:
@@ -3694,7 +3708,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kLong));
}
-#line 3698 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3712 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 41:
@@ -3702,7 +3716,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kLong));
}
-#line 3706 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3720 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 42:
@@ -3719,7 +3733,7 @@
"or YEARMONTH INTERVAL");
YYERROR;
}
-#line 3723 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3737 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 43:
@@ -3727,7 +3741,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kDatetimeInterval));
}
-#line 3731 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3745 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 44:
@@ -3735,7 +3749,7 @@
{
(yyval.data_type_) = new quickstep::ParseDataType(quickstep::TypeFactory::GetType(quickstep::kYearMonthInterval));
}
-#line 3739 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3753 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 45:
@@ -3758,7 +3772,7 @@
}
}
}
-#line 3762 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3776 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 46:
@@ -3781,7 +3795,7 @@
}
}
}
-#line 3785 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3799 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 47:
@@ -3789,7 +3803,7 @@
{
(yyval.column_constraint_) = new quickstep::ParseColumnConstraintNull((yylsp[0]).first_line, (yylsp[0]).first_column);
}
-#line 3793 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3807 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 48:
@@ -3797,7 +3811,7 @@
{
(yyval.column_constraint_) = new quickstep::ParseColumnConstraintNotNull((yylsp[-1]).first_line, (yylsp[-1]).first_column);
}
-#line 3801 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3815 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 49:
@@ -3807,7 +3821,7 @@
NotSupported(&(yylsp[0]), yyscanner, "Column Constraints (UNIQUE)");
YYERROR;
}
-#line 3811 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3825 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 50:
@@ -3817,7 +3831,7 @@
NotSupported(&(yylsp[-1]), yyscanner, "Column Constraints (PRIMARY KEY)");
YYERROR;
}
-#line 3821 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3835 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 51:
@@ -3828,7 +3842,7 @@
NotSupported(&(yylsp[-1]), yyscanner, "Column Constraints (DEFAULT)");
YYERROR;
}
-#line 3832 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3846 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 52:
@@ -3839,7 +3853,7 @@
NotSupported(&(yylsp[-3]), yyscanner, "Column Constraints (CHECK)");
YYERROR;
}
-#line 3843 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3857 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 53:
@@ -3851,7 +3865,7 @@
NotSupported(&(yylsp[-4]), yyscanner, "Foreign Keys");
YYERROR;
}
-#line 3855 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3869 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 54:
@@ -3860,7 +3874,7 @@
(yyval.column_constraint_list_) = (yyvsp[-1].column_constraint_list_);
(yyval.column_constraint_list_)->push_back((yyvsp[0].column_constraint_));
}
-#line 3864 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3878 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 55:
@@ -3869,7 +3883,7 @@
(yyval.column_constraint_list_) = new quickstep::PtrList<quickstep::ParseColumnConstraint>();
(yyval.column_constraint_list_)->push_back((yyvsp[0].column_constraint_));
}
-#line 3873 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3887 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 56:
@@ -3877,7 +3891,7 @@
{
(yyval.column_constraint_list_) = nullptr;
}
-#line 3881 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3895 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 57:
@@ -3885,7 +3899,7 @@
{
(yyval.column_constraint_list_) = (yyvsp[0].column_constraint_list_);
}
-#line 3889 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3903 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 58:
@@ -3895,7 +3909,7 @@
NotSupported(&(yylsp[-3]), yyscanner, "Table Constraints (UNIQUE)");
YYERROR;
}
-#line 3899 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3913 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 59:
@@ -3905,7 +3919,7 @@
NotSupported(&(yylsp[-4]), yyscanner, "Table Constraints (PRIMARY KEY)");
YYERROR;
}
-#line 3909 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3923 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 60:
@@ -3917,7 +3931,7 @@
NotSupported(&(yylsp[-9]), yyscanner, "Table Constraints (FOREIGN KEY)");
YYERROR;
}
-#line 3921 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3935 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 61:
@@ -3927,7 +3941,7 @@
NotSupported(&(yylsp[-3]), yyscanner, "Table Constraints (CHECK)");
YYERROR;
}
-#line 3931 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3945 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 62:
@@ -3936,7 +3950,7 @@
NotSupported(&(yylsp[-2]), yyscanner, "Table Constraints");
YYERROR;
}
-#line 3940 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3954 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 63:
@@ -3945,7 +3959,7 @@
NotSupported(&(yylsp[0]), yyscanner, "Table Constraints");
YYERROR;
}
-#line 3949 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3963 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 64:
@@ -3953,7 +3967,7 @@
{
/* $$ = nullptr; */
}
-#line 3957 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3971 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 65:
@@ -3961,7 +3975,7 @@
{
/* $$ = $1; */
}
-#line 3965 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3979 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 66:
@@ -3969,7 +3983,7 @@
{
(yyval.attribute_list_) = nullptr;
}
-#line 3973 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3987 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 67:
@@ -3977,7 +3991,7 @@
{
(yyval.attribute_list_) = (yyvsp[-1].attribute_list_);
}
-#line 3981 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 3995 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 68:
@@ -3985,7 +3999,7 @@
{
(yyval.block_properties_) = nullptr;
}
-#line 3989 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4003 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 69:
@@ -3993,7 +4007,7 @@
{
(yyval.block_properties_) = new quickstep::ParseBlockProperties((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].key_value_list_));
}
-#line 3997 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4011 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 70:
@@ -4001,7 +4015,7 @@
{
(yyval.partition_clause_) = nullptr;
}
-#line 4005 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4019 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 71:
@@ -4023,7 +4037,7 @@
}
}
}
-#line 4027 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4041 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 72:
@@ -4031,7 +4045,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::kHashPartitionType);
}
-#line 4035 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4049 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 73:
@@ -4039,7 +4053,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::kRangePartitionType);
}
-#line 4043 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4057 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 74:
@@ -4048,7 +4062,7 @@
(yyval.key_value_list_) = new quickstep::PtrList<quickstep::ParseKeyValue>();
(yyval.key_value_list_)->push_back((yyvsp[0].key_value_));
}
-#line 4052 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4066 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 75:
@@ -4057,7 +4071,7 @@
(yyval.key_value_list_) = (yyvsp[-2].key_value_list_);
(yyval.key_value_list_)->push_back((yyvsp[0].key_value_));
}
-#line 4061 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4075 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 76:
@@ -4065,7 +4079,7 @@
{
(yyval.key_value_) = (yyvsp[0].key_string_value_);
}
-#line 4069 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4083 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 77:
@@ -4073,7 +4087,7 @@
{
(yyval.key_value_) = (yyvsp[0].key_string_list_);
}
-#line 4077 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4091 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 78:
@@ -4081,7 +4095,7 @@
{
(yyval.key_value_) = (yyvsp[0].key_integer_value_);
}
-#line 4085 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4099 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 79:
@@ -4089,7 +4103,7 @@
{
(yyval.key_value_) = (yyvsp[0].key_bool_value_);
}
-#line 4093 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4107 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 80:
@@ -4097,7 +4111,7 @@
{
(yyval.key_string_value_) = new quickstep::ParseKeyStringValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].string_value_));
}
-#line 4101 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4115 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 81:
@@ -4105,7 +4119,7 @@
{
(yyval.key_string_value_) = new quickstep::ParseKeyStringValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].string_value_));
}
-#line 4109 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4123 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 82:
@@ -4115,7 +4129,7 @@
(yyval.key_string_value_) = new quickstep::ParseKeyStringValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_),
new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, "ALL"));
}
-#line 4119 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4133 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 83:
@@ -4123,7 +4137,7 @@
{
(yyval.key_string_list_) = new quickstep::ParseKeyStringList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_list_));
}
-#line 4127 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4141 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 84:
@@ -4137,7 +4151,7 @@
}
(yyval.key_integer_value_) = new quickstep::ParseKeyIntegerValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].numeric_literal_value_));
}
-#line 4141 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4155 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 85:
@@ -4145,7 +4159,7 @@
{
(yyval.key_bool_value_) = new quickstep::ParseKeyBoolValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].boolean_value_));
}
-#line 4149 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4163 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 86:
@@ -4155,7 +4169,7 @@
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
std::to_string(quickstep::IndexSubBlockType::kBitWeavingV));
}
-#line 4159 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4173 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 87:
@@ -4164,7 +4178,7 @@
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
std::to_string(quickstep::IndexSubBlockType::kBloomFilter));
}
-#line 4168 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4182 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 88:
@@ -4173,7 +4187,7 @@
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
std::to_string(quickstep::IndexSubBlockType::kCSBTree));
}
-#line 4177 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4191 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 89:
@@ -4182,7 +4196,7 @@
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column,
std::to_string(quickstep::IndexSubBlockType::kSMA));
}
-#line 4186 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4200 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 90:
@@ -4190,7 +4204,7 @@
{
(yyval.key_value_list_) = nullptr;
}
-#line 4194 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4208 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 91:
@@ -4198,7 +4212,7 @@
{
(yyval.key_value_list_) = (yyvsp[-1].key_value_list_);
}
-#line 4202 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4216 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 92:
@@ -4211,7 +4225,7 @@
NotSupported(&(yylsp[-6]), yyscanner, "list of column names in INSERT statement");
YYERROR;
}
-#line 4215 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4229 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 93:
@@ -4219,7 +4233,7 @@
{
(yyval.insert_statement_) = new quickstep::ParseStatementInsertTuple((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-2].string_value_), (yyvsp[0].literal_value_list_multiple_));
}
-#line 4223 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4237 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 94:
@@ -4227,7 +4241,7 @@
{
(yyval.insert_statement_) = new quickstep::ParseStatementInsertSelection((yylsp[-3]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].select_query_), nullptr);
}
-#line 4231 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4245 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 95:
@@ -4235,7 +4249,7 @@
{
(yyval.insert_statement_) = new quickstep::ParseStatementInsertSelection((yylsp[-4]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].select_query_), (yyvsp[-4].with_list_));
}
-#line 4239 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4253 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 96:
@@ -4245,7 +4259,7 @@
quickstep::ParseStatementCopy::kFrom,
(yyvsp[-3].string_value_), (yyvsp[-1].string_value_), (yyvsp[0].key_value_list_));
}
-#line 4249 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4263 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 97:
@@ -4255,7 +4269,7 @@
quickstep::ParseStatementCopy::kTo,
(yyvsp[-2].string_value_), (yyvsp[-1].string_value_), (yyvsp[0].key_value_list_));
}
-#line 4259 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4273 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 98:
@@ -4264,7 +4278,7 @@
(yyval.copy_statement_) = new quickstep::ParseStatementCopy((yylsp[-3]).first_line, (yylsp[-3]).first_column,
(yyvsp[-2].set_operation_), nullptr, (yyvsp[-1].string_value_), (yyvsp[0].key_value_list_));
}
-#line 4268 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4282 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 99:
@@ -4273,7 +4287,7 @@
(yyval.copy_statement_) = new quickstep::ParseStatementCopy((yylsp[-4]).first_line, (yylsp[-4]).first_column,
(yyvsp[-2].set_operation_), (yyvsp[-4].with_list_), (yyvsp[-1].string_value_), (yyvsp[0].key_value_list_));
}
-#line 4277 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4291 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 100:
@@ -4282,7 +4296,7 @@
(yyval.string_value_) = new quickstep::ParseString((yyvsp[0].string_value_)->line_number(), (yyvsp[0].string_value_)->column_number(), "@" + (yyvsp[0].string_value_)->value());
delete (yyvsp[0].string_value_);
}
-#line 4286 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4300 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 101:
@@ -4290,7 +4304,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, "$stdout");
}
-#line 4294 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4308 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 102:
@@ -4298,7 +4312,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, "$stderr");
}
-#line 4302 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4316 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 103:
@@ -4306,7 +4320,7 @@
{
(yyval.key_value_list_) = nullptr;
}
-#line 4310 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4324 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 104:
@@ -4314,7 +4328,7 @@
{
(yyval.key_value_list_) = (yyvsp[-1].key_value_list_);
}
-#line 4318 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4332 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 105:
@@ -4322,7 +4336,7 @@
{
(yyval.update_statement_) = new quickstep::ParseStatementUpdate((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].assignment_list_), (yyvsp[0].predicate_));
}
-#line 4326 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4340 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 106:
@@ -4330,7 +4344,7 @@
{
(yyval.delete_statement_) = new quickstep::ParseStatementDelete((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].predicate_));
}
-#line 4334 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4348 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 107:
@@ -4339,7 +4353,7 @@
(yyval.assignment_list_) = (yyvsp[-2].assignment_list_);
(yyval.assignment_list_)->push_back((yyvsp[0].assignment_));
}
-#line 4343 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4357 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 108:
@@ -4348,7 +4362,7 @@
(yyval.assignment_list_) = new quickstep::PtrList<quickstep::ParseAssignment>();
(yyval.assignment_list_)->push_back((yyvsp[0].assignment_));
}
-#line 4352 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4366 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 109:
@@ -4356,7 +4370,7 @@
{
(yyval.assignment_) = new quickstep::ParseAssignment((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[0].expression_));
}
-#line 4360 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4374 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 110:
@@ -4364,7 +4378,7 @@
{
(yyval.set_operation_statement_) = new quickstep::ParseStatementSetOperation((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].set_operation_), nullptr, (yyvsp[0].opt_priority_clause_));
}
-#line 4368 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4382 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 111:
@@ -4372,7 +4386,7 @@
{
(yyval.set_operation_statement_) = new quickstep::ParseStatementSetOperation((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].set_operation_), (yyvsp[-2].with_list_), (yyvsp[0].opt_priority_clause_));
}
-#line 4376 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4390 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 112:
@@ -4380,7 +4394,7 @@
{
(yyval.opt_priority_clause_) = nullptr;
}
-#line 4384 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4398 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 113:
@@ -4402,7 +4416,7 @@
}
}
}
-#line 4406 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4420 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 114:
@@ -4410,7 +4424,7 @@
{
(yyval.with_list_) = (yyvsp[0].with_list_);
}
-#line 4414 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4428 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 115:
@@ -4419,7 +4433,7 @@
(yyval.with_list_) = new quickstep::PtrVector<quickstep::ParseSubqueryTableReference>();
(yyval.with_list_)->push_back((yyvsp[0].with_list_element_));
}
-#line 4423 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4437 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 116:
@@ -4428,7 +4442,7 @@
(yyval.with_list_) = (yyvsp[-2].with_list_);
(yyval.with_list_)->push_back((yyvsp[0].with_list_element_));
}
-#line 4432 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4446 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 117:
@@ -4437,7 +4451,7 @@
(yyval.with_list_element_) = new quickstep::ParseSubqueryTableReference((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].subquery_expression_));
(yyval.with_list_element_)->set_table_reference_signature((yyvsp[-2].table_reference_signature_));
}
-#line 4441 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4455 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 118:
@@ -4451,7 +4465,7 @@
(yyval.set_operation_)->addOperand((yyvsp[-3].set_operation_));
(yyval.set_operation_)->addOperand((yyvsp[0].set_operation_));
}
-#line 4455 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4469 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 119:
@@ -4459,7 +4473,7 @@
{
(yyval.set_operation_) = (yyvsp[0].set_operation_);
}
-#line 4463 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4477 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 120:
@@ -4472,7 +4486,7 @@
(yyval.set_operation_)->addOperand((yyvsp[-2].set_operation_));
(yyval.set_operation_)->addOperand(op);
}
-#line 4476 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4490 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 121:
@@ -4481,7 +4495,7 @@
(yyval.set_operation_) = new quickstep::ParseSetOperation((yylsp[0]).first_line, (yylsp[0]).first_column, quickstep::ParseSetOperation::kSelect);
(yyval.set_operation_)->addOperand((yyvsp[0].select_query_));
}
-#line 4485 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4499 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 122:
@@ -4489,7 +4503,7 @@
{
(yyval.select_query_) = new quickstep::ParseSelect((yylsp[-9]).first_line, (yylsp[-9]).first_column, (yyvsp[-7].selection_), (yyvsp[-6].table_reference_list_), (yyvsp[-5].predicate_), (yyvsp[-4].opt_group_by_clause_), (yyvsp[-3].opt_having_clause_), (yyvsp[-2].opt_order_by_clause_), (yyvsp[-1].opt_limit_clause_), (yyvsp[0].opt_window_clause_));
}
-#line 4493 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4507 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 123:
@@ -4497,7 +4511,7 @@
{
(yyval.boolean_value_) = true; // Distinct
}
-#line 4501 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4515 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 124:
@@ -4505,7 +4519,7 @@
{
(yyval.boolean_value_) = false; // All
}
-#line 4509 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4523 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 125:
@@ -4513,7 +4527,7 @@
{
(yyval.boolean_value_) = true; // Distinct
}
-#line 4517 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4531 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 126:
@@ -4521,7 +4535,7 @@
{
(yyval.selection_) = new quickstep::ParseSelectionStar((yylsp[0]).first_line, (yylsp[0]).first_column);
}
-#line 4525 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4539 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 127:
@@ -4529,7 +4543,7 @@
{
(yyval.selection_) = (yyvsp[0].selection_list_);
}
-#line 4533 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4547 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 128:
@@ -4538,7 +4552,7 @@
(yyval.selection_list_) = new quickstep::ParseSelectionList((yylsp[0]).first_line, (yylsp[0]).first_column);
(yyval.selection_list_)->add((yyvsp[0].selection_item_));
}
-#line 4542 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4556 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 129:
@@ -4547,7 +4561,7 @@
(yyval.selection_list_) = (yyvsp[-2].selection_list_);
(yyval.selection_list_)->add((yyvsp[0].selection_item_));
}
-#line 4551 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4565 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 130:
@@ -4555,7 +4569,7 @@
{
(yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].expression_), (yyvsp[0].string_value_));
}
-#line 4559 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4573 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 131:
@@ -4563,7 +4577,7 @@
{
(yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].expression_), (yyvsp[0].string_value_));
}
-#line 4567 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4581 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 132:
@@ -4571,7 +4585,7 @@
{
(yyval.selection_item_) = new quickstep::ParseSelectionItem((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].expression_));
}
-#line 4575 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4589 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 133:
@@ -4579,7 +4593,7 @@
{
(yyval.table_reference_list_) = (yyvsp[0].table_reference_list_);
}
-#line 4583 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4597 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 134:
@@ -4587,7 +4601,7 @@
{
(yyval.subquery_expression_) = new quickstep::ParseSubqueryExpression((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-1].set_operation_));
}
-#line 4591 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4605 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 135:
@@ -4595,7 +4609,7 @@
{
(yyval.opt_sample_clause_) = NULL;
}
-#line 4599 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4613 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 136:
@@ -4603,7 +4617,7 @@
{
(yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, true, (yyvsp[-1].numeric_literal_value_));
}
-#line 4607 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4621 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 137:
@@ -4611,7 +4625,7 @@
{
(yyval.opt_sample_clause_) = new quickstep::ParseSample((yylsp[-2]).first_line, (yylsp[-2]).first_column, false, (yyvsp[-1].numeric_literal_value_));
}
-#line 4615 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4629 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 138:
@@ -4619,7 +4633,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
}
-#line 4623 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4637 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 139:
@@ -4627,7 +4641,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kInnerJoin;
}
-#line 4631 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4645 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 140:
@@ -4635,7 +4649,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
}
-#line 4639 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4653 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 141:
@@ -4643,7 +4657,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kLeftOuterJoin;
}
-#line 4647 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4661 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 142:
@@ -4651,7 +4665,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
}
-#line 4655 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4669 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 143:
@@ -4659,7 +4673,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kRightOuterJoin;
}
-#line 4663 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4677 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 144:
@@ -4667,7 +4681,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
}
-#line 4671 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4685 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 145:
@@ -4675,7 +4689,7 @@
{
(yyval.join_type_) = quickstep::ParseJoinedTableReference::JoinType::kFullOuterJoin;
}
-#line 4679 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4693 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 146:
@@ -4683,7 +4697,7 @@
{
(yyval.table_reference_) = new quickstep::ParseJoinedTableReference((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].join_type_), (yyvsp[-5].table_reference_), (yyvsp[-2].table_reference_), (yyvsp[0].predicate_));
}
-#line 4687 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4701 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 147:
@@ -4691,7 +4705,7 @@
{
(yyval.table_reference_) = (yyvsp[0].table_reference_);
}
-#line 4695 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4709 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 148:
@@ -4700,7 +4714,7 @@
(yyval.table_reference_) = new quickstep::ParseSubqueryTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].subquery_expression_));
(yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
}
-#line 4704 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4718 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 149:
@@ -4709,7 +4723,7 @@
(yyval.table_reference_) = new quickstep::ParseSimpleTableReference((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].string_value_), (yyvsp[-1].opt_sample_clause_));
(yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
}
-#line 4713 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4727 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 150:
@@ -4717,7 +4731,7 @@
{
(yyval.table_reference_) = new quickstep::ParseSimpleTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].opt_sample_clause_));
}
-#line 4721 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4735 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 151:
@@ -4726,7 +4740,7 @@
(yyval.table_reference_) = new quickstep::ParseGeneratorTableReference((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].function_call_));
(yyval.table_reference_)->set_table_reference_signature((yyvsp[0].table_reference_signature_));
}
-#line 4730 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4744 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 152:
@@ -4734,7 +4748,7 @@
{
(yyval.table_reference_) = new quickstep::ParseGeneratorTableReference((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].function_call_));
}
-#line 4738 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4752 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 153:
@@ -4742,7 +4756,7 @@
{
(yyval.table_reference_) = (yyvsp[-1].table_reference_);
}
-#line 4746 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4760 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 154:
@@ -4750,7 +4764,7 @@
{
(yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
}
-#line 4754 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4768 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 155:
@@ -4758,7 +4772,7 @@
{
(yyval.table_reference_signature_) = (yyvsp[0].table_reference_signature_);
}
-#line 4762 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4776 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 156:
@@ -4766,7 +4780,7 @@
{
(yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].string_value_));
}
-#line 4770 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4784 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 157:
@@ -4774,7 +4788,7 @@
{
(yyval.table_reference_signature_) = new ::quickstep::ParseTableReferenceSignature((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].string_list_));
}
-#line 4778 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4792 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 158:
@@ -4783,7 +4797,7 @@
(yyval.table_reference_list_) = new quickstep::PtrList<quickstep::ParseTableReference>();
(yyval.table_reference_list_)->push_back((yyvsp[0].table_reference_));
}
-#line 4787 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4801 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 159:
@@ -4792,7 +4806,7 @@
(yyval.table_reference_list_) = (yyvsp[-2].table_reference_list_);
(yyval.table_reference_list_)->push_back((yyvsp[0].table_reference_));
}
-#line 4796 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4810 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 160:
@@ -4800,7 +4814,7 @@
{
(yyval.opt_group_by_clause_) = nullptr;
}
-#line 4804 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4818 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 161:
@@ -4808,7 +4822,7 @@
{
(yyval.opt_group_by_clause_) = new quickstep::ParseGroupBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].expression_list_));
}
-#line 4812 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4826 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 162:
@@ -4816,7 +4830,7 @@
{
(yyval.opt_having_clause_) = nullptr;
}
-#line 4820 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4834 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 163:
@@ -4824,7 +4838,7 @@
{
(yyval.opt_having_clause_) = new quickstep::ParseHaving((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
}
-#line 4828 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4842 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 164:
@@ -4832,7 +4846,7 @@
{
(yyval.opt_order_by_clause_) = nullptr;
}
-#line 4836 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4850 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 165:
@@ -4840,7 +4854,7 @@
{
(yyval.opt_order_by_clause_) = new quickstep::ParseOrderBy((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].order_commalist_));
}
-#line 4844 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4858 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 166:
@@ -4848,7 +4862,7 @@
{
(yyval.opt_limit_clause_) = nullptr;
}
-#line 4852 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4866 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 167:
@@ -4870,7 +4884,7 @@
}
}
}
-#line 4874 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4888 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 168:
@@ -4878,7 +4892,7 @@
{
(yyval.opt_window_clause_) = nullptr;
}
-#line 4882 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4896 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 169:
@@ -4886,7 +4900,7 @@
{
(yyval.opt_window_clause_) = (yyvsp[0].opt_window_clause_);
}
-#line 4890 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4904 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 170:
@@ -4895,7 +4909,7 @@
(yyval.opt_window_clause_) = new quickstep::PtrList<quickstep::ParseWindow>();
(yyval.opt_window_clause_)->push_back((yyvsp[0].window_definition_));
}
-#line 4899 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4913 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 171:
@@ -4904,7 +4918,7 @@
(yyval.opt_window_clause_) = (yyvsp[-1].opt_window_clause_);
(yyval.opt_window_clause_)->push_back((yyvsp[0].window_definition_));
}
-#line 4908 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4922 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 172:
@@ -4913,7 +4927,7 @@
(yyval.window_definition_) = (yyvsp[-1].window_definition_);
(yyval.window_definition_)->setName((yyvsp[-4].string_value_));
}
-#line 4917 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4931 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 173:
@@ -4921,7 +4935,7 @@
{
(yyval.window_definition_) = new quickstep::ParseWindow((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[-2].window_partition_by_list_), (yyvsp[-1].window_order_by_list_), (yyvsp[0].window_frame_info_));
}
-#line 4925 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4939 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 174:
@@ -4929,7 +4943,7 @@
{
(yyval.window_partition_by_list_) = nullptr;
}
-#line 4933 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4947 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 175:
@@ -4937,7 +4951,7 @@
{
(yyval.window_partition_by_list_) = (yyvsp[0].expression_list_);
}
-#line 4941 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4955 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 176:
@@ -4945,7 +4959,7 @@
{
(yyval.window_order_by_list_) = nullptr;
}
-#line 4949 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4963 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 177:
@@ -4953,7 +4967,7 @@
{
(yyval.window_order_by_list_) = (yyvsp[0].order_commalist_);
}
-#line 4957 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4971 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 178:
@@ -4961,7 +4975,7 @@
{
(yyval.window_frame_info_) = nullptr;
}
-#line 4965 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4979 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 179:
@@ -4969,7 +4983,7 @@
{
(yyval.window_frame_info_) = new quickstep::ParseFrameInfo((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-4].boolean_value_), (yyvsp[-2].numeric_literal_value_)->long_value(), (yyvsp[0].numeric_literal_value_)->long_value());
}
-#line 4973 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4987 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 180:
@@ -4977,7 +4991,7 @@
{
(yyval.boolean_value_) = true;
}
-#line 4981 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 4995 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 181:
@@ -4985,7 +4999,7 @@
{
(yyval.boolean_value_) = false;
}
-#line 4989 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5003 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 183:
@@ -4993,7 +5007,7 @@
{
(yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
}
-#line 4997 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5011 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 184:
@@ -5001,7 +5015,7 @@
{
(yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
}
-#line 5005 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5019 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 186:
@@ -5009,7 +5023,7 @@
{
(yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "-1");
}
-#line 5013 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5027 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 187:
@@ -5017,7 +5031,7 @@
{
(yyval.numeric_literal_value_) = new quickstep::NumericParseLiteralValue((yylsp[-1]).first_line, (yylsp[-1]).first_column, "0");
}
-#line 5021 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5035 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 188:
@@ -5026,7 +5040,7 @@
(yyval.order_commalist_) = new quickstep::PtrList<quickstep::ParseOrderByItem>();
(yyval.order_commalist_)->push_back((yyvsp[0].order_item_));
}
-#line 5030 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5044 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 189:
@@ -5035,7 +5049,7 @@
(yyval.order_commalist_) = (yyvsp[-2].order_commalist_);
(yyval.order_commalist_)->push_back((yyvsp[0].order_item_));
}
-#line 5039 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5053 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 190:
@@ -5045,7 +5059,7 @@
delete (yyvsp[-1].order_direction_);
delete (yyvsp[0].order_direction_);
}
-#line 5049 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5063 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 191:
@@ -5053,7 +5067,7 @@
{
(yyval.order_direction_) = nullptr;
}
-#line 5057 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5071 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 192:
@@ -5061,7 +5075,7 @@
{
(yyval.order_direction_) = new bool(true);
}
-#line 5065 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5079 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 193:
@@ -5069,7 +5083,7 @@
{
(yyval.order_direction_) = new bool(false);
}
-#line 5073 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5087 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 194:
@@ -5077,7 +5091,7 @@
{
(yyval.order_direction_) = nullptr;
}
-#line 5081 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5095 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 195:
@@ -5085,7 +5099,7 @@
{
(yyval.order_direction_) = new bool(true);
}
-#line 5089 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5103 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 196:
@@ -5093,7 +5107,7 @@
{
(yyval.order_direction_) = new bool(false);
}
-#line 5097 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5111 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 197:
@@ -5101,7 +5115,7 @@
{
(yyval.predicate_) = nullptr;
}
-#line 5105 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5119 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 198:
@@ -5109,7 +5123,7 @@
{
(yyval.predicate_) = (yyvsp[0].predicate_);
}
-#line 5113 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5127 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 199:
@@ -5117,7 +5131,7 @@
{
(yyval.predicate_) = (yyvsp[0].predicate_);
}
-#line 5121 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5135 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 200:
@@ -5131,7 +5145,7 @@
}
static_cast<quickstep::ParsePredicateDisjunction *>((yyval.predicate_))->addPredicate((yyvsp[0].predicate_));
}
-#line 5135 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5149 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 201:
@@ -5139,7 +5153,7 @@
{
(yyval.predicate_) = (yyvsp[0].predicate_);
}
-#line 5143 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5157 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 202:
@@ -5153,7 +5167,7 @@
}
static_cast<quickstep::ParsePredicateConjunction *>((yyval.predicate_))->addPredicate((yyvsp[0].predicate_));
}
-#line 5157 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5171 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 203:
@@ -5161,7 +5175,7 @@
{
(yyval.predicate_) = (yyvsp[0].predicate_);
}
-#line 5165 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5179 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 204:
@@ -5169,7 +5183,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateNegation((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].predicate_));
}
-#line 5173 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5187 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 205:
@@ -5177,7 +5191,7 @@
{
(yyval.predicate_) = (yyvsp[0].predicate_);
}
-#line 5181 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5195 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 206:
@@ -5185,7 +5199,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateBetween((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
}
-#line 5189 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5203 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 207:
@@ -5195,7 +5209,7 @@
(yylsp[-4]).first_line, (yylsp[-4]).first_column,
new quickstep::ParsePredicateBetween((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-5].expression_), (yyvsp[-2].expression_), (yyvsp[0].expression_)));
}
-#line 5199 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5213 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 208:
@@ -5206,7 +5220,7 @@
NotSupported(&(yylsp[-2]), yyscanner, "NULL comparison predicates");
YYERROR;
}
-#line 5210 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5224 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 209:
@@ -5217,7 +5231,7 @@
NotSupported(&(yylsp[-1]), yyscanner, "NULL comparison predicates");
YYERROR;
}
-#line 5221 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5235 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 210:
@@ -5225,7 +5239,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateComparison((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].comparison_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
}
-#line 5229 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5243 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 211:
@@ -5233,7 +5247,7 @@
{
(yyval.predicate_) = (yyvsp[-1].predicate_);
}
-#line 5237 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5251 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 212:
@@ -5241,7 +5255,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateExists((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[0].subquery_expression_));
}
-#line 5245 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5259 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 213:
@@ -5249,7 +5263,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateInTableQuery((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-2].expression_), (yyvsp[0].subquery_expression_));
}
-#line 5253 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5267 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 214:
@@ -5257,7 +5271,7 @@
{
(yyval.predicate_) = new quickstep::ParsePredicateInValueList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-4].expression_), (yyvsp[-1].expression_list_));
}
-#line 5261 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5275 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 215:
@@ -5268,7 +5282,7 @@
(yylsp[-2]).first_column,
new quickstep::ParsePredicateInTableQuery((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-3].expression_), (yyvsp[0].subquery_expression_)));
}
-#line 5272 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5286 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 216:
@@ -5279,7 +5293,7 @@
(yylsp[-4]).first_column,
new quickstep::ParsePredicateInValueList((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-5].expression_), (yyvsp[-1].expression_list_)));
}
-#line 5283 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5297 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 217:
@@ -5287,7 +5301,7 @@
{
(yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
}
-#line 5291 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5305 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 218:
@@ -5295,7 +5309,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5299 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5313 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 219:
@@ -5303,7 +5317,7 @@
{
(yyval.expression_) = new quickstep::ParseBinaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].binary_operation_), (yyvsp[-2].expression_), (yyvsp[0].expression_));
}
-#line 5307 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5321 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 220:
@@ -5311,7 +5325,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5315 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5329 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 221:
@@ -5319,7 +5333,7 @@
{
(yyval.expression_) = new quickstep::ParseUnaryExpression((yylsp[-1]).first_line, (yylsp[-1]).first_column, *(yyvsp[-1].unary_operation_), (yyvsp[0].expression_));
}
-#line 5323 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5337 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 222:
@@ -5327,7 +5341,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5331 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5345 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 223:
@@ -5335,7 +5349,7 @@
{
(yyval.expression_) = (yyvsp[0].attribute_);
}
-#line 5339 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5353 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 224:
@@ -5343,7 +5357,7 @@
{
(yyval.expression_) = new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_));
}
-#line 5347 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5361 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 225:
@@ -5351,7 +5365,7 @@
{
(yyval.expression_) = (yyvsp[0].function_call_);
}
-#line 5355 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5369 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 226:
@@ -5360,7 +5374,7 @@
(yyvsp[-2].function_call_)->setWindowName((yyvsp[0].string_value_));
(yyval.expression_) = (yyvsp[-2].function_call_);
}
-#line 5364 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5378 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 227:
@@ -5369,7 +5383,7 @@
(yyvsp[-4].function_call_)->setWindow((yyvsp[-1].window_definition_));
(yyval.expression_) = (yyvsp[-4].function_call_);
}
-#line 5373 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5387 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 228:
@@ -5377,7 +5391,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5381 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5395 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 229:
@@ -5385,7 +5399,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5389 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5403 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 230:
@@ -5393,7 +5407,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5397 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5411 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 231:
@@ -5401,7 +5415,7 @@
{
(yyval.expression_) = (yyvsp[-1].expression_);
}
-#line 5405 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5419 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 232:
@@ -5409,7 +5423,7 @@
{
(yyval.expression_) = (yyvsp[0].subquery_expression_);
}
-#line 5413 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5427 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 233:
@@ -5418,7 +5432,7 @@
(yyval.function_call_) = new quickstep::ParseFunctionCall(
(yylsp[-2]).first_line, (yylsp[-2]).first_column, false, (yyvsp[-2].string_value_), new quickstep::PtrList<quickstep::ParseExpression>());
}
-#line 5422 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5436 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 234:
@@ -5427,7 +5441,7 @@
(yyval.function_call_) = new quickstep::ParseFunctionCall(
(yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-3].string_value_), new quickstep::ParseStar((yylsp[-1]).first_line, (yylsp[-1]).first_column));
}
-#line 5431 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5445 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 235:
@@ -5435,7 +5449,7 @@
{
(yyval.function_call_) = new quickstep::ParseFunctionCall((yylsp[-3]).first_line, (yylsp[-3]).first_column, false, (yyvsp[-3].string_value_), (yyvsp[-1].expression_list_));
}
-#line 5439 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5453 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 236:
@@ -5443,7 +5457,7 @@
{
(yyval.function_call_) = new quickstep::ParseFunctionCall((yylsp[-4]).first_line, (yylsp[-4]).first_column, true, (yyvsp[-4].string_value_), (yyvsp[-1].expression_list_));
}
-#line 5447 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5461 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 237:
@@ -5451,7 +5465,7 @@
{
(yyval.expression_) = new quickstep::ParseExtractFunction((yylsp[-5]).first_line, (yylsp[-5]).first_column, (yyvsp[-3].string_value_), (yyvsp[-1].expression_));
}
-#line 5455 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5469 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 238:
@@ -5460,7 +5474,7 @@
(yyval.expression_) = new quickstep::ParseSubstringFunction(
(yylsp[-5]).first_line, (yylsp[-5]).first_column, (yyvsp[-3].expression_), (yyvsp[-1].numeric_literal_value_)->long_value());
}
-#line 5464 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5478 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 239:
@@ -5469,7 +5483,7 @@
(yyval.expression_) = new quickstep::ParseSubstringFunction(
(yylsp[-7]).first_line, (yylsp[-7]).first_column, (yyvsp[-5].expression_), (yyvsp[-3].numeric_literal_value_)->long_value(), (yyvsp[-1].numeric_literal_value_)->long_value());
}
-#line 5473 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5487 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 240:
@@ -5477,7 +5491,7 @@
{
(yyval.expression_) = new quickstep::ParseSimpleCaseExpression((yylsp[-4]).first_line, (yylsp[-4]).first_column, (yyvsp[-3].expression_), (yyvsp[-2].simple_when_clause_list_), (yyvsp[-1].expression_));
}
-#line 5481 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5495 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 241:
@@ -5485,7 +5499,7 @@
{
(yyval.expression_) = new quickstep::ParseSearchedCaseExpression((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].searched_when_clause_list_), (yyvsp[-1].expression_));
}
-#line 5489 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5503 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 242:
@@ -5494,7 +5508,7 @@
(yyval.simple_when_clause_list_) = new quickstep::PtrVector<quickstep::ParseSimpleWhenClause>;
(yyval.simple_when_clause_list_)->push_back((yyvsp[0].simple_when_clause_));
}
-#line 5498 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5512 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 243:
@@ -5503,7 +5517,7 @@
(yyval.simple_when_clause_list_) = (yyvsp[-1].simple_when_clause_list_);
(yyval.simple_when_clause_list_)->push_back((yyvsp[0].simple_when_clause_));
}
-#line 5507 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5521 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 244:
@@ -5511,7 +5525,7 @@
{
(yyval.simple_when_clause_) = new quickstep::ParseSimpleWhenClause((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].expression_), (yyvsp[0].expression_));
}
-#line 5515 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5529 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 245:
@@ -5520,7 +5534,7 @@
(yyval.searched_when_clause_list_) = new quickstep::PtrVector<quickstep::ParseSearchedWhenClause>;
(yyval.searched_when_clause_list_)->push_back((yyvsp[0].searched_when_clause_));
}
-#line 5524 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5538 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 246:
@@ -5529,7 +5543,7 @@
(yyval.searched_when_clause_list_) = (yyvsp[-1].searched_when_clause_list_);
(yyval.searched_when_clause_list_)->push_back((yyvsp[0].searched_when_clause_));
}
-#line 5533 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5547 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 247:
@@ -5537,7 +5551,7 @@
{
(yyval.searched_when_clause_) = new quickstep::ParseSearchedWhenClause((yylsp[-3]).first_line, (yylsp[-3]).first_column, (yyvsp[-2].predicate_), (yyvsp[0].expression_));
}
-#line 5541 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5555 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 248:
@@ -5545,7 +5559,7 @@
{
(yyval.expression_) = NULL;
}
-#line 5549 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5563 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 249:
@@ -5553,7 +5567,7 @@
{
(yyval.expression_) = (yyvsp[0].expression_);
}
-#line 5557 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5571 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 250:
@@ -5562,7 +5576,7 @@
(yyval.expression_list_) = new quickstep::PtrList<quickstep::ParseExpression>();
(yyval.expression_list_)->push_back((yyvsp[0].expression_));
}
-#line 5566 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5580 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 251:
@@ -5571,7 +5585,7 @@
(yyval.expression_list_) = (yyvsp[-2].expression_list_);
(yyval.expression_list_)->push_back((yyvsp[0].expression_));
}
-#line 5575 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5589 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 252:
@@ -5579,7 +5593,7 @@
{
(yyval.literal_value_) = new quickstep::NullParseLiteralValue((yylsp[0]).first_line, (yylsp[0]).first_column);
}
-#line 5583 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5597 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 253:
@@ -5587,7 +5601,7 @@
{
(yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
}
-#line 5591 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5605 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 254:
@@ -5595,7 +5609,7 @@
{
(yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
}
-#line 5599 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5613 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 255:
@@ -5612,7 +5626,7 @@
(yyvsp[0].numeric_literal_value_)->prependMinus();
(yyval.literal_value_) = (yyvsp[0].numeric_literal_value_);
}
-#line 5616 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5630 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 256:
@@ -5621,7 +5635,7 @@
(yyval.literal_value_) = new quickstep::StringParseLiteralValue((yyvsp[0].string_value_),
nullptr); // No explicit type.
}
-#line 5625 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5639 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 257:
@@ -5645,7 +5659,7 @@
YYERROR;
}
}
-#line 5649 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5663 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 258:
@@ -5663,7 +5677,7 @@
YYERROR;
}
}
-#line 5667 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5681 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 259:
@@ -5681,7 +5695,7 @@
(yyval.literal_value_) = parse_value;
}
}
-#line 5685 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5699 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 260:
@@ -5689,7 +5703,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("YEAR"));
}
-#line 5693 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5707 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 261:
@@ -5697,7 +5711,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MONTH"));
}
-#line 5701 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5715 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 262:
@@ -5705,7 +5719,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("DAY"));
}
-#line 5709 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5723 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 263:
@@ -5713,7 +5727,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("HOUR"));
}
-#line 5717 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5731 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 264:
@@ -5721,7 +5735,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("MINUTE"));
}
-#line 5725 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5739 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 265:
@@ -5729,7 +5743,7 @@
{
(yyval.string_value_) = new quickstep::ParseString((yylsp[0]).first_line, (yylsp[0]).first_column, std::string("SECOND"));
}
-#line 5733 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5747 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 266:
@@ -5738,7 +5752,7 @@
(yyval.literal_value_list_) = new quickstep::PtrList<quickstep::ParseScalarLiteral>();
(yyval.literal_value_list_)->push_back(new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_)));
}
-#line 5742 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5756 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 267:
@@ -5747,7 +5761,7 @@
(yyval.literal_value_list_) = (yyvsp[-2].literal_value_list_);
(yyval.literal_value_list_)->push_back(new quickstep::ParseScalarLiteral((yyvsp[0].literal_value_)));
}
-#line 5751 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5765 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 268:
@@ -5756,7 +5770,7 @@
(yyval.literal_value_list_multiple_) = new quickstep::PtrList<quickstep::PtrList<quickstep::ParseScalarLiteral>>();
(yyval.literal_value_list_multiple_)->push_back((yyvsp[-1].literal_value_list_));
}
-#line 5760 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5774 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 269:
@@ -5765,7 +5779,7 @@
(yyval.literal_value_list_multiple_) = (yyvsp[-4].literal_value_list_multiple_);
(yyval.literal_value_list_multiple_)->push_back((yyvsp[-1].literal_value_list_));
}
-#line 5769 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5783 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 270:
@@ -5773,7 +5787,7 @@
{
(yyval.attribute_) = new quickstep::ParseAttribute((yylsp[0]).first_line, (yylsp[0]).first_column, (yyvsp[0].string_value_));
}
-#line 5777 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5791 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 271:
@@ -5781,7 +5795,7 @@
{
(yyval.attribute_) = new quickstep::ParseAttribute((yylsp[-2]).first_line, (yylsp[-2]).first_column, (yyvsp[0].string_value_), (yyvsp[-2].string_value_));
}
-#line 5785 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5799 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 272:
@@ -5790,7 +5804,7 @@
(yyval.attribute_list_) = new quickstep::PtrList<quickstep::ParseAttribute>();
(yyval.attribute_list_)->push_back((yyvsp[0].attribute_));
}
-#line 5794 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5808 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 273:
@@ -5799,7 +5813,7 @@
(yyval.attribute_list_) = (yyvsp[-2].attribute_list_);
(yyval.attribute_list_)->push_back((yyvsp[0].attribute_));
}
-#line 5803 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5817 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 274:
@@ -5807,7 +5821,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kEqual);
}
-#line 5811 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5825 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 275:
@@ -5815,7 +5829,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotEqual);
}
-#line 5819 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5833 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 276:
@@ -5823,7 +5837,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLess);
}
-#line 5827 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5841 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 277:
@@ -5831,7 +5845,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLessOrEqual);
}
-#line 5835 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5849 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 278:
@@ -5839,7 +5853,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreater);
}
-#line 5843 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5857 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 279:
@@ -5847,7 +5861,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kGreaterOrEqual);
}
-#line 5851 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5865 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 280:
@@ -5855,7 +5869,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kLike);
}
-#line 5859 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5873 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 281:
@@ -5863,7 +5877,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotLike);
}
-#line 5867 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5881 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 282:
@@ -5871,7 +5885,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kRegexMatch);
}
-#line 5875 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5889 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 283:
@@ -5879,7 +5893,7 @@
{
(yyval.comparison_) = &quickstep::ComparisonFactory::GetComparison(quickstep::ComparisonID::kNotRegexMatch);
}
-#line 5883 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5897 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 284:
@@ -5893,7 +5907,7 @@
**/
(yyval.unary_operation_) = &quickstep::UnaryOperationFactory::GetUnaryOperation(quickstep::UnaryOperationID::kNegate);
}
-#line 5897 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5911 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 285:
@@ -5901,7 +5915,7 @@
{
(yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kAdd);
}
-#line 5905 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5919 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 286:
@@ -5909,7 +5923,7 @@
{
(yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kSubtract);
}
-#line 5913 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5927 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 287:
@@ -5917,7 +5931,7 @@
{
(yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kModulo);
}
-#line 5921 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5935 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 288:
@@ -5925,7 +5939,7 @@
{
(yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kMultiply);
}
-#line 5929 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5943 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 289:
@@ -5933,7 +5947,7 @@
{
(yyval.binary_operation_) = &quickstep::BinaryOperationFactory::GetBinaryOperation(quickstep::BinaryOperationID::kDivide);
}
-#line 5937 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5951 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 290:
@@ -5942,7 +5956,7 @@
(yyval.string_list_) = new quickstep::PtrList<quickstep::ParseString>();
(yyval.string_list_)->push_back((yyvsp[0].string_value_));
}
-#line 5946 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5960 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 291:
@@ -5951,7 +5965,7 @@
(yyval.string_list_) = (yyvsp[-2].string_list_);
(yyval.string_list_)->push_back((yyvsp[0].string_value_));
}
-#line 5955 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5969 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 292:
@@ -5959,7 +5973,7 @@
{
(yyval.string_value_) = (yyvsp[0].string_value_);
}
-#line 5963 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5977 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 293:
@@ -5970,7 +5984,7 @@
}
(yyval.string_value_) = (yyvsp[0].string_value_);
}
-#line 5974 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5988 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 294:
@@ -5978,7 +5992,7 @@
{
(yyval.boolean_value_) = true;
}
-#line 5982 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 5996 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 295:
@@ -5986,7 +6000,7 @@
{
(yyval.boolean_value_) = true;
}
-#line 5990 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6004 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 296:
@@ -5994,7 +6008,7 @@
{
(yyval.boolean_value_) = false;
}
-#line 5998 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6012 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 297:
@@ -6002,7 +6016,7 @@
{
(yyval.boolean_value_) = false;
}
-#line 6006 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6020 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 298:
@@ -6010,7 +6024,7 @@
{
(yyval.command_) = new quickstep::ParseCommand((yylsp[-1]).first_line, (yylsp[-1]).first_column, (yyvsp[-1].string_value_), (yyvsp[0].command_argument_list_));
}
-#line 6014 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6028 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 299:
@@ -6020,7 +6034,7 @@
argument_list->push_back((yyvsp[0].string_value_));
(yyval.command_argument_list_) = argument_list;
}
-#line 6024 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6038 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
case 300:
@@ -6028,11 +6042,11 @@
{ /* Epsilon, an empy match. */
(yyval.command_argument_list_) = new quickstep::PtrVector<quickstep::ParseString>();
}
-#line 6032 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6046 "SqlParser_gen.cpp" /* yacc.c:1661 */
break;
-#line 6036 "SqlParser_gen.cpp" /* yacc.c:1661 */
+#line 6050 "SqlParser_gen.cpp" /* yacc.c:1661 */
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
diff --git a/parser/preprocessed/SqlParser_gen.hpp b/parser/preprocessed/SqlParser_gen.hpp
index 142059d..dd2728d 100644
--- a/parser/preprocessed/SqlParser_gen.hpp
+++ b/parser/preprocessed/SqlParser_gen.hpp
@@ -78,15 +78,15 @@
TOKEN_BLOCKPROPERTIES = 288,
TOKEN_BLOCKSAMPLE = 289,
TOKEN_BLOOM_FILTER = 290,
- TOKEN_CSB_TREE = 291,
- TOKEN_BY = 292,
- TOKEN_CASE = 293,
- TOKEN_CHARACTER = 294,
- TOKEN_CHECK = 295,
- TOKEN_COLUMN = 296,
- TOKEN_CONSTRAINT = 297,
- TOKEN_COPY = 298,
- TOKEN_CREATE = 299,
+ TOKEN_BY = 291,
+ TOKEN_CASE = 292,
+ TOKEN_CHARACTER = 293,
+ TOKEN_CHECK = 294,
+ TOKEN_COLUMN = 295,
+ TOKEN_CONSTRAINT = 296,
+ TOKEN_COPY = 297,
+ TOKEN_CREATE = 298,
+ TOKEN_CSB_TREE = 299,
TOKEN_CURRENT = 300,
TOKEN_DATE = 301,
TOKEN_DATETIME = 302,
@@ -100,85 +100,85 @@
TOKEN_DROP = 310,
TOKEN_ELSE = 311,
TOKEN_END = 312,
- TOKEN_EXISTS = 313,
- TOKEN_EXTRACT = 314,
- TOKEN_FALSE = 315,
- TOKEN_FIRST = 316,
- TOKEN_FLOAT = 317,
- TOKEN_FOLLOWING = 318,
- TOKEN_FOR = 319,
- TOKEN_FOREIGN = 320,
- TOKEN_FROM = 321,
- TOKEN_FULL = 322,
- TOKEN_GROUP = 323,
- TOKEN_HASH = 324,
- TOKEN_HAVING = 325,
- TOKEN_HOUR = 326,
- TOKEN_IN = 327,
- TOKEN_INDEX = 328,
- TOKEN_INNER = 329,
- TOKEN_INSERT = 330,
- TOKEN_INTEGER = 331,
- TOKEN_INTERVAL = 332,
- TOKEN_INTO = 333,
- TOKEN_JOIN = 334,
- TOKEN_KEY = 335,
- TOKEN_LAST = 336,
- TOKEN_LEFT = 337,
- TOKEN_LIMIT = 338,
- TOKEN_LONG = 339,
- TOKEN_MINUTE = 340,
- TOKEN_MONTH = 341,
- TOKEN_NULL = 342,
- TOKEN_NULLS = 343,
- TOKEN_OFF = 344,
- TOKEN_ON = 345,
- TOKEN_ORDER = 346,
- TOKEN_OUTER = 347,
- TOKEN_OVER = 348,
- TOKEN_PARTITION = 349,
- TOKEN_PARTITIONS = 350,
- TOKEN_PERCENT = 351,
- TOKEN_PRECEDING = 352,
- TOKEN_PRIMARY = 353,
- TOKEN_PRIORITY = 354,
- TOKEN_QUIT = 355,
- TOKEN_RANGE = 356,
- TOKEN_REAL = 357,
- TOKEN_REFERENCES = 358,
- TOKEN_RIGHT = 359,
- TOKEN_ROW = 360,
- TOKEN_ROW_DELIMITER = 361,
- TOKEN_ROWS = 362,
- TOKEN_SECOND = 363,
- TOKEN_SELECT = 364,
- TOKEN_SET = 365,
- TOKEN_SMA = 366,
- TOKEN_SMALLINT = 367,
- TOKEN_STDERR = 368,
- TOKEN_STDOUT = 369,
- TOKEN_SUBSTRING = 370,
- TOKEN_TABLE = 371,
- TOKEN_THEN = 372,
- TOKEN_TIME = 373,
- TOKEN_TIMESTAMP = 374,
- TOKEN_TO = 375,
- TOKEN_TRUE = 376,
- TOKEN_TUPLESAMPLE = 377,
- TOKEN_UNBOUNDED = 378,
- TOKEN_UNIQUE = 379,
- TOKEN_UPDATE = 380,
- TOKEN_USING = 381,
- TOKEN_VALUES = 382,
- TOKEN_VARCHAR = 383,
- TOKEN_WHEN = 384,
- TOKEN_WHERE = 385,
- TOKEN_WINDOW = 386,
- TOKEN_WITH = 387,
- TOKEN_YEAR = 388,
- TOKEN_YEARMONTH = 389,
- TOKEN_EOF = 390,
- TOKEN_LEX_ERROR = 391
+ TOKEN_EOF = 313,
+ TOKEN_EXISTS = 314,
+ TOKEN_EXTRACT = 315,
+ TOKEN_FALSE = 316,
+ TOKEN_FIRST = 317,
+ TOKEN_FLOAT = 318,
+ TOKEN_FOLLOWING = 319,
+ TOKEN_FOR = 320,
+ TOKEN_FOREIGN = 321,
+ TOKEN_FROM = 322,
+ TOKEN_FULL = 323,
+ TOKEN_GROUP = 324,
+ TOKEN_HASH = 325,
+ TOKEN_HAVING = 326,
+ TOKEN_HOUR = 327,
+ TOKEN_IN = 328,
+ TOKEN_INDEX = 329,
+ TOKEN_INNER = 330,
+ TOKEN_INSERT = 331,
+ TOKEN_INTEGER = 332,
+ TOKEN_INTERVAL = 333,
+ TOKEN_INTO = 334,
+ TOKEN_JOIN = 335,
+ TOKEN_KEY = 336,
+ TOKEN_LAST = 337,
+ TOKEN_LEFT = 338,
+ TOKEN_LEX_ERROR = 339,
+ TOKEN_LIMIT = 340,
+ TOKEN_LONG = 341,
+ TOKEN_MINUTE = 342,
+ TOKEN_MONTH = 343,
+ TOKEN_NULL = 344,
+ TOKEN_NULLS = 345,
+ TOKEN_OFF = 346,
+ TOKEN_ON = 347,
+ TOKEN_ORDER = 348,
+ TOKEN_OUTER = 349,
+ TOKEN_OVER = 350,
+ TOKEN_PARTITION = 351,
+ TOKEN_PARTITIONS = 352,
+ TOKEN_PERCENT = 353,
+ TOKEN_PRECEDING = 354,
+ TOKEN_PRIMARY = 355,
+ TOKEN_PRIORITY = 356,
+ TOKEN_QUIT = 357,
+ TOKEN_RANGE = 358,
+ TOKEN_REAL = 359,
+ TOKEN_REFERENCES = 360,
+ TOKEN_RIGHT = 361,
+ TOKEN_ROW = 362,
+ TOKEN_ROWS = 363,
+ TOKEN_ROW_DELIMITER = 364,
+ TOKEN_SECOND = 365,
+ TOKEN_SELECT = 366,
+ TOKEN_SET = 367,
+ TOKEN_SMA = 368,
+ TOKEN_SMALLINT = 369,
+ TOKEN_STDERR = 370,
+ TOKEN_STDOUT = 371,
+ TOKEN_SUBSTRING = 372,
+ TOKEN_TABLE = 373,
+ TOKEN_THEN = 374,
+ TOKEN_TIME = 375,
+ TOKEN_TIMESTAMP = 376,
+ TOKEN_TO = 377,
+ TOKEN_TRUE = 378,
+ TOKEN_TUPLESAMPLE = 379,
+ TOKEN_UNBOUNDED = 380,
+ TOKEN_UNIQUE = 381,
+ TOKEN_UPDATE = 382,
+ TOKEN_USING = 383,
+ TOKEN_VALUES = 384,
+ TOKEN_VARCHAR = 385,
+ TOKEN_WHEN = 386,
+ TOKEN_WHERE = 387,
+ TOKEN_WINDOW = 388,
+ TOKEN_WITH = 389,
+ TOKEN_YEAR = 390,
+ TOKEN_YEARMONTH = 391
};
#endif
diff --git a/query_optimizer/cost_model/StarSchemaSimpleCostModel.cpp b/query_optimizer/cost_model/StarSchemaSimpleCostModel.cpp
index 6ab86e5..6b506be 100644
--- a/query_optimizer/cost_model/StarSchemaSimpleCostModel.cpp
+++ b/query_optimizer/cost_model/StarSchemaSimpleCostModel.cpp
@@ -287,6 +287,7 @@
return static_cast<std::size_t>(
left_child_num_distinct_values * right_child_selectivity + 0.5);
}
+ break;
}
case P::PhysicalType::kHashJoin: {
const P::HashJoinPtr &hash_join =
@@ -447,7 +448,7 @@
if (E::ContainsExprId(child->getOutputAttributes(), attr->id())) {
const std::size_t child_num_distinct_values = estimateNumDistinctValues(attr->id(), child);
if (comparison_expression->isEqualityComparisonPredicate()) {
- return 1.0 / child_num_distinct_values;
+ return 1.0 / std::max(child_num_distinct_values, static_cast<std::size_t>(1u));
} else {
return 1.0 / std::max(std::min(child_num_distinct_values / 100.0, 10.0), 2.0);
}
diff --git a/query_optimizer/resolver/Resolver.cpp b/query_optimizer/resolver/Resolver.cpp
index b07cf10..6e03b83 100644
--- a/query_optimizer/resolver/Resolver.cpp
+++ b/query_optimizer/resolver/Resolver.cpp
@@ -1523,18 +1523,22 @@
std::vector<const ParseSetOperation*> operands;
CollapseSetOperation(parse_set_operations, parse_set_operations, &operands);
- DCHECK_LT(1u, operands.size());
+ const std::size_t num_operands = operands.size();
+ DCHECK_LT(1u, num_operands);
std::vector<L::LogicalPtr> resolved_operations;
+ resolved_operations.reserve(num_operands);
std::vector<std::vector<E::AttributeReferencePtr>> attribute_matrix;
+ attribute_matrix.reserve(num_operands);
// Resolve the first operation, and get the output attributes.
auto iter = operands.begin();
const ParseSetOperation &operation = static_cast<const ParseSetOperation&>(**iter);
L::LogicalPtr operation_logical =
resolveSetOperation(operation, set_operation_name, type_hints, parent_resolver);
- const std::vector<E::AttributeReferencePtr> operation_attributes =
+ std::vector<E::AttributeReferencePtr> operation_attributes =
operation_logical->getOutputAttributes();
- attribute_matrix.push_back(operation_attributes);
+ const std::size_t num_operation_attributes = operation_attributes.size();
+ attribute_matrix.push_back(std::move(operation_attributes));
resolved_operations.push_back(operation_logical);
// Resolve the rest operations, and check the size of output attributes.
@@ -1547,22 +1551,25 @@
// Check output attributes size.
// Detailed type check and type cast will perform later.
- if (attribute_matrix.back().size() != operation_attributes.size()) {
+ if (attribute_matrix.back().size() != num_operation_attributes) {
THROW_SQL_ERROR_AT(¤t_operation)
<< "Can not perform " << parse_set_operations.getName()
<< "opeartion between " << std::to_string(attribute_matrix.back().size())
- << "and " << std::to_string(operation_attributes.size())
+ << "and " << std::to_string(num_operation_attributes)
<< "columns";
}
resolved_operations.push_back(current_logical);
}
+ DCHECK_EQ(num_operands, attribute_matrix.size());
+ DCHECK_EQ(num_operands, resolved_operations.size());
// Get the possible output attributes that the attributes of all operands can cast to.
std::vector<E::AttributeReferencePtr> possible_attributes;
- for (std::size_t aid = 0; aid < operation_attributes.size(); ++aid) {
+ possible_attributes.reserve(num_operation_attributes);
+ for (std::size_t aid = 0; aid < num_operation_attributes; ++aid) {
E::AttributeReferencePtr possible_attribute = attribute_matrix[0][aid];
- for (std::size_t opid = 1; opid < resolved_operations.size(); ++opid) {
+ for (std::size_t opid = 1; opid < num_operands; ++opid) {
const Type ¤t_type = attribute_matrix[opid][aid]->getValueType();
const Type &possible_type = possible_attribute->getValueType();
if (!possible_type.equals(current_type)) {
@@ -1593,10 +1600,10 @@
possible_attributes.push_back(possible_attribute);
}
- for (std::size_t opid = 0; opid < operation_attributes.size(); ++opid) {
+ for (std::size_t opid = 0; opid < num_operation_attributes; ++opid) {
// Generate a cast operation if needed.
std::vector<E::NamedExpressionPtr> cast_expressions;
- for (std::size_t aid = 0; aid < operation_attributes.size(); ++aid) {
+ for (std::size_t aid = 0; aid < num_operation_attributes; ++aid) {
const E::AttributeReferencePtr current_attr = attribute_matrix[opid][aid];
const Type ¤t_type = current_attr->getValueType();
const Type &possible_type = possible_attributes[aid]->getValueType();
@@ -1635,10 +1642,11 @@
case ParseSetOperation::kUnionAll:
return L::SetOperation::Create(
L::SetOperation::kUnionAll, resolved_operations, output_attributes);
- default:
- LOG(FATAL) << "Unknown operation: " << parse_set_operations.toString();
- return nullptr;
+ case ParseSetOperation::kSelect:
+ LOG(FATAL) << "Unexpected operation: " << parse_set_operations.toString();
}
+ LOG(FATAL) << "Unreachable";
+ return nullptr;
}
L::LogicalPtr Resolver::resolveSetOperation(
@@ -1664,10 +1672,9 @@
type_hints,
parent_resolver);
}
- default:
- LOG(FATAL) << "Unknown set operation: " << set_operation_query.toString();
- return nullptr;
}
+ LOG(FATAL) << "Unreachable";
+ return nullptr;
}
E::SubqueryExpressionPtr Resolver::resolveSubqueryExpression(
diff --git a/query_optimizer/rules/InjectJoinFilters.cpp b/query_optimizer/rules/InjectJoinFilters.cpp
index 90e81d5..a165377 100644
--- a/query_optimizer/rules/InjectJoinFilters.cpp
+++ b/query_optimizer/rules/InjectJoinFilters.cpp
@@ -49,6 +49,28 @@
namespace E = ::quickstep::optimizer::expressions;
namespace P = ::quickstep::optimizer::physical;
+namespace {
+
+P::PhysicalPtr wrapSelection(const P::PhysicalPtr &input) {
+ DCHECK(P::SomeTopLevelPlan::Matches(input));
+ const P::TopLevelPlanPtr &top_level_plan =
+ std::static_pointer_cast<const P::TopLevelPlan>(input);
+ const P::PhysicalPtr &plan = top_level_plan->plan();
+
+ if (P::SomeFilterJoin::Matches(plan)) {
+ return input;
+ }
+
+ const P::SelectionPtr selection =
+ P::Selection::Create(
+ plan,
+ E::ToNamedExpressions(top_level_plan->plan()->getOutputAttributes()),
+ nullptr /* filter_predicate */);
+ return input->copyWithNewChildren({ selection });
+}
+
+} // namespace
+
P::PhysicalPtr InjectJoinFilters::apply(const P::PhysicalPtr &input) {
DCHECK(input->getPhysicalType() == P::PhysicalType::kTopLevelPlan);
@@ -62,17 +84,25 @@
// Step 1. Transform applicable HashJoin nodes to FilterJoin nodes.
P::PhysicalPtr output = transformHashJoinToFilters(input);
- // Step 2. Push down FilterJoin nodes to be evaluated early.
+ if (output == input) {
+ return input;
+ }
+
+ // Step 2. If the top level plan is a filter join, wrap it with a Selection
+ // to stabilize output columns.
+ output = wrapSelection(output);
+
+ // Step 3. Push down FilterJoin nodes to be evaluated early.
output = pushDownFilters(output);
- // Step 3. Add Selection nodes for attaching the LIPFilters, if necessary.
+ // Step 4. Add Selection nodes for attaching the LIPFilters, if necessary.
output = addFilterAnchors(output, false);
- // Step 4. Because of the pushdown of FilterJoin nodes, there are optimization
+ // Step 5. Because of the pushdown of FilterJoin nodes, there are optimization
// opportunities for projecting columns early.
output = PruneColumns().apply(output);
- // Step 5. For each FilterJoin node, attach its corresponding LIPFilter to
+ // Step 6. For each FilterJoin node, attach its corresponding LIPFilter to
// proper nodes.
concretizeAsLIPFilters(output, nullptr);
@@ -146,13 +176,8 @@
P::PhysicalPtr InjectJoinFilters::transformHashJoinToFilters(
const P::PhysicalPtr &input) const {
std::vector<P::PhysicalPtr> new_children;
- bool has_changed_children = false;
for (const P::PhysicalPtr &child : input->children()) {
- const P::PhysicalPtr new_child = transformHashJoinToFilters(child);
- if (child != new_child && !has_changed_children) {
- has_changed_children = true;
- }
- new_children.push_back(new_child);
+ new_children.emplace_back(transformHashJoinToFilters(child));
}
P::HashJoinPtr hash_join;
@@ -187,7 +212,7 @@
hash_join->cloneOutputPartitionSchemeHeader());
}
- if (has_changed_children) {
+ if (input->children() != new_children) {
return input->copyWithNewChildren(new_children);
} else {
return input;
diff --git a/query_optimizer/rules/ReorderColumns.cpp b/query_optimizer/rules/ReorderColumns.cpp
index 5f52938..6373f36 100644
--- a/query_optimizer/rules/ReorderColumns.cpp
+++ b/query_optimizer/rules/ReorderColumns.cpp
@@ -61,7 +61,9 @@
if (skip_transform) {
std::vector<P::PhysicalPtr> new_children;
for (const P::PhysicalPtr &child : input->children()) {
- new_children.emplace_back(applyInternal(child, lock_ordering && is_not_transformable));
+ const bool child_lock_ordering =
+ (lock_ordering && is_not_transformable) || P::SomeUnionAll::Matches(child);
+ new_children.emplace_back(applyInternal(child, child_lock_ordering));
}
if (new_children != input->children()) {
diff --git a/utility/BarrieredReadWriteConcurrentBitVector.hpp b/utility/BarrieredReadWriteConcurrentBitVector.hpp
index 0086c7f..dba5ff0 100644
--- a/utility/BarrieredReadWriteConcurrentBitVector.hpp
+++ b/utility/BarrieredReadWriteConcurrentBitVector.hpp
@@ -42,7 +42,7 @@
* @brief A bit vector that supports concurrent read/write operations, with a
* RESTRICTED CONCURRENCY LEVEL that the read operations and the write
* operations must be isolated with a (mostly implicit) barrier.
- *
+ *
* In other words, when using this bit vector, the read operations and write
* operations must be grouped into phases. Within a phase there can be either
* concurrent read operations or concurrent write operations, but not both (or
diff --git a/utility/ExecutionDAGVisualizer.cpp b/utility/ExecutionDAGVisualizer.cpp
index 8059ef3..4b30492 100644
--- a/utility/ExecutionDAGVisualizer.cpp
+++ b/utility/ExecutionDAGVisualizer.cpp
@@ -292,19 +292,17 @@
node_info.labels.emplace_back(
"effective concurrency: " + FormatDigits(concurrency, 2));
- DCHECK(workorders_count.find(node_index) != workorders_count.end());
- const std::size_t workorders_count_for_node = workorders_count.at(node_index);
- if (workorders_count_for_node > 0) {
- mean_time_per_workorder[node_index] =
- mean_time_per_workorder[node_index] /
+ const auto cit = workorders_count.find(node_index);
+ if (cit != workorders_count.end()) {
+ const std::size_t workorders_count_for_node = cit->second;
+ mean_time_per_workorder[node_index] /=
(1000 * static_cast<float>(workorders_count_for_node));
- } else {
- mean_time_per_workorder[node_index] = 0;
+
+ node_info.labels.emplace_back(std::to_string(workorders_count_for_node) + " work orders");
+ node_info.labels.emplace_back(
+ "Mean work order execution time: " +
+ FormatDigits(mean_time_per_workorder[node_index], 2) + " ms");
}
- node_info.labels.emplace_back(std::to_string(workorders_count_for_node) + " work orders");
- node_info.labels.emplace_back(
- "Mean work order execution time: " +
- FormatDigits(mean_time_per_workorder[node_index], 2) + " ms");
}
}
}