summaryrefslogtreecommitdiff
path: root/ext/sqlite
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2005-12-04 17:25:26 +0000
committerIlia Alshanetsky <iliaa@php.net>2005-12-04 17:25:26 +0000
commitf631fdef4c2b74a4da673c93aef37ce086695545 (patch)
tree977c128b995fa7bcd0b46166c09373f1237a6dad /ext/sqlite
parentced6ef40cd8434f7ead4e3ed4c34dc00ded77e61 (diff)
downloadphp-git-f631fdef4c2b74a4da673c93aef37ce086695545.tar.gz
MFB51: Regen files so they work properly with gcov.
Diffstat (limited to 'ext/sqlite')
-rw-r--r--ext/sqlite/libsqlite/src/parse.c1749
1 files changed, 517 insertions, 1232 deletions
diff --git a/ext/sqlite/libsqlite/src/parse.c b/ext/sqlite/libsqlite/src/parse.c
index 1c5264ca66..64ec3457df 100644
--- a/ext/sqlite/libsqlite/src/parse.c
+++ b/ext/sqlite/libsqlite/src/parse.c
@@ -1,10 +1,10 @@
/* Driver template for the LEMON parser generator.
-** The author disclaims copyright to this source code.
+** The author disclaims copyright to this source code.
*/
/* First off, code is include which follows the "include" declaration
** in the input file. */
#include <stdio.h>
-#line 33 "parse.y"
+#line 33 "ext/sqlite/libsqlite/src/parse.y"
#include "sqliteInt.h"
#include "parse.h"
@@ -29,8 +29,7 @@ struct LimitVal {
*/
struct TrigEvent { int a; IdList * b; };
-
-#line 34 "parse.c"
+#line 34 "ext/sqlite/libsqlite/src/parse.c"
/* Next is all token values, in a form suitable for use by makeheaders.
** This section will be null unless lemon is run with the -m switch.
*/
@@ -79,7 +78,6 @@ struct TrigEvent { int a; IdList * b; };
** YYERRORSYMBOL is the code number of the error symbol. If not
** defined, then do no error processing.
*/
-/*  */
#define YYCODETYPE unsigned char
#define YYNOCODE 221
#define YYACTIONTYPE unsigned short int
@@ -161,7 +159,7 @@ typedef union {
** shifting non-terminals after a reduce.
** yy_default[] Default action for each state.
*/
-static YYACTIONTYPE yy_action[] = {
+static const YYACTIONTYPE yy_action[] = {
/* 0 */ 264, 5, 262, 119, 123, 117, 121, 129, 131, 133,
/* 10 */ 135, 144, 146, 148, 150, 152, 154, 568, 106, 106,
/* 20 */ 143, 857, 1, 562, 3, 142, 129, 131, 133, 135,
@@ -292,7 +290,7 @@ static YYACTIONTYPE yy_action[] = {
/* 1270 */ 556, 550, 850, 547, 549, 851, 555, 558, 551, 855,
/* 1280 */ 553, 559,
};
-static YYCODETYPE yy_lookahead[] = {
+static const YYCODETYPE yy_lookahead[] = {
/* 0 */ 21, 9, 23, 70, 71, 72, 73, 74, 75, 76,
/* 10 */ 77, 78, 79, 80, 81, 82, 83, 9, 140, 140,
/* 20 */ 41, 132, 133, 134, 135, 46, 74, 75, 76, 77,
@@ -424,7 +422,7 @@ static YYCODETYPE yy_lookahead[] = {
/* 1280 */ 219, 140,
};
#define YY_SHIFT_USE_DFLT (-68)
-static short yy_shift_ofst[] = {
+static const short yy_shift_ofst[] = {
/* 0 */ 170, 113, -68, 746, -8, -68, 8, 127, 288, 239,
/* 10 */ 348, 167, -68, -68, -68, -68, -68, -68, 547, -68,
/* 20 */ -68, -68, -68, 115, 613, 115, 723, 115, 761, 44,
@@ -484,7 +482,7 @@ static short yy_shift_ofst[] = {
/* 560 */ -68, -68, -68,
};
#define YY_REDUCE_USE_DFLT (-123)
-static short yy_reduce_ofst[] = {
+static const short yy_reduce_ofst[] = {
/* 0 */ -111, 55, -123, 643, -123, -123, -123, -100, 82, -123,
/* 10 */ -123, 233, -123, -123, -123, -123, -123, -123, 310, -123,
/* 20 */ -123, -123, -123, 442, -123, 448, -123, 542, -123, 540,
@@ -543,7 +541,7 @@ static short yy_reduce_ofst[] = {
/* 550 */ -123, 1129, 1061, -123, 1124, -123, -123, 1059, 1141, -123,
/* 560 */ -123, -123, -123,
};
-static YYACTIONTYPE yy_default[] = {
+static const YYACTIONTYPE yy_default[] = {
/* 0 */ 570, 570, 564, 856, 856, 566, 856, 572, 856, 856,
/* 10 */ 856, 856, 652, 655, 656, 657, 658, 659, 573, 574,
/* 20 */ 591, 592, 593, 856, 856, 856, 856, 856, 856, 856,
@@ -816,7 +814,7 @@ void sqliteParserTrace(FILE *TraceFILE, char *zTracePrompt){
#ifndef NDEBUG
/* For tracing shifts, the names of all terminals and nonterminals
** are required. The following table supplies these names */
-static const char *yyTokenName[] = {
+static const char *const yyTokenName[] = {
"$", "END_OF_FILE", "ILLEGAL", "SPACE",
"UNCLOSED_STRING", "COMMENT", "FUNCTION", "COLUMN",
"AGG_FUNCTION", "SEMI", "EXPLAIN", "BEGIN",
@@ -878,7 +876,7 @@ static const char *yyTokenName[] = {
#ifndef NDEBUG
/* For tracing reduce actions, the names of all rules are required.
*/
-static const char *yyRuleName[] = {
+static const char *const yyRuleName[] = {
/* 0 */ "input ::= cmdlist",
/* 1 */ "cmdlist ::= cmdlist ecmd",
/* 2 */ "cmdlist ::= ecmd",
@@ -1230,149 +1228,61 @@ static void yy_destructor(YYCODETYPE yymajor, YYMINORTYPE *yypminor){
** inside the C code.
*/
case 146:
-#line 286 "parse.y"
+ case 171:
+ case 189:
+#line 286 "ext/sqlite/libsqlite/src/parse.y"
{sqliteSelectDelete((yypminor->yy179));}
-#line 1235 "parse.c"
+#line 1237 "ext/sqlite/libsqlite/src/parse.c"
break;
case 158:
-#line 533 "parse.y"
+ case 176:
+ case 178:
+ case 187:
+ case 192:
+ case 204:
+#line 533 "ext/sqlite/libsqlite/src/parse.y"
{sqliteExprDelete((yypminor->yy242));}
-#line 1240 "parse.c"
+#line 1247 "ext/sqlite/libsqlite/src/parse.c"
break;
case 159:
-#line 746 "parse.y"
-{sqliteIdListDelete((yypminor->yy320));}
-#line 1245 "parse.c"
- break;
case 167:
-#line 744 "parse.y"
+ case 188:
+ case 197:
+ case 199:
+#line 746 "ext/sqlite/libsqlite/src/parse.y"
{sqliteIdListDelete((yypminor->yy320));}
-#line 1250 "parse.c"
- break;
- case 171:
-#line 288 "parse.y"
-{sqliteSelectDelete((yypminor->yy179));}
-#line 1255 "parse.c"
+#line 1256 "ext/sqlite/libsqlite/src/parse.c"
break;
case 174:
-#line 322 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1260 "parse.c"
- break;
- case 175:
-#line 353 "parse.y"
-{sqliteSrcListDelete((yypminor->yy307));}
-#line 1265 "parse.c"
- break;
- case 176:
-#line 483 "parse.y"
-{sqliteExprDelete((yypminor->yy242));}
-#line 1270 "parse.c"
- break;
case 177:
-#line 459 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1275 "parse.c"
- break;
- case 178:
-#line 464 "parse.y"
-{sqliteExprDelete((yypminor->yy242));}
-#line 1280 "parse.c"
- break;
case 179:
-#line 431 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1285 "parse.c"
- break;
case 181:
-#line 324 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1290 "parse.c"
- break;
- case 183:
-#line 349 "parse.y"
-{sqliteSrcListDelete((yypminor->yy307));}
-#line 1295 "parse.c"
- break;
- case 184:
-#line 351 "parse.y"
-{sqliteSrcListDelete((yypminor->yy307));}
-#line 1300 "parse.c"
- break;
- case 187:
-#line 420 "parse.y"
-{sqliteExprDelete((yypminor->yy242));}
-#line 1305 "parse.c"
- break;
- case 188:
-#line 425 "parse.y"
-{sqliteIdListDelete((yypminor->yy320));}
-#line 1310 "parse.c"
- break;
- case 189:
-#line 400 "parse.y"
-{sqliteSelectDelete((yypminor->yy179));}
-#line 1315 "parse.c"
- break;
case 191:
-#line 433 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1320 "parse.c"
- break;
- case 192:
-#line 435 "parse.y"
-{sqliteExprDelete((yypminor->yy242));}
-#line 1325 "parse.c"
- break;
case 194:
-#line 719 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1330 "parse.c"
- break;
case 195:
-#line 489 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1335 "parse.c"
- break;
- case 197:
-#line 520 "parse.y"
-{sqliteIdListDelete((yypminor->yy320));}
-#line 1340 "parse.c"
- break;
case 198:
-#line 514 "parse.y"
-{sqliteExprListDelete((yypminor->yy322));}
-#line 1345 "parse.c"
- break;
- case 199:
-#line 522 "parse.y"
-{sqliteIdListDelete((yypminor->yy320));}
-#line 1350 "parse.c"
- break;
case 202:
-#line 702 "parse.y"
+#line 322 "ext/sqlite/libsqlite/src/parse.y"
{sqliteExprListDelete((yypminor->yy322));}
-#line 1355 "parse.c"
+#line 1269 "ext/sqlite/libsqlite/src/parse.c"
break;
- case 204:
-#line 721 "parse.y"
-{sqliteExprDelete((yypminor->yy242));}
-#line 1360 "parse.c"
+ case 175:
+ case 183:
+ case 184:
+#line 353 "ext/sqlite/libsqlite/src/parse.y"
+{sqliteSrcListDelete((yypminor->yy307));}
+#line 1276 "ext/sqlite/libsqlite/src/parse.c"
break;
case 212:
-#line 828 "parse.y"
+ case 217:
+#line 828 "ext/sqlite/libsqlite/src/parse.y"
{sqliteDeleteTriggerStep((yypminor->yy19));}
-#line 1365 "parse.c"
+#line 1282 "ext/sqlite/libsqlite/src/parse.c"
break;
case 214:
-#line 812 "parse.y"
+#line 812 "ext/sqlite/libsqlite/src/parse.y"
{sqliteIdListDelete((yypminor->yy290).b);}
-#line 1370 "parse.c"
- break;
- case 217:
-#line 836 "parse.y"
-{sqliteDeleteTriggerStep((yypminor->yy19));}
-#line 1375 "parse.c"
+#line 1287 "ext/sqlite/libsqlite/src/parse.c"
break;
default: break; /* If no destructor action specified: do nothing */
}
@@ -1479,11 +1389,11 @@ static int yy_find_shift_action(
** return YY_NO_ACTION.
*/
static int yy_find_reduce_action(
- yyParser *pParser, /* The parser */
+ int stateno, /* Current state number */
int iLookAhead /* The look-ahead token */
){
int i;
- int stateno = pParser->yystack[pParser->yyidx].stateno;
+ /* int stateno = pParser->yystack[pParser->yyidx].stateno; */
i = yy_reduce_ofst[stateno];
if( i==YY_REDUCE_USE_DFLT ){
@@ -1544,7 +1454,7 @@ static void yy_shift(
/* The following table contains information about every rule that
** is used during the reduce.
*/
-static struct {
+static const struct {
YYCODETYPE lhs; /* Symbol on the left-hand side of the rule */
unsigned char nrhs; /* Number of right-hand side symbols in the rule */
} yyRuleInfo[] = {
@@ -1868,6 +1778,18 @@ static void yy_reduce(
}
#endif /* NDEBUG */
+#ifndef NDEBUG
+ /* Silence complaints from purify about yygotominor being uninitialized
+ ** in some cases when it is copied into the stack after the following
+ ** switch. yygotominor is uninitialized when a rule reduces that does
+ ** not set the value of its left-hand side nonterminal. Leaving the
+ ** value of the nonterminal uninitialized is utterly harmless as long
+ ** as the value is never used. So really the only thing this code
+ ** accomplishes is to quieten purify.
+ */
+ memset(&yygotominor, 0, sizeof(yygotominor));
+#endif
+
switch( yyruleno ){
/* Beginning here are the reduction cases. A typical example
** follows:
@@ -1877,596 +1799,330 @@ static void yy_reduce(
** #line <lineno> <thisfile>
** break;
*/
- case 0:
- /* No destructor defined for cmdlist */
- break;
- case 1:
- /* No destructor defined for cmdlist */
- /* No destructor defined for ecmd */
- break;
- case 2:
- /* No destructor defined for ecmd */
- break;
- case 3:
- /* No destructor defined for explain */
- /* No destructor defined for cmdx */
- /* No destructor defined for SEMI */
- break;
- case 4:
- /* No destructor defined for SEMI */
- break;
case 5:
-#line 72 "parse.y"
+#line 72 "ext/sqlite/libsqlite/src/parse.y"
{ sqliteExec(pParse); }
-#line 1901 "parse.c"
- /* No destructor defined for cmd */
+#line 1807 "ext/sqlite/libsqlite/src/parse.c"
break;
case 6:
-#line 73 "parse.y"
+#line 73 "ext/sqlite/libsqlite/src/parse.y"
{ sqliteBeginParse(pParse, 1); }
-#line 1907 "parse.c"
- /* No destructor defined for EXPLAIN */
+#line 1812 "ext/sqlite/libsqlite/src/parse.c"
break;
case 7:
-#line 74 "parse.y"
+#line 74 "ext/sqlite/libsqlite/src/parse.y"
{ sqliteBeginParse(pParse, 0); }
-#line 1913 "parse.c"
+#line 1817 "ext/sqlite/libsqlite/src/parse.c"
break;
case 8:
-#line 79 "parse.y"
+#line 79 "ext/sqlite/libsqlite/src/parse.y"
{sqliteBeginTransaction(pParse,yymsp[0].minor.yy372);}
-#line 1918 "parse.c"
- /* No destructor defined for BEGIN */
- /* No destructor defined for trans_opt */
- break;
- case 9:
- break;
- case 10:
- /* No destructor defined for TRANSACTION */
- break;
- case 11:
- /* No destructor defined for TRANSACTION */
- /* No destructor defined for nm */
+#line 1822 "ext/sqlite/libsqlite/src/parse.c"
break;
case 12:
-#line 83 "parse.y"
-{sqliteCommitTransaction(pParse);}
-#line 1934 "parse.c"
- /* No destructor defined for COMMIT */
- /* No destructor defined for trans_opt */
- break;
case 13:
-#line 84 "parse.y"
+#line 83 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCommitTransaction(pParse);}
-#line 1941 "parse.c"
- /* No destructor defined for END */
- /* No destructor defined for trans_opt */
+#line 1828 "ext/sqlite/libsqlite/src/parse.c"
break;
case 14:
-#line 85 "parse.y"
+#line 85 "ext/sqlite/libsqlite/src/parse.y"
{sqliteRollbackTransaction(pParse);}
-#line 1948 "parse.c"
- /* No destructor defined for ROLLBACK */
- /* No destructor defined for trans_opt */
- break;
- case 15:
- /* No destructor defined for create_table */
- /* No destructor defined for create_table_args */
+#line 1833 "ext/sqlite/libsqlite/src/parse.c"
break;
case 16:
-#line 90 "parse.y"
+#line 90 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteStartTable(pParse,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy298,yymsp[-2].minor.yy372,0);
}
-#line 1961 "parse.c"
- /* No destructor defined for TABLE */
+#line 1840 "ext/sqlite/libsqlite/src/parse.c"
break;
case 17:
-#line 94 "parse.y"
+ case 74:
+ case 108:
+#line 94 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = 1;}
-#line 1967 "parse.c"
- /* No destructor defined for TEMP */
+#line 1847 "ext/sqlite/libsqlite/src/parse.c"
break;
case 18:
-#line 95 "parse.y"
+ case 73:
+ case 75:
+ case 86:
+ case 109:
+ case 110:
+#line 95 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = 0;}
-#line 1973 "parse.c"
+#line 1857 "ext/sqlite/libsqlite/src/parse.c"
break;
case 19:
-#line 96 "parse.y"
+#line 96 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteEndTable(pParse,&yymsp[0].minor.yy0,0);
}
-#line 1980 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for columnlist */
- /* No destructor defined for conslist_opt */
+#line 1864 "ext/sqlite/libsqlite/src/parse.c"
break;
case 20:
-#line 99 "parse.y"
+#line 99 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteEndTable(pParse,0,yymsp[0].minor.yy179);
sqliteSelectDelete(yymsp[0].minor.yy179);
}
-#line 1991 "parse.c"
- /* No destructor defined for AS */
- break;
- case 21:
- /* No destructor defined for columnlist */
- /* No destructor defined for COMMA */
- /* No destructor defined for column */
- break;
- case 22:
- /* No destructor defined for column */
- break;
- case 23:
- /* No destructor defined for columnid */
- /* No destructor defined for type */
- /* No destructor defined for carglist */
+#line 1872 "ext/sqlite/libsqlite/src/parse.c"
break;
case 24:
-#line 111 "parse.y"
+#line 111 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddColumn(pParse,&yymsp[0].minor.yy298);}
-#line 2010 "parse.c"
+#line 1877 "ext/sqlite/libsqlite/src/parse.c"
break;
case 25:
-#line 117 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2015 "parse.c"
- break;
case 26:
-#line 149 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2020 "parse.c"
- break;
case 27:
-#line 150 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2025 "parse.c"
- break;
case 28:
-#line 155 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2030 "parse.c"
- break;
case 29:
-#line 156 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2035 "parse.c"
- break;
case 30:
-#line 157 "parse.y"
+ case 256:
+ case 257:
+#line 117 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 2040 "parse.c"
- break;
- case 31:
+#line 1889 "ext/sqlite/libsqlite/src/parse.c"
break;
case 32:
-#line 160 "parse.y"
+#line 160 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddColumnType(pParse,&yymsp[0].minor.yy298,&yymsp[0].minor.yy298);}
-#line 2047 "parse.c"
+#line 1894 "ext/sqlite/libsqlite/src/parse.c"
break;
case 33:
-#line 161 "parse.y"
+#line 161 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddColumnType(pParse,&yymsp[-3].minor.yy298,&yymsp[0].minor.yy0);}
-#line 2052 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for signed */
+#line 1899 "ext/sqlite/libsqlite/src/parse.c"
break;
case 34:
-#line 163 "parse.y"
+#line 163 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddColumnType(pParse,&yymsp[-5].minor.yy298,&yymsp[0].minor.yy0);}
-#line 2059 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for signed */
- /* No destructor defined for COMMA */
- /* No destructor defined for signed */
+#line 1904 "ext/sqlite/libsqlite/src/parse.c"
break;
case 35:
-#line 165 "parse.y"
+ case 128:
+ case 254:
+ case 255:
+#line 165 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy298 = yymsp[0].minor.yy298;}
-#line 2068 "parse.c"
+#line 1912 "ext/sqlite/libsqlite/src/parse.c"
break;
case 36:
-#line 166 "parse.y"
+ case 242:
+#line 166 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy298 = yymsp[-1].minor.yy298;}
-#line 2073 "parse.c"
- /* No destructor defined for ids */
+#line 1918 "ext/sqlite/libsqlite/src/parse.c"
break;
case 37:
-#line 168 "parse.y"
-{ yygotominor.yy372 = atoi(yymsp[0].minor.yy0.z); }
-#line 2079 "parse.c"
- break;
case 38:
-#line 169 "parse.y"
+#line 168 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = atoi(yymsp[0].minor.yy0.z); }
-#line 2084 "parse.c"
- /* No destructor defined for PLUS */
+#line 1924 "ext/sqlite/libsqlite/src/parse.c"
break;
case 39:
-#line 170 "parse.y"
+#line 170 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = -atoi(yymsp[0].minor.yy0.z); }
-#line 2090 "parse.c"
- /* No destructor defined for MINUS */
- break;
- case 40:
- /* No destructor defined for carglist */
- /* No destructor defined for carg */
- break;
- case 41:
- break;
- case 42:
- /* No destructor defined for CONSTRAINT */
- /* No destructor defined for nm */
- /* No destructor defined for ccons */
- break;
- case 43:
- /* No destructor defined for ccons */
+#line 1929 "ext/sqlite/libsqlite/src/parse.c"
break;
case 44:
-#line 175 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2110 "parse.c"
- /* No destructor defined for DEFAULT */
- break;
case 45:
-#line 176 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2116 "parse.c"
- /* No destructor defined for DEFAULT */
- break;
case 46:
-#line 177 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2122 "parse.c"
- /* No destructor defined for DEFAULT */
- break;
case 47:
-#line 178 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2128 "parse.c"
- /* No destructor defined for DEFAULT */
- /* No destructor defined for PLUS */
- break;
- case 48:
-#line 179 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,1);}
-#line 2135 "parse.c"
- /* No destructor defined for DEFAULT */
- /* No destructor defined for MINUS */
- break;
case 49:
-#line 180 "parse.y"
-{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2142 "parse.c"
- /* No destructor defined for DEFAULT */
- break;
case 50:
-#line 181 "parse.y"
+#line 175 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,0);}
-#line 2148 "parse.c"
- /* No destructor defined for DEFAULT */
- /* No destructor defined for PLUS */
+#line 1939 "ext/sqlite/libsqlite/src/parse.c"
break;
+ case 48:
case 51:
-#line 182 "parse.y"
+#line 179 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddDefaultValue(pParse,&yymsp[0].minor.yy0,1);}
-#line 2155 "parse.c"
- /* No destructor defined for DEFAULT */
- /* No destructor defined for MINUS */
- break;
- case 52:
- /* No destructor defined for DEFAULT */
- /* No destructor defined for NULL */
- break;
- case 53:
- /* No destructor defined for NULL */
- /* No destructor defined for onconf */
+#line 1945 "ext/sqlite/libsqlite/src/parse.c"
break;
case 54:
-#line 189 "parse.y"
+#line 189 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddNotNull(pParse, yymsp[0].minor.yy372);}
-#line 2170 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for NULL */
+#line 1950 "ext/sqlite/libsqlite/src/parse.c"
break;
case 55:
-#line 190 "parse.y"
+#line 190 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddPrimaryKey(pParse,0,yymsp[0].minor.yy372);}
-#line 2177 "parse.c"
- /* No destructor defined for PRIMARY */
- /* No destructor defined for KEY */
- /* No destructor defined for sortorder */
+#line 1955 "ext/sqlite/libsqlite/src/parse.c"
break;
case 56:
-#line 191 "parse.y"
+#line 191 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCreateIndex(pParse,0,0,0,yymsp[0].minor.yy372,0,0);}
-#line 2185 "parse.c"
- /* No destructor defined for UNIQUE */
- break;
- case 57:
- /* No destructor defined for CHECK */
- /* No destructor defined for LP */
- yy_destructor(158,&yymsp[-2].minor);
- /* No destructor defined for RP */
- /* No destructor defined for onconf */
+#line 1960 "ext/sqlite/libsqlite/src/parse.c"
break;
case 58:
-#line 194 "parse.y"
+#line 194 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCreateForeignKey(pParse,0,&yymsp[-2].minor.yy298,yymsp[-1].minor.yy320,yymsp[0].minor.yy372);}
-#line 2198 "parse.c"
- /* No destructor defined for REFERENCES */
+#line 1965 "ext/sqlite/libsqlite/src/parse.c"
break;
case 59:
-#line 195 "parse.y"
+#line 195 "ext/sqlite/libsqlite/src/parse.y"
{sqliteDeferForeignKey(pParse,yymsp[0].minor.yy372);}
-#line 2204 "parse.c"
+#line 1970 "ext/sqlite/libsqlite/src/parse.c"
break;
case 60:
-#line 196 "parse.y"
+#line 196 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteAddCollateType(pParse, sqliteCollateType(yymsp[0].minor.yy298.z, yymsp[0].minor.yy298.n));
}
-#line 2211 "parse.c"
- /* No destructor defined for COLLATE */
+#line 1977 "ext/sqlite/libsqlite/src/parse.c"
break;
case 61:
-#line 206 "parse.y"
+#line 206 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Restrict * 0x010101; }
-#line 2217 "parse.c"
+#line 1982 "ext/sqlite/libsqlite/src/parse.c"
break;
case 62:
-#line 207 "parse.y"
+#line 207 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = (yymsp[-1].minor.yy372 & yymsp[0].minor.yy407.mask) | yymsp[0].minor.yy407.value; }
-#line 2222 "parse.c"
+#line 1987 "ext/sqlite/libsqlite/src/parse.c"
break;
case 63:
-#line 209 "parse.y"
+#line 209 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy407.value = 0; yygotominor.yy407.mask = 0x000000; }
-#line 2227 "parse.c"
- /* No destructor defined for MATCH */
- /* No destructor defined for nm */
+#line 1992 "ext/sqlite/libsqlite/src/parse.c"
break;
case 64:
-#line 210 "parse.y"
+#line 210 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy407.value = yymsp[0].minor.yy372; yygotominor.yy407.mask = 0x0000ff; }
-#line 2234 "parse.c"
- /* No destructor defined for ON */
- /* No destructor defined for DELETE */
+#line 1997 "ext/sqlite/libsqlite/src/parse.c"
break;
case 65:
-#line 211 "parse.y"
+#line 211 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy407.value = yymsp[0].minor.yy372<<8; yygotominor.yy407.mask = 0x00ff00; }
-#line 2241 "parse.c"
- /* No destructor defined for ON */
- /* No destructor defined for UPDATE */
+#line 2002 "ext/sqlite/libsqlite/src/parse.c"
break;
case 66:
-#line 212 "parse.y"
+#line 212 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy407.value = yymsp[0].minor.yy372<<16; yygotominor.yy407.mask = 0xff0000; }
-#line 2248 "parse.c"
- /* No destructor defined for ON */
- /* No destructor defined for INSERT */
+#line 2007 "ext/sqlite/libsqlite/src/parse.c"
break;
case 67:
-#line 214 "parse.y"
+#line 214 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_SetNull; }
-#line 2255 "parse.c"
- /* No destructor defined for SET */
- /* No destructor defined for NULL */
+#line 2012 "ext/sqlite/libsqlite/src/parse.c"
break;
case 68:
-#line 215 "parse.y"
+#line 215 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_SetDflt; }
-#line 2262 "parse.c"
- /* No destructor defined for SET */
- /* No destructor defined for DEFAULT */
+#line 2017 "ext/sqlite/libsqlite/src/parse.c"
break;
case 69:
-#line 216 "parse.y"
+#line 216 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Cascade; }
-#line 2269 "parse.c"
- /* No destructor defined for CASCADE */
+#line 2022 "ext/sqlite/libsqlite/src/parse.c"
break;
case 70:
-#line 217 "parse.y"
+#line 217 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Restrict; }
-#line 2275 "parse.c"
- /* No destructor defined for RESTRICT */
+#line 2027 "ext/sqlite/libsqlite/src/parse.c"
break;
case 71:
-#line 219 "parse.y"
-{yygotominor.yy372 = yymsp[0].minor.yy372;}
-#line 2281 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for DEFERRABLE */
- break;
case 72:
-#line 220 "parse.y"
+ case 87:
+ case 164:
+#line 219 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = yymsp[0].minor.yy372;}
-#line 2288 "parse.c"
- /* No destructor defined for DEFERRABLE */
- break;
- case 73:
-#line 222 "parse.y"
-{yygotominor.yy372 = 0;}
-#line 2294 "parse.c"
- break;
- case 74:
-#line 223 "parse.y"
-{yygotominor.yy372 = 1;}
-#line 2299 "parse.c"
- /* No destructor defined for INITIALLY */
- /* No destructor defined for DEFERRED */
- break;
- case 75:
-#line 224 "parse.y"
-{yygotominor.yy372 = 0;}
-#line 2306 "parse.c"
- /* No destructor defined for INITIALLY */
- /* No destructor defined for IMMEDIATE */
- break;
- case 76:
- break;
- case 77:
- /* No destructor defined for COMMA */
- /* No destructor defined for conslist */
- break;
- case 78:
- /* No destructor defined for conslist */
- /* No destructor defined for COMMA */
- /* No destructor defined for tcons */
- break;
- case 79:
- /* No destructor defined for conslist */
- /* No destructor defined for tcons */
- break;
- case 80:
- /* No destructor defined for tcons */
- break;
- case 81:
- /* No destructor defined for CONSTRAINT */
- /* No destructor defined for nm */
+#line 2035 "ext/sqlite/libsqlite/src/parse.c"
break;
case 82:
-#line 236 "parse.y"
+#line 236 "ext/sqlite/libsqlite/src/parse.y"
{sqliteAddPrimaryKey(pParse,yymsp[-2].minor.yy320,yymsp[0].minor.yy372);}
-#line 2335 "parse.c"
- /* No destructor defined for PRIMARY */
- /* No destructor defined for KEY */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 2040 "ext/sqlite/libsqlite/src/parse.c"
break;
case 83:
-#line 238 "parse.y"
+#line 238 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCreateIndex(pParse,0,0,yymsp[-2].minor.yy320,yymsp[0].minor.yy372,0,0);}
-#line 2344 "parse.c"
- /* No destructor defined for UNIQUE */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
- break;
- case 84:
- /* No destructor defined for CHECK */
- yy_destructor(158,&yymsp[-1].minor);
- /* No destructor defined for onconf */
+#line 2045 "ext/sqlite/libsqlite/src/parse.c"
break;
case 85:
-#line 241 "parse.y"
+#line 241 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteCreateForeignKey(pParse, yymsp[-6].minor.yy320, &yymsp[-3].minor.yy298, yymsp[-2].minor.yy320, yymsp[-1].minor.yy372);
sqliteDeferForeignKey(pParse, yymsp[0].minor.yy372);
}
-#line 2360 "parse.c"
- /* No destructor defined for FOREIGN */
- /* No destructor defined for KEY */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
- /* No destructor defined for REFERENCES */
- break;
- case 86:
-#line 246 "parse.y"
-{yygotominor.yy372 = 0;}
-#line 2370 "parse.c"
- break;
- case 87:
-#line 247 "parse.y"
-{yygotominor.yy372 = yymsp[0].minor.yy372;}
-#line 2375 "parse.c"
+#line 2053 "ext/sqlite/libsqlite/src/parse.c"
break;
case 88:
-#line 255 "parse.y"
-{ yygotominor.yy372 = OE_Default; }
-#line 2380 "parse.c"
- break;
- case 89:
-#line 256 "parse.y"
-{ yygotominor.yy372 = yymsp[0].minor.yy372; }
-#line 2385 "parse.c"
- /* No destructor defined for ON */
- /* No destructor defined for CONFLICT */
- break;
case 90:
-#line 257 "parse.y"
+#line 255 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Default; }
-#line 2392 "parse.c"
+#line 2059 "ext/sqlite/libsqlite/src/parse.c"
break;
+ case 89:
case 91:
-#line 258 "parse.y"
+#line 256 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = yymsp[0].minor.yy372; }
-#line 2397 "parse.c"
- /* No destructor defined for OR */
+#line 2065 "ext/sqlite/libsqlite/src/parse.c"
break;
case 92:
-#line 259 "parse.y"
+#line 259 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Rollback; }
-#line 2403 "parse.c"
- /* No destructor defined for ROLLBACK */
+#line 2070 "ext/sqlite/libsqlite/src/parse.c"
break;
case 93:
-#line 260 "parse.y"
+ case 236:
+#line 260 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Abort; }
-#line 2409 "parse.c"
- /* No destructor defined for ABORT */
+#line 2076 "ext/sqlite/libsqlite/src/parse.c"
break;
case 94:
-#line 261 "parse.y"
+#line 261 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Fail; }
-#line 2415 "parse.c"
- /* No destructor defined for FAIL */
+#line 2081 "ext/sqlite/libsqlite/src/parse.c"
break;
case 95:
-#line 262 "parse.y"
+#line 262 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Ignore; }
-#line 2421 "parse.c"
- /* No destructor defined for IGNORE */
+#line 2086 "ext/sqlite/libsqlite/src/parse.c"
break;
case 96:
-#line 263 "parse.y"
+#line 263 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_Replace; }
-#line 2427 "parse.c"
- /* No destructor defined for REPLACE */
+#line 2091 "ext/sqlite/libsqlite/src/parse.c"
break;
case 97:
-#line 267 "parse.y"
+#line 267 "ext/sqlite/libsqlite/src/parse.y"
{sqliteDropTable(pParse,&yymsp[0].minor.yy298,0);}
-#line 2433 "parse.c"
- /* No destructor defined for DROP */
- /* No destructor defined for TABLE */
+#line 2096 "ext/sqlite/libsqlite/src/parse.c"
break;
case 98:
-#line 271 "parse.y"
+#line 271 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteCreateView(pParse, &yymsp[-5].minor.yy0, &yymsp[-2].minor.yy298, yymsp[0].minor.yy179, yymsp[-4].minor.yy372);
}
-#line 2442 "parse.c"
- /* No destructor defined for VIEW */
- /* No destructor defined for AS */
+#line 2103 "ext/sqlite/libsqlite/src/parse.c"
break;
case 99:
-#line 274 "parse.y"
+#line 274 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteDropTable(pParse, &yymsp[0].minor.yy298, 1);
}
-#line 2451 "parse.c"
- /* No destructor defined for DROP */
- /* No destructor defined for VIEW */
+#line 2110 "ext/sqlite/libsqlite/src/parse.c"
break;
case 100:
-#line 280 "parse.y"
+#line 280 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteSelect(pParse, yymsp[0].minor.yy179, SRT_Callback, 0, 0, 0, 0);
sqliteSelectDelete(yymsp[0].minor.yy179);
}
-#line 2461 "parse.c"
+#line 2118 "ext/sqlite/libsqlite/src/parse.c"
break;
case 101:
-#line 290 "parse.y"
+ case 125:
+#line 290 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy179 = yymsp[0].minor.yy179;}
-#line 2466 "parse.c"
+#line 2124 "ext/sqlite/libsqlite/src/parse.c"
break;
case 102:
-#line 291 "parse.y"
+#line 291 "ext/sqlite/libsqlite/src/parse.y"
{
if( yymsp[0].minor.yy179 ){
yymsp[0].minor.yy179->op = yymsp[-1].minor.yy372;
@@ -2474,137 +2130,107 @@ static void yy_reduce(
}
yygotominor.yy179 = yymsp[0].minor.yy179;
}
-#line 2477 "parse.c"
+#line 2135 "ext/sqlite/libsqlite/src/parse.c"
break;
case 103:
-#line 299 "parse.y"
+#line 299 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_UNION;}
-#line 2482 "parse.c"
- /* No destructor defined for UNION */
+#line 2140 "ext/sqlite/libsqlite/src/parse.c"
break;
case 104:
-#line 300 "parse.y"
+#line 300 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_ALL;}
-#line 2488 "parse.c"
- /* No destructor defined for UNION */
- /* No destructor defined for ALL */
+#line 2145 "ext/sqlite/libsqlite/src/parse.c"
break;
case 105:
-#line 301 "parse.y"
+#line 301 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_INTERSECT;}
-#line 2495 "parse.c"
- /* No destructor defined for INTERSECT */
+#line 2150 "ext/sqlite/libsqlite/src/parse.c"
break;
case 106:
-#line 302 "parse.y"
+#line 302 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_EXCEPT;}
-#line 2501 "parse.c"
- /* No destructor defined for EXCEPT */
+#line 2155 "ext/sqlite/libsqlite/src/parse.c"
break;
case 107:
-#line 304 "parse.y"
+#line 304 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy179 = sqliteSelectNew(yymsp[-6].minor.yy322,yymsp[-5].minor.yy307,yymsp[-4].minor.yy242,yymsp[-3].minor.yy322,yymsp[-2].minor.yy242,yymsp[-1].minor.yy322,yymsp[-7].minor.yy372,yymsp[0].minor.yy124.limit,yymsp[0].minor.yy124.offset);
}
-#line 2509 "parse.c"
- /* No destructor defined for SELECT */
- break;
- case 108:
-#line 312 "parse.y"
-{yygotominor.yy372 = 1;}
-#line 2515 "parse.c"
- /* No destructor defined for DISTINCT */
- break;
- case 109:
-#line 313 "parse.y"
-{yygotominor.yy372 = 0;}
-#line 2521 "parse.c"
- /* No destructor defined for ALL */
- break;
- case 110:
-#line 314 "parse.y"
-{yygotominor.yy372 = 0;}
-#line 2527 "parse.c"
+#line 2162 "ext/sqlite/libsqlite/src/parse.c"
break;
case 111:
-#line 325 "parse.y"
+#line 325 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = yymsp[-1].minor.yy322;}
-#line 2532 "parse.c"
- /* No destructor defined for COMMA */
+#line 2167 "ext/sqlite/libsqlite/src/parse.c"
break;
case 112:
-#line 326 "parse.y"
+ case 138:
+ case 148:
+#line 326 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = 0;}
-#line 2538 "parse.c"
+#line 2174 "ext/sqlite/libsqlite/src/parse.c"
break;
case 113:
-#line 327 "parse.y"
+#line 327 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(yymsp[-2].minor.yy322,yymsp[-1].minor.yy242,yymsp[0].minor.yy298.n?&yymsp[0].minor.yy298:0);
}
-#line 2545 "parse.c"
+#line 2181 "ext/sqlite/libsqlite/src/parse.c"
break;
case 114:
-#line 330 "parse.y"
+#line 330 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(yymsp[-1].minor.yy322, sqliteExpr(TK_ALL, 0, 0, 0), 0);
}
-#line 2552 "parse.c"
- /* No destructor defined for STAR */
+#line 2188 "ext/sqlite/libsqlite/src/parse.c"
break;
case 115:
-#line 333 "parse.y"
+#line 333 "ext/sqlite/libsqlite/src/parse.y"
{
Expr *pRight = sqliteExpr(TK_ALL, 0, 0, 0);
Expr *pLeft = sqliteExpr(TK_ID, 0, 0, &yymsp[-2].minor.yy298);
yygotominor.yy322 = sqliteExprListAppend(yymsp[-3].minor.yy322, sqliteExpr(TK_DOT, pLeft, pRight, 0), 0);
}
-#line 2562 "parse.c"
- /* No destructor defined for DOT */
- /* No destructor defined for STAR */
+#line 2197 "ext/sqlite/libsqlite/src/parse.c"
break;
case 116:
-#line 343 "parse.y"
-{ yygotominor.yy298 = yymsp[0].minor.yy298; }
-#line 2569 "parse.c"
- /* No destructor defined for AS */
- break;
case 117:
-#line 344 "parse.y"
+ case 288:
+#line 343 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy298 = yymsp[0].minor.yy298; }
-#line 2575 "parse.c"
+#line 2204 "ext/sqlite/libsqlite/src/parse.c"
break;
case 118:
-#line 345 "parse.y"
+#line 345 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy298.n = 0; }
-#line 2580 "parse.c"
+#line 2209 "ext/sqlite/libsqlite/src/parse.c"
break;
case 119:
-#line 357 "parse.y"
+#line 357 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy307 = sqliteMalloc(sizeof(*yygotominor.yy307));}
-#line 2585 "parse.c"
+#line 2214 "ext/sqlite/libsqlite/src/parse.c"
break;
case 120:
-#line 358 "parse.y"
+#line 358 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy307 = yymsp[0].minor.yy307;}
-#line 2590 "parse.c"
- /* No destructor defined for FROM */
+#line 2219 "ext/sqlite/libsqlite/src/parse.c"
break;
case 121:
-#line 363 "parse.y"
+#line 363 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy307 = yymsp[-1].minor.yy307;
if( yygotominor.yy307 && yygotominor.yy307->nSrc>0 ) yygotominor.yy307->a[yygotominor.yy307->nSrc-1].jointype = yymsp[0].minor.yy372;
}
-#line 2599 "parse.c"
+#line 2227 "ext/sqlite/libsqlite/src/parse.c"
break;
case 122:
-#line 367 "parse.y"
+#line 367 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy307 = 0;}
-#line 2604 "parse.c"
+#line 2232 "ext/sqlite/libsqlite/src/parse.c"
break;
case 123:
-#line 368 "parse.y"
+#line 368 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy307 = sqliteSrcListAppend(yymsp[-5].minor.yy307,&yymsp[-4].minor.yy298,&yymsp[-3].minor.yy298);
if( yymsp[-2].minor.yy298.n ) sqliteSrcListAddAlias(yygotominor.yy307,&yymsp[-2].minor.yy298);
@@ -2617,10 +2243,10 @@ static void yy_reduce(
else { sqliteIdListDelete(yymsp[0].minor.yy320); }
}
}
-#line 2620 "parse.c"
+#line 2248 "ext/sqlite/libsqlite/src/parse.c"
break;
case 124:
-#line 381 "parse.y"
+#line 381 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy307 = sqliteSrcListAppend(yymsp[-6].minor.yy307,0,0);
yygotominor.yy307->a[yygotominor.yy307->nSrc-1].pSelect = yymsp[-4].minor.yy179;
@@ -2634,330 +2260,227 @@ static void yy_reduce(
else { sqliteIdListDelete(yymsp[0].minor.yy320); }
}
}
-#line 2637 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for RP */
- break;
- case 125:
-#line 401 "parse.y"
-{yygotominor.yy179 = yymsp[0].minor.yy179;}
-#line 2644 "parse.c"
+#line 2265 "ext/sqlite/libsqlite/src/parse.c"
break;
case 126:
-#line 402 "parse.y"
+#line 402 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy179 = sqliteSelectNew(0,yymsp[0].minor.yy307,0,0,0,0,0,-1,0);
}
-#line 2651 "parse.c"
+#line 2272 "ext/sqlite/libsqlite/src/parse.c"
break;
case 127:
-#line 407 "parse.y"
+#line 407 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy298.z=0; yygotominor.yy298.n=0;}
-#line 2656 "parse.c"
- break;
- case 128:
-#line 408 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy298;}
-#line 2661 "parse.c"
- /* No destructor defined for DOT */
+#line 2277 "ext/sqlite/libsqlite/src/parse.c"
break;
case 129:
-#line 412 "parse.y"
-{ yygotominor.yy372 = JT_INNER; }
-#line 2667 "parse.c"
- /* No destructor defined for COMMA */
- break;
case 130:
-#line 413 "parse.y"
+#line 412 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = JT_INNER; }
-#line 2673 "parse.c"
- /* No destructor defined for JOIN */
+#line 2283 "ext/sqlite/libsqlite/src/parse.c"
break;
case 131:
-#line 414 "parse.y"
+#line 414 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = sqliteJoinType(pParse,&yymsp[-1].minor.yy0,0,0); }
-#line 2679 "parse.c"
- /* No destructor defined for JOIN */
+#line 2288 "ext/sqlite/libsqlite/src/parse.c"
break;
case 132:
-#line 415 "parse.y"
+#line 415 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = sqliteJoinType(pParse,&yymsp[-2].minor.yy0,&yymsp[-1].minor.yy298,0); }
-#line 2685 "parse.c"
- /* No destructor defined for JOIN */
+#line 2293 "ext/sqlite/libsqlite/src/parse.c"
break;
case 133:
-#line 417 "parse.y"
+#line 417 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = sqliteJoinType(pParse,&yymsp[-3].minor.yy0,&yymsp[-2].minor.yy298,&yymsp[-1].minor.yy298); }
-#line 2691 "parse.c"
- /* No destructor defined for JOIN */
+#line 2298 "ext/sqlite/libsqlite/src/parse.c"
break;
case 134:
-#line 421 "parse.y"
+ case 142:
+ case 151:
+ case 158:
+ case 227:
+ case 229:
+ case 233:
+#line 421 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 2697 "parse.c"
- /* No destructor defined for ON */
+#line 2309 "ext/sqlite/libsqlite/src/parse.c"
break;
case 135:
-#line 422 "parse.y"
+ case 150:
+ case 157:
+ case 228:
+ case 230:
+ case 234:
+#line 422 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = 0;}
-#line 2703 "parse.c"
+#line 2319 "ext/sqlite/libsqlite/src/parse.c"
break;
case 136:
-#line 426 "parse.y"
+ case 169:
+ case 239:
+#line 426 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy320 = yymsp[-1].minor.yy320;}
-#line 2708 "parse.c"
- /* No destructor defined for USING */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 2326 "ext/sqlite/libsqlite/src/parse.c"
break;
case 137:
-#line 427 "parse.y"
+ case 168:
+ case 238:
+#line 427 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy320 = 0;}
-#line 2716 "parse.c"
- break;
- case 138:
-#line 437 "parse.y"
-{yygotominor.yy322 = 0;}
-#line 2721 "parse.c"
+#line 2333 "ext/sqlite/libsqlite/src/parse.c"
break;
case 139:
-#line 438 "parse.y"
+ case 149:
+#line 438 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = yymsp[0].minor.yy322;}
-#line 2726 "parse.c"
- /* No destructor defined for ORDER */
- /* No destructor defined for BY */
+#line 2339 "ext/sqlite/libsqlite/src/parse.c"
break;
case 140:
-#line 439 "parse.y"
+#line 439 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(yymsp[-4].minor.yy322,yymsp[-2].minor.yy242,0);
if( yygotominor.yy322 ) yygotominor.yy322->a[yygotominor.yy322->nExpr-1].sortOrder = yymsp[-1].minor.yy372+yymsp[0].minor.yy372;
}
-#line 2736 "parse.c"
- /* No destructor defined for COMMA */
+#line 2347 "ext/sqlite/libsqlite/src/parse.c"
break;
case 141:
-#line 443 "parse.y"
+#line 443 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(0,yymsp[-2].minor.yy242,0);
if( yygotominor.yy322 ) yygotominor.yy322->a[0].sortOrder = yymsp[-1].minor.yy372+yymsp[0].minor.yy372;
}
-#line 2745 "parse.c"
- break;
- case 142:
-#line 447 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 2750 "parse.c"
+#line 2355 "ext/sqlite/libsqlite/src/parse.c"
break;
case 143:
-#line 452 "parse.y"
+ case 145:
+#line 452 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = SQLITE_SO_ASC;}
-#line 2755 "parse.c"
- /* No destructor defined for ASC */
+#line 2361 "ext/sqlite/libsqlite/src/parse.c"
break;
case 144:
-#line 453 "parse.y"
+#line 453 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = SQLITE_SO_DESC;}
-#line 2761 "parse.c"
- /* No destructor defined for DESC */
- break;
- case 145:
-#line 454 "parse.y"
-{yygotominor.yy372 = SQLITE_SO_ASC;}
-#line 2767 "parse.c"
+#line 2366 "ext/sqlite/libsqlite/src/parse.c"
break;
case 146:
-#line 455 "parse.y"
+#line 455 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = SQLITE_SO_UNK;}
-#line 2772 "parse.c"
+#line 2371 "ext/sqlite/libsqlite/src/parse.c"
break;
case 147:
-#line 456 "parse.y"
+#line 456 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = sqliteCollateType(yymsp[0].minor.yy298.z, yymsp[0].minor.yy298.n);}
-#line 2777 "parse.c"
- /* No destructor defined for COLLATE */
- break;
- case 148:
-#line 460 "parse.y"
-{yygotominor.yy322 = 0;}
-#line 2783 "parse.c"
- break;
- case 149:
-#line 461 "parse.y"
-{yygotominor.yy322 = yymsp[0].minor.yy322;}
-#line 2788 "parse.c"
- /* No destructor defined for GROUP */
- /* No destructor defined for BY */
- break;
- case 150:
-#line 465 "parse.y"
-{yygotominor.yy242 = 0;}
-#line 2795 "parse.c"
- break;
- case 151:
-#line 466 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 2800 "parse.c"
- /* No destructor defined for HAVING */
+#line 2376 "ext/sqlite/libsqlite/src/parse.c"
break;
case 152:
-#line 469 "parse.y"
+#line 469 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy124.limit = -1; yygotominor.yy124.offset = 0;}
-#line 2806 "parse.c"
+#line 2381 "ext/sqlite/libsqlite/src/parse.c"
break;
case 153:
-#line 470 "parse.y"
+#line 470 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy124.limit = yymsp[0].minor.yy372; yygotominor.yy124.offset = 0;}
-#line 2811 "parse.c"
- /* No destructor defined for LIMIT */
+#line 2386 "ext/sqlite/libsqlite/src/parse.c"
break;
case 154:
-#line 472 "parse.y"
+#line 472 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy124.limit = yymsp[-2].minor.yy372; yygotominor.yy124.offset = yymsp[0].minor.yy372;}
-#line 2817 "parse.c"
- /* No destructor defined for LIMIT */
- /* No destructor defined for OFFSET */
+#line 2391 "ext/sqlite/libsqlite/src/parse.c"
break;
case 155:
-#line 474 "parse.y"
+#line 474 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy124.limit = yymsp[0].minor.yy372; yygotominor.yy124.offset = yymsp[-2].minor.yy372;}
-#line 2824 "parse.c"
- /* No destructor defined for LIMIT */
- /* No destructor defined for COMMA */
+#line 2396 "ext/sqlite/libsqlite/src/parse.c"
break;
case 156:
-#line 478 "parse.y"
+#line 478 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteDeleteFrom(pParse, sqliteSrcListAppend(0,&yymsp[-2].minor.yy298,&yymsp[-1].minor.yy298), yymsp[0].minor.yy242);
}
-#line 2833 "parse.c"
- /* No destructor defined for DELETE */
- /* No destructor defined for FROM */
- break;
- case 157:
-#line 485 "parse.y"
-{yygotominor.yy242 = 0;}
-#line 2840 "parse.c"
- break;
- case 158:
-#line 486 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 2845 "parse.c"
- /* No destructor defined for WHERE */
+#line 2403 "ext/sqlite/libsqlite/src/parse.c"
break;
case 159:
-#line 494 "parse.y"
+#line 494 "ext/sqlite/libsqlite/src/parse.y"
{sqliteUpdate(pParse,sqliteSrcListAppend(0,&yymsp[-4].minor.yy298,&yymsp[-3].minor.yy298),yymsp[-1].minor.yy322,yymsp[0].minor.yy242,yymsp[-5].minor.yy372);}
-#line 2851 "parse.c"
- /* No destructor defined for UPDATE */
- /* No destructor defined for SET */
+#line 2408 "ext/sqlite/libsqlite/src/parse.c"
break;
case 160:
-#line 497 "parse.y"
+#line 497 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = sqliteExprListAppend(yymsp[-4].minor.yy322,yymsp[0].minor.yy242,&yymsp[-2].minor.yy298);}
-#line 2858 "parse.c"
- /* No destructor defined for COMMA */
- /* No destructor defined for EQ */
+#line 2413 "ext/sqlite/libsqlite/src/parse.c"
break;
case 161:
-#line 498 "parse.y"
+#line 498 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = sqliteExprListAppend(0,yymsp[0].minor.yy242,&yymsp[-2].minor.yy298);}
-#line 2865 "parse.c"
- /* No destructor defined for EQ */
+#line 2418 "ext/sqlite/libsqlite/src/parse.c"
break;
case 162:
-#line 504 "parse.y"
+#line 504 "ext/sqlite/libsqlite/src/parse.y"
{sqliteInsert(pParse, sqliteSrcListAppend(0,&yymsp[-6].minor.yy298,&yymsp[-5].minor.yy298), yymsp[-1].minor.yy322, 0, yymsp[-4].minor.yy320, yymsp[-8].minor.yy372);}
-#line 2871 "parse.c"
- /* No destructor defined for INTO */
- /* No destructor defined for VALUES */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 2423 "ext/sqlite/libsqlite/src/parse.c"
break;
case 163:
-#line 506 "parse.y"
+#line 506 "ext/sqlite/libsqlite/src/parse.y"
{sqliteInsert(pParse, sqliteSrcListAppend(0,&yymsp[-3].minor.yy298,&yymsp[-2].minor.yy298), 0, yymsp[0].minor.yy179, yymsp[-1].minor.yy320, yymsp[-5].minor.yy372);}
-#line 2880 "parse.c"
- /* No destructor defined for INTO */
- break;
- case 164:
-#line 509 "parse.y"
-{yygotominor.yy372 = yymsp[0].minor.yy372;}
-#line 2886 "parse.c"
- /* No destructor defined for INSERT */
+#line 2428 "ext/sqlite/libsqlite/src/parse.c"
break;
case 165:
-#line 510 "parse.y"
+#line 510 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = OE_Replace;}
-#line 2892 "parse.c"
- /* No destructor defined for REPLACE */
+#line 2433 "ext/sqlite/libsqlite/src/parse.c"
break;
case 166:
-#line 516 "parse.y"
+ case 231:
+#line 516 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = sqliteExprListAppend(yymsp[-2].minor.yy322,yymsp[0].minor.yy242,0);}
-#line 2898 "parse.c"
- /* No destructor defined for COMMA */
+#line 2439 "ext/sqlite/libsqlite/src/parse.c"
break;
case 167:
-#line 517 "parse.y"
+ case 232:
+#line 517 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy322 = sqliteExprListAppend(0,yymsp[0].minor.yy242,0);}
-#line 2904 "parse.c"
- break;
- case 168:
-#line 524 "parse.y"
-{yygotominor.yy320 = 0;}
-#line 2909 "parse.c"
- break;
- case 169:
-#line 525 "parse.y"
-{yygotominor.yy320 = yymsp[-1].minor.yy320;}
-#line 2914 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 2445 "ext/sqlite/libsqlite/src/parse.c"
break;
case 170:
-#line 526 "parse.y"
+ case 240:
+#line 526 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy320 = sqliteIdListAppend(yymsp[-2].minor.yy320,&yymsp[0].minor.yy298);}
-#line 2921 "parse.c"
- /* No destructor defined for COMMA */
+#line 2451 "ext/sqlite/libsqlite/src/parse.c"
break;
case 171:
-#line 527 "parse.y"
+ case 241:
+#line 527 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy320 = sqliteIdListAppend(0,&yymsp[0].minor.yy298);}
-#line 2927 "parse.c"
+#line 2457 "ext/sqlite/libsqlite/src/parse.c"
break;
case 172:
-#line 535 "parse.y"
+#line 535 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = yymsp[-1].minor.yy242; sqliteExprSpan(yygotominor.yy242,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0); }
-#line 2932 "parse.c"
+#line 2462 "ext/sqlite/libsqlite/src/parse.c"
break;
case 173:
-#line 536 "parse.y"
+#line 536 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_NULL, 0, 0, &yymsp[0].minor.yy0);}
-#line 2937 "parse.c"
+#line 2467 "ext/sqlite/libsqlite/src/parse.c"
break;
case 174:
-#line 537 "parse.y"
-{yygotominor.yy242 = sqliteExpr(TK_ID, 0, 0, &yymsp[0].minor.yy0);}
-#line 2942 "parse.c"
- break;
case 175:
-#line 538 "parse.y"
+#line 537 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_ID, 0, 0, &yymsp[0].minor.yy0);}
-#line 2947 "parse.c"
+#line 2473 "ext/sqlite/libsqlite/src/parse.c"
break;
case 176:
-#line 539 "parse.y"
+#line 539 "ext/sqlite/libsqlite/src/parse.y"
{
Expr *temp1 = sqliteExpr(TK_ID, 0, 0, &yymsp[-2].minor.yy298);
Expr *temp2 = sqliteExpr(TK_ID, 0, 0, &yymsp[0].minor.yy298);
yygotominor.yy242 = sqliteExpr(TK_DOT, temp1, temp2, 0);
}
-#line 2956 "parse.c"
- /* No destructor defined for DOT */
+#line 2482 "ext/sqlite/libsqlite/src/parse.c"
break;
case 177:
-#line 544 "parse.y"
+#line 544 "ext/sqlite/libsqlite/src/parse.y"
{
Expr *temp1 = sqliteExpr(TK_ID, 0, 0, &yymsp[-4].minor.yy298);
Expr *temp2 = sqliteExpr(TK_ID, 0, 0, &yymsp[-2].minor.yy298);
@@ -2965,126 +2488,109 @@ static void yy_reduce(
Expr *temp4 = sqliteExpr(TK_DOT, temp2, temp3, 0);
yygotominor.yy242 = sqliteExpr(TK_DOT, temp1, temp4, 0);
}
-#line 2968 "parse.c"
- /* No destructor defined for DOT */
- /* No destructor defined for DOT */
+#line 2493 "ext/sqlite/libsqlite/src/parse.c"
break;
case 178:
-#line 551 "parse.y"
+#line 551 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_INTEGER, 0, 0, &yymsp[0].minor.yy0);}
-#line 2975 "parse.c"
+#line 2498 "ext/sqlite/libsqlite/src/parse.c"
break;
case 179:
-#line 552 "parse.y"
+#line 552 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_FLOAT, 0, 0, &yymsp[0].minor.yy0);}
-#line 2980 "parse.c"
+#line 2503 "ext/sqlite/libsqlite/src/parse.c"
break;
case 180:
-#line 553 "parse.y"
+#line 553 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_STRING, 0, 0, &yymsp[0].minor.yy0);}
-#line 2985 "parse.c"
+#line 2508 "ext/sqlite/libsqlite/src/parse.c"
break;
case 181:
-#line 554 "parse.y"
+#line 554 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_VARIABLE, 0, 0, &yymsp[0].minor.yy0);
if( yygotominor.yy242 ) yygotominor.yy242->iTable = ++pParse->nVar;
}
-#line 2993 "parse.c"
+#line 2516 "ext/sqlite/libsqlite/src/parse.c"
break;
case 182:
-#line 558 "parse.y"
+#line 558 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExprFunction(yymsp[-1].minor.yy322, &yymsp[-3].minor.yy0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0);
}
-#line 3001 "parse.c"
- /* No destructor defined for LP */
+#line 2524 "ext/sqlite/libsqlite/src/parse.c"
break;
case 183:
-#line 562 "parse.y"
+#line 562 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExprFunction(0, &yymsp[-3].minor.yy0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-3].minor.yy0,&yymsp[0].minor.yy0);
}
-#line 3010 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for STAR */
+#line 2532 "ext/sqlite/libsqlite/src/parse.c"
break;
case 184:
-#line 566 "parse.y"
+#line 566 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_AND, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3017 "parse.c"
- /* No destructor defined for AND */
+#line 2537 "ext/sqlite/libsqlite/src/parse.c"
break;
case 185:
-#line 567 "parse.y"
+#line 567 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_OR, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3023 "parse.c"
- /* No destructor defined for OR */
+#line 2542 "ext/sqlite/libsqlite/src/parse.c"
break;
case 186:
-#line 568 "parse.y"
+#line 568 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_LT, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3029 "parse.c"
- /* No destructor defined for LT */
+#line 2547 "ext/sqlite/libsqlite/src/parse.c"
break;
case 187:
-#line 569 "parse.y"
+#line 569 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_GT, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3035 "parse.c"
- /* No destructor defined for GT */
+#line 2552 "ext/sqlite/libsqlite/src/parse.c"
break;
case 188:
-#line 570 "parse.y"
+#line 570 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_LE, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3041 "parse.c"
- /* No destructor defined for LE */
+#line 2557 "ext/sqlite/libsqlite/src/parse.c"
break;
case 189:
-#line 571 "parse.y"
+#line 571 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_GE, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3047 "parse.c"
- /* No destructor defined for GE */
+#line 2562 "ext/sqlite/libsqlite/src/parse.c"
break;
case 190:
-#line 572 "parse.y"
+#line 572 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_NE, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3053 "parse.c"
- /* No destructor defined for NE */
+#line 2567 "ext/sqlite/libsqlite/src/parse.c"
break;
case 191:
-#line 573 "parse.y"
+#line 573 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_EQ, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3059 "parse.c"
- /* No destructor defined for EQ */
+#line 2572 "ext/sqlite/libsqlite/src/parse.c"
break;
case 192:
-#line 574 "parse.y"
+#line 574 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_BITAND, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3065 "parse.c"
- /* No destructor defined for BITAND */
+#line 2577 "ext/sqlite/libsqlite/src/parse.c"
break;
case 193:
-#line 575 "parse.y"
+#line 575 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_BITOR, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3071 "parse.c"
- /* No destructor defined for BITOR */
+#line 2582 "ext/sqlite/libsqlite/src/parse.c"
break;
case 194:
-#line 576 "parse.y"
+#line 576 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_LSHIFT, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3077 "parse.c"
- /* No destructor defined for LSHIFT */
+#line 2587 "ext/sqlite/libsqlite/src/parse.c"
break;
case 195:
-#line 577 "parse.y"
+#line 577 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_RSHIFT, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3083 "parse.c"
- /* No destructor defined for RSHIFT */
+#line 2592 "ext/sqlite/libsqlite/src/parse.c"
break;
case 196:
-#line 578 "parse.y"
+#line 578 "ext/sqlite/libsqlite/src/parse.y"
{
ExprList *pList = sqliteExprListAppend(0, yymsp[0].minor.yy242, 0);
pList = sqliteExprListAppend(pList, yymsp[-2].minor.yy242, 0);
@@ -3092,10 +2598,10 @@ static void yy_reduce(
if( yygotominor.yy242 ) yygotominor.yy242->op = yymsp[-1].minor.yy372;
sqliteExprSpan(yygotominor.yy242, &yymsp[-2].minor.yy242->span, &yymsp[0].minor.yy242->span);
}
-#line 3095 "parse.c"
+#line 2603 "ext/sqlite/libsqlite/src/parse.c"
break;
case 197:
-#line 585 "parse.y"
+#line 585 "ext/sqlite/libsqlite/src/parse.y"
{
ExprList *pList = sqliteExprListAppend(0, yymsp[0].minor.yy242, 0);
pList = sqliteExprListAppend(pList, yymsp[-3].minor.yy242, 0);
@@ -3104,144 +2610,131 @@ static void yy_reduce(
yygotominor.yy242 = sqliteExpr(TK_NOT, yygotominor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-3].minor.yy242->span,&yymsp[0].minor.yy242->span);
}
-#line 3107 "parse.c"
- /* No destructor defined for NOT */
+#line 2615 "ext/sqlite/libsqlite/src/parse.c"
break;
case 198:
-#line 594 "parse.y"
+#line 594 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_LIKE;}
-#line 3113 "parse.c"
- /* No destructor defined for LIKE */
+#line 2620 "ext/sqlite/libsqlite/src/parse.c"
break;
case 199:
-#line 595 "parse.y"
+#line 595 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy372 = TK_GLOB;}
-#line 3119 "parse.c"
- /* No destructor defined for GLOB */
+#line 2625 "ext/sqlite/libsqlite/src/parse.c"
break;
case 200:
-#line 596 "parse.y"
+#line 596 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_PLUS, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3125 "parse.c"
- /* No destructor defined for PLUS */
+#line 2630 "ext/sqlite/libsqlite/src/parse.c"
break;
case 201:
-#line 597 "parse.y"
+#line 597 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_MINUS, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3131 "parse.c"
- /* No destructor defined for MINUS */
+#line 2635 "ext/sqlite/libsqlite/src/parse.c"
break;
case 202:
-#line 598 "parse.y"
+#line 598 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_STAR, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3137 "parse.c"
- /* No destructor defined for STAR */
+#line 2640 "ext/sqlite/libsqlite/src/parse.c"
break;
case 203:
-#line 599 "parse.y"
+#line 599 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_SLASH, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3143 "parse.c"
- /* No destructor defined for SLASH */
+#line 2645 "ext/sqlite/libsqlite/src/parse.c"
break;
case 204:
-#line 600 "parse.y"
+#line 600 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_REM, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3149 "parse.c"
- /* No destructor defined for REM */
+#line 2650 "ext/sqlite/libsqlite/src/parse.c"
break;
case 205:
-#line 601 "parse.y"
+#line 601 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy242 = sqliteExpr(TK_CONCAT, yymsp[-2].minor.yy242, yymsp[0].minor.yy242, 0);}
-#line 3155 "parse.c"
- /* No destructor defined for CONCAT */
+#line 2655 "ext/sqlite/libsqlite/src/parse.c"
break;
case 206:
-#line 602 "parse.y"
+#line 602 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_ISNULL, yymsp[-1].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3164 "parse.c"
+#line 2663 "ext/sqlite/libsqlite/src/parse.c"
break;
case 207:
-#line 606 "parse.y"
+#line 606 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_ISNULL, yymsp[-2].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-2].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3172 "parse.c"
- /* No destructor defined for IS */
+#line 2671 "ext/sqlite/libsqlite/src/parse.c"
break;
case 208:
-#line 610 "parse.y"
+#line 610 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_NOTNULL, yymsp[-1].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3181 "parse.c"
+#line 2679 "ext/sqlite/libsqlite/src/parse.c"
break;
case 209:
-#line 614 "parse.y"
+#line 614 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_NOTNULL, yymsp[-2].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-2].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3189 "parse.c"
- /* No destructor defined for NOT */
+#line 2687 "ext/sqlite/libsqlite/src/parse.c"
break;
case 210:
-#line 618 "parse.y"
+#line 618 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_NOTNULL, yymsp[-3].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-3].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3198 "parse.c"
- /* No destructor defined for IS */
- /* No destructor defined for NOT */
+#line 2695 "ext/sqlite/libsqlite/src/parse.c"
break;
case 211:
-#line 622 "parse.y"
+#line 622 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_NOT, yymsp[0].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy242->span);
}
-#line 3208 "parse.c"
+#line 2703 "ext/sqlite/libsqlite/src/parse.c"
break;
case 212:
-#line 626 "parse.y"
+#line 626 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_BITNOT, yymsp[0].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy242->span);
}
-#line 3216 "parse.c"
+#line 2711 "ext/sqlite/libsqlite/src/parse.c"
break;
case 213:
-#line 630 "parse.y"
+#line 630 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_UMINUS, yymsp[0].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy242->span);
}
-#line 3224 "parse.c"
+#line 2719 "ext/sqlite/libsqlite/src/parse.c"
break;
case 214:
-#line 634 "parse.y"
+#line 634 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_UPLUS, yymsp[0].minor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-1].minor.yy0,&yymsp[0].minor.yy242->span);
}
-#line 3232 "parse.c"
+#line 2727 "ext/sqlite/libsqlite/src/parse.c"
break;
case 215:
-#line 638 "parse.y"
+#line 638 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_SELECT, 0, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pSelect = yymsp[-1].minor.yy179;
sqliteExprSpan(yygotominor.yy242,&yymsp[-2].minor.yy0,&yymsp[0].minor.yy0);
}
-#line 3241 "parse.c"
+#line 2736 "ext/sqlite/libsqlite/src/parse.c"
break;
case 216:
-#line 643 "parse.y"
+#line 643 "ext/sqlite/libsqlite/src/parse.y"
{
ExprList *pList = sqliteExprListAppend(0, yymsp[-2].minor.yy242, 0);
pList = sqliteExprListAppend(pList, yymsp[0].minor.yy242, 0);
@@ -3249,12 +2742,10 @@ static void yy_reduce(
if( yygotominor.yy242 ) yygotominor.yy242->pList = pList;
sqliteExprSpan(yygotominor.yy242,&yymsp[-4].minor.yy242->span,&yymsp[0].minor.yy242->span);
}
-#line 3252 "parse.c"
- /* No destructor defined for BETWEEN */
- /* No destructor defined for AND */
+#line 2747 "ext/sqlite/libsqlite/src/parse.c"
break;
case 217:
-#line 650 "parse.y"
+#line 650 "ext/sqlite/libsqlite/src/parse.y"
{
ExprList *pList = sqliteExprListAppend(0, yymsp[-2].minor.yy242, 0);
pList = sqliteExprListAppend(pList, yymsp[0].minor.yy242, 0);
@@ -3263,72 +2754,58 @@ static void yy_reduce(
yygotominor.yy242 = sqliteExpr(TK_NOT, yygotominor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-5].minor.yy242->span,&yymsp[0].minor.yy242->span);
}
-#line 3266 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for BETWEEN */
- /* No destructor defined for AND */
+#line 2759 "ext/sqlite/libsqlite/src/parse.c"
break;
case 218:
-#line 658 "parse.y"
+#line 658 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-4].minor.yy242, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pList = yymsp[-1].minor.yy322;
sqliteExprSpan(yygotominor.yy242,&yymsp[-4].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3278 "parse.c"
- /* No destructor defined for IN */
- /* No destructor defined for LP */
+#line 2768 "ext/sqlite/libsqlite/src/parse.c"
break;
case 219:
-#line 663 "parse.y"
+#line 663 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-4].minor.yy242, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pSelect = yymsp[-1].minor.yy179;
sqliteExprSpan(yygotominor.yy242,&yymsp[-4].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3289 "parse.c"
- /* No destructor defined for IN */
- /* No destructor defined for LP */
+#line 2777 "ext/sqlite/libsqlite/src/parse.c"
break;
case 220:
-#line 668 "parse.y"
+#line 668 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-5].minor.yy242, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pList = yymsp[-1].minor.yy322;
yygotominor.yy242 = sqliteExpr(TK_NOT, yygotominor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-5].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3301 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for IN */
- /* No destructor defined for LP */
+#line 2787 "ext/sqlite/libsqlite/src/parse.c"
break;
case 221:
-#line 674 "parse.y"
+#line 674 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-5].minor.yy242, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pSelect = yymsp[-1].minor.yy179;
yygotominor.yy242 = sqliteExpr(TK_NOT, yygotominor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-5].minor.yy242->span,&yymsp[0].minor.yy0);
}
-#line 3314 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for IN */
- /* No destructor defined for LP */
+#line 2797 "ext/sqlite/libsqlite/src/parse.c"
break;
case 222:
-#line 680 "parse.y"
+#line 680 "ext/sqlite/libsqlite/src/parse.y"
{
SrcList *pSrc = sqliteSrcListAppend(0, &yymsp[-1].minor.yy298, &yymsp[0].minor.yy298);
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-3].minor.yy242, 0, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pSelect = sqliteSelectNew(0,pSrc,0,0,0,0,0,-1,0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-3].minor.yy242->span,yymsp[0].minor.yy298.z?&yymsp[0].minor.yy298:&yymsp[-1].minor.yy298);
}
-#line 3327 "parse.c"
- /* No destructor defined for IN */
+#line 2807 "ext/sqlite/libsqlite/src/parse.c"
break;
case 223:
-#line 686 "parse.y"
+#line 686 "ext/sqlite/libsqlite/src/parse.y"
{
SrcList *pSrc = sqliteSrcListAppend(0, &yymsp[-1].minor.yy298, &yymsp[0].minor.yy298);
yygotominor.yy242 = sqliteExpr(TK_IN, yymsp[-4].minor.yy242, 0, 0);
@@ -3336,489 +2813,298 @@ static void yy_reduce(
yygotominor.yy242 = sqliteExpr(TK_NOT, yygotominor.yy242, 0, 0);
sqliteExprSpan(yygotominor.yy242,&yymsp[-4].minor.yy242->span,yymsp[0].minor.yy298.z?&yymsp[0].minor.yy298:&yymsp[-1].minor.yy298);
}
-#line 3339 "parse.c"
- /* No destructor defined for NOT */
- /* No destructor defined for IN */
+#line 2818 "ext/sqlite/libsqlite/src/parse.c"
break;
case 224:
-#line 696 "parse.y"
+#line 696 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_CASE, yymsp[-3].minor.yy242, yymsp[-1].minor.yy242, 0);
if( yygotominor.yy242 ) yygotominor.yy242->pList = yymsp[-2].minor.yy322;
sqliteExprSpan(yygotominor.yy242, &yymsp[-4].minor.yy0, &yymsp[0].minor.yy0);
}
-#line 3350 "parse.c"
+#line 2827 "ext/sqlite/libsqlite/src/parse.c"
break;
case 225:
-#line 703 "parse.y"
+#line 703 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(yymsp[-4].minor.yy322, yymsp[-2].minor.yy242, 0);
yygotominor.yy322 = sqliteExprListAppend(yygotominor.yy322, yymsp[0].minor.yy242, 0);
}
-#line 3358 "parse.c"
- /* No destructor defined for WHEN */
- /* No destructor defined for THEN */
+#line 2835 "ext/sqlite/libsqlite/src/parse.c"
break;
case 226:
-#line 707 "parse.y"
+#line 707 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy322 = sqliteExprListAppend(0, yymsp[-2].minor.yy242, 0);
yygotominor.yy322 = sqliteExprListAppend(yygotominor.yy322, yymsp[0].minor.yy242, 0);
}
-#line 3368 "parse.c"
- /* No destructor defined for WHEN */
- /* No destructor defined for THEN */
- break;
- case 227:
-#line 712 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 3375 "parse.c"
- /* No destructor defined for ELSE */
- break;
- case 228:
-#line 713 "parse.y"
-{yygotominor.yy242 = 0;}
-#line 3381 "parse.c"
- break;
- case 229:
-#line 715 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 3386 "parse.c"
- break;
- case 230:
-#line 716 "parse.y"
-{yygotominor.yy242 = 0;}
-#line 3391 "parse.c"
- break;
- case 231:
-#line 724 "parse.y"
-{yygotominor.yy322 = sqliteExprListAppend(yymsp[-2].minor.yy322,yymsp[0].minor.yy242,0);}
-#line 3396 "parse.c"
- /* No destructor defined for COMMA */
- break;
- case 232:
-#line 725 "parse.y"
-{yygotominor.yy322 = sqliteExprListAppend(0,yymsp[0].minor.yy242,0);}
-#line 3402 "parse.c"
- break;
- case 233:
-#line 726 "parse.y"
-{yygotominor.yy242 = yymsp[0].minor.yy242;}
-#line 3407 "parse.c"
- break;
- case 234:
-#line 727 "parse.y"
-{yygotominor.yy242 = 0;}
-#line 3412 "parse.c"
+#line 2843 "ext/sqlite/libsqlite/src/parse.c"
break;
case 235:
-#line 732 "parse.y"
+#line 732 "ext/sqlite/libsqlite/src/parse.y"
{
SrcList *pSrc = sqliteSrcListAppend(0, &yymsp[-5].minor.yy298, &yymsp[-4].minor.yy298);
if( yymsp[-9].minor.yy372!=OE_None ) yymsp[-9].minor.yy372 = yymsp[0].minor.yy372;
if( yymsp[-9].minor.yy372==OE_Default) yymsp[-9].minor.yy372 = OE_Abort;
sqliteCreateIndex(pParse, &yymsp[-7].minor.yy298, pSrc, yymsp[-2].minor.yy320, yymsp[-9].minor.yy372, &yymsp[-10].minor.yy0, &yymsp[-1].minor.yy0);
}
-#line 3422 "parse.c"
- /* No destructor defined for INDEX */
- /* No destructor defined for ON */
- /* No destructor defined for LP */
- break;
- case 236:
-#line 740 "parse.y"
-{ yygotominor.yy372 = OE_Abort; }
-#line 3430 "parse.c"
- /* No destructor defined for UNIQUE */
+#line 2853 "ext/sqlite/libsqlite/src/parse.c"
break;
case 237:
-#line 741 "parse.y"
+#line 741 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = OE_None; }
-#line 3436 "parse.c"
- break;
- case 238:
-#line 749 "parse.y"
-{yygotominor.yy320 = 0;}
-#line 3441 "parse.c"
- break;
- case 239:
-#line 750 "parse.y"
-{yygotominor.yy320 = yymsp[-1].minor.yy320;}
-#line 3446 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for RP */
- break;
- case 240:
-#line 751 "parse.y"
-{yygotominor.yy320 = sqliteIdListAppend(yymsp[-2].minor.yy320,&yymsp[0].minor.yy298);}
-#line 3453 "parse.c"
- /* No destructor defined for COMMA */
- break;
- case 241:
-#line 752 "parse.y"
-{yygotominor.yy320 = sqliteIdListAppend(0,&yymsp[0].minor.yy298);}
-#line 3459 "parse.c"
- break;
- case 242:
-#line 753 "parse.y"
-{yygotominor.yy298 = yymsp[-1].minor.yy298;}
-#line 3464 "parse.c"
- /* No destructor defined for sortorder */
+#line 2858 "ext/sqlite/libsqlite/src/parse.c"
break;
case 243:
-#line 758 "parse.y"
+#line 758 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteDropIndex(pParse, sqliteSrcListAppend(0,&yymsp[-1].minor.yy298,&yymsp[0].minor.yy298));
}
-#line 3472 "parse.c"
- /* No destructor defined for DROP */
- /* No destructor defined for INDEX */
+#line 2865 "ext/sqlite/libsqlite/src/parse.c"
break;
case 244:
-#line 766 "parse.y"
+#line 766 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCopy(pParse,sqliteSrcListAppend(0,&yymsp[-6].minor.yy298,&yymsp[-5].minor.yy298),&yymsp[-3].minor.yy298,&yymsp[0].minor.yy0,yymsp[-7].minor.yy372);}
-#line 3479 "parse.c"
- /* No destructor defined for COPY */
- /* No destructor defined for FROM */
- /* No destructor defined for USING */
- /* No destructor defined for DELIMITERS */
+#line 2870 "ext/sqlite/libsqlite/src/parse.c"
break;
case 245:
-#line 768 "parse.y"
+#line 768 "ext/sqlite/libsqlite/src/parse.y"
{sqliteCopy(pParse,sqliteSrcListAppend(0,&yymsp[-3].minor.yy298,&yymsp[-2].minor.yy298),&yymsp[0].minor.yy298,0,yymsp[-4].minor.yy372);}
-#line 3488 "parse.c"
- /* No destructor defined for COPY */
- /* No destructor defined for FROM */
+#line 2875 "ext/sqlite/libsqlite/src/parse.c"
break;
case 246:
-#line 772 "parse.y"
+#line 772 "ext/sqlite/libsqlite/src/parse.y"
{sqliteVacuum(pParse,0);}
-#line 3495 "parse.c"
- /* No destructor defined for VACUUM */
+#line 2880 "ext/sqlite/libsqlite/src/parse.c"
break;
case 247:
-#line 773 "parse.y"
+#line 773 "ext/sqlite/libsqlite/src/parse.y"
{sqliteVacuum(pParse,&yymsp[0].minor.yy298);}
-#line 3501 "parse.c"
- /* No destructor defined for VACUUM */
+#line 2885 "ext/sqlite/libsqlite/src/parse.c"
break;
case 248:
-#line 777 "parse.y"
+ case 250:
+#line 777 "ext/sqlite/libsqlite/src/parse.y"
{sqlitePragma(pParse,&yymsp[-2].minor.yy298,&yymsp[0].minor.yy298,0);}
-#line 3507 "parse.c"
- /* No destructor defined for PRAGMA */
- /* No destructor defined for EQ */
+#line 2891 "ext/sqlite/libsqlite/src/parse.c"
break;
case 249:
-#line 778 "parse.y"
+#line 778 "ext/sqlite/libsqlite/src/parse.y"
{sqlitePragma(pParse,&yymsp[-2].minor.yy298,&yymsp[0].minor.yy0,0);}
-#line 3514 "parse.c"
- /* No destructor defined for PRAGMA */
- /* No destructor defined for EQ */
- break;
- case 250:
-#line 779 "parse.y"
-{sqlitePragma(pParse,&yymsp[-2].minor.yy298,&yymsp[0].minor.yy298,0);}
-#line 3521 "parse.c"
- /* No destructor defined for PRAGMA */
- /* No destructor defined for EQ */
+#line 2896 "ext/sqlite/libsqlite/src/parse.c"
break;
case 251:
-#line 780 "parse.y"
+#line 780 "ext/sqlite/libsqlite/src/parse.y"
{sqlitePragma(pParse,&yymsp[-2].minor.yy298,&yymsp[0].minor.yy298,1);}
-#line 3528 "parse.c"
- /* No destructor defined for PRAGMA */
- /* No destructor defined for EQ */
+#line 2901 "ext/sqlite/libsqlite/src/parse.c"
break;
case 252:
-#line 781 "parse.y"
+#line 781 "ext/sqlite/libsqlite/src/parse.y"
{sqlitePragma(pParse,&yymsp[-3].minor.yy298,&yymsp[-1].minor.yy298,0);}
-#line 3535 "parse.c"
- /* No destructor defined for PRAGMA */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 2906 "ext/sqlite/libsqlite/src/parse.c"
break;
case 253:
-#line 782 "parse.y"
+#line 782 "ext/sqlite/libsqlite/src/parse.y"
{sqlitePragma(pParse,&yymsp[0].minor.yy298,&yymsp[0].minor.yy298,0);}
-#line 3543 "parse.c"
- /* No destructor defined for PRAGMA */
- break;
- case 254:
-#line 783 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy298;}
-#line 3549 "parse.c"
- /* No destructor defined for plus_opt */
- break;
- case 255:
-#line 784 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy298;}
-#line 3555 "parse.c"
- /* No destructor defined for MINUS */
- break;
- case 256:
-#line 785 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 3561 "parse.c"
- break;
- case 257:
-#line 786 "parse.y"
-{yygotominor.yy298 = yymsp[0].minor.yy0;}
-#line 3566 "parse.c"
- break;
- case 258:
- /* No destructor defined for PLUS */
- break;
- case 259:
+#line 2911 "ext/sqlite/libsqlite/src/parse.c"
break;
case 260:
-#line 792 "parse.y"
+#line 792 "ext/sqlite/libsqlite/src/parse.y"
{
Token all;
all.z = yymsp[-4].minor.yy0.z;
all.n = (yymsp[0].minor.yy0.z - yymsp[-4].minor.yy0.z) + yymsp[0].minor.yy0.n;
sqliteFinishTrigger(pParse, yymsp[-1].minor.yy19, &all);
}
-#line 3581 "parse.c"
- /* No destructor defined for trigger_decl */
- /* No destructor defined for BEGIN */
+#line 2921 "ext/sqlite/libsqlite/src/parse.c"
break;
case 261:
-#line 800 "parse.y"
+#line 800 "ext/sqlite/libsqlite/src/parse.y"
{
SrcList *pTab = sqliteSrcListAppend(0, &yymsp[-3].minor.yy298, &yymsp[-2].minor.yy298);
sqliteBeginTrigger(pParse, &yymsp[-7].minor.yy298, yymsp[-6].minor.yy372, yymsp[-5].minor.yy290.a, yymsp[-5].minor.yy290.b, pTab, yymsp[-1].minor.yy372, yymsp[0].minor.yy182, yymsp[-9].minor.yy372);
}
-#line 3591 "parse.c"
- /* No destructor defined for TRIGGER */
- /* No destructor defined for ON */
+#line 2929 "ext/sqlite/libsqlite/src/parse.c"
break;
case 262:
-#line 806 "parse.y"
+ case 265:
+#line 806 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = TK_BEFORE; }
-#line 3598 "parse.c"
- /* No destructor defined for BEFORE */
+#line 2935 "ext/sqlite/libsqlite/src/parse.c"
break;
case 263:
-#line 807 "parse.y"
+#line 807 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = TK_AFTER; }
-#line 3604 "parse.c"
- /* No destructor defined for AFTER */
+#line 2940 "ext/sqlite/libsqlite/src/parse.c"
break;
case 264:
-#line 808 "parse.y"
+#line 808 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = TK_INSTEAD;}
-#line 3610 "parse.c"
- /* No destructor defined for INSTEAD */
- /* No destructor defined for OF */
- break;
- case 265:
-#line 809 "parse.y"
-{ yygotominor.yy372 = TK_BEFORE; }
-#line 3617 "parse.c"
+#line 2945 "ext/sqlite/libsqlite/src/parse.c"
break;
case 266:
-#line 813 "parse.y"
+#line 813 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy290.a = TK_DELETE; yygotominor.yy290.b = 0; }
-#line 3622 "parse.c"
- /* No destructor defined for DELETE */
+#line 2950 "ext/sqlite/libsqlite/src/parse.c"
break;
case 267:
-#line 814 "parse.y"
+#line 814 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy290.a = TK_INSERT; yygotominor.yy290.b = 0; }
-#line 3628 "parse.c"
- /* No destructor defined for INSERT */
+#line 2955 "ext/sqlite/libsqlite/src/parse.c"
break;
case 268:
-#line 815 "parse.y"
+#line 815 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy290.a = TK_UPDATE; yygotominor.yy290.b = 0;}
-#line 3634 "parse.c"
- /* No destructor defined for UPDATE */
+#line 2960 "ext/sqlite/libsqlite/src/parse.c"
break;
case 269:
-#line 816 "parse.y"
+#line 816 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy290.a = TK_UPDATE; yygotominor.yy290.b = yymsp[0].minor.yy320; }
-#line 3640 "parse.c"
- /* No destructor defined for UPDATE */
- /* No destructor defined for OF */
+#line 2965 "ext/sqlite/libsqlite/src/parse.c"
break;
case 270:
-#line 819 "parse.y"
-{ yygotominor.yy372 = TK_ROW; }
-#line 3647 "parse.c"
- break;
case 271:
-#line 820 "parse.y"
+#line 819 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = TK_ROW; }
-#line 3652 "parse.c"
- /* No destructor defined for FOR */
- /* No destructor defined for EACH */
- /* No destructor defined for ROW */
+#line 2971 "ext/sqlite/libsqlite/src/parse.c"
break;
case 272:
-#line 821 "parse.y"
+#line 821 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy372 = TK_STATEMENT; }
-#line 3660 "parse.c"
- /* No destructor defined for FOR */
- /* No destructor defined for EACH */
- /* No destructor defined for STATEMENT */
+#line 2976 "ext/sqlite/libsqlite/src/parse.c"
break;
case 273:
-#line 824 "parse.y"
+#line 824 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy182 = 0; }
-#line 3668 "parse.c"
+#line 2981 "ext/sqlite/libsqlite/src/parse.c"
break;
case 274:
-#line 825 "parse.y"
+#line 825 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy182 = yymsp[0].minor.yy242; }
-#line 3673 "parse.c"
- /* No destructor defined for WHEN */
+#line 2986 "ext/sqlite/libsqlite/src/parse.c"
break;
case 275:
-#line 829 "parse.y"
+#line 829 "ext/sqlite/libsqlite/src/parse.y"
{
yymsp[-2].minor.yy19->pNext = yymsp[0].minor.yy19;
yygotominor.yy19 = yymsp[-2].minor.yy19;
}
-#line 3682 "parse.c"
- /* No destructor defined for SEMI */
+#line 2994 "ext/sqlite/libsqlite/src/parse.c"
break;
case 276:
-#line 833 "parse.y"
+#line 833 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy19 = 0; }
-#line 3688 "parse.c"
+#line 2999 "ext/sqlite/libsqlite/src/parse.c"
break;
case 277:
-#line 839 "parse.y"
+#line 839 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy19 = sqliteTriggerUpdateStep(&yymsp[-3].minor.yy298, yymsp[-1].minor.yy322, yymsp[0].minor.yy242, yymsp[-4].minor.yy372); }
-#line 3693 "parse.c"
- /* No destructor defined for UPDATE */
- /* No destructor defined for SET */
+#line 3004 "ext/sqlite/libsqlite/src/parse.c"
break;
case 278:
-#line 844 "parse.y"
+#line 844 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy19 = sqliteTriggerInsertStep(&yymsp[-5].minor.yy298, yymsp[-4].minor.yy320, yymsp[-1].minor.yy322, 0, yymsp[-7].minor.yy372);}
-#line 3700 "parse.c"
- /* No destructor defined for INTO */
- /* No destructor defined for VALUES */
- /* No destructor defined for LP */
- /* No destructor defined for RP */
+#line 3009 "ext/sqlite/libsqlite/src/parse.c"
break;
case 279:
-#line 847 "parse.y"
+#line 847 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy19 = sqliteTriggerInsertStep(&yymsp[-2].minor.yy298, yymsp[-1].minor.yy320, 0, yymsp[0].minor.yy179, yymsp[-4].minor.yy372);}
-#line 3709 "parse.c"
- /* No destructor defined for INTO */
+#line 3014 "ext/sqlite/libsqlite/src/parse.c"
break;
case 280:
-#line 851 "parse.y"
+#line 851 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy19 = sqliteTriggerDeleteStep(&yymsp[-1].minor.yy298, yymsp[0].minor.yy242);}
-#line 3715 "parse.c"
- /* No destructor defined for DELETE */
- /* No destructor defined for FROM */
+#line 3019 "ext/sqlite/libsqlite/src/parse.c"
break;
case 281:
-#line 854 "parse.y"
+#line 854 "ext/sqlite/libsqlite/src/parse.y"
{yygotominor.yy19 = sqliteTriggerSelectStep(yymsp[0].minor.yy179); }
-#line 3722 "parse.c"
+#line 3024 "ext/sqlite/libsqlite/src/parse.c"
break;
case 282:
-#line 857 "parse.y"
+#line 857 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_RAISE, 0, 0, 0);
yygotominor.yy242->iColumn = OE_Ignore;
sqliteExprSpan(yygotominor.yy242, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0);
}
-#line 3731 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for IGNORE */
+#line 3033 "ext/sqlite/libsqlite/src/parse.c"
break;
case 283:
-#line 862 "parse.y"
+#line 862 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_RAISE, 0, 0, &yymsp[-1].minor.yy298);
yygotominor.yy242->iColumn = OE_Rollback;
sqliteExprSpan(yygotominor.yy242, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0);
}
-#line 3742 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for ROLLBACK */
- /* No destructor defined for COMMA */
+#line 3042 "ext/sqlite/libsqlite/src/parse.c"
break;
case 284:
-#line 867 "parse.y"
+#line 867 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_RAISE, 0, 0, &yymsp[-1].minor.yy298);
yygotominor.yy242->iColumn = OE_Abort;
sqliteExprSpan(yygotominor.yy242, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0);
}
-#line 3754 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for ABORT */
- /* No destructor defined for COMMA */
+#line 3051 "ext/sqlite/libsqlite/src/parse.c"
break;
case 285:
-#line 872 "parse.y"
+#line 872 "ext/sqlite/libsqlite/src/parse.y"
{
yygotominor.yy242 = sqliteExpr(TK_RAISE, 0, 0, &yymsp[-1].minor.yy298);
yygotominor.yy242->iColumn = OE_Fail;
sqliteExprSpan(yygotominor.yy242, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0);
}
-#line 3766 "parse.c"
- /* No destructor defined for LP */
- /* No destructor defined for FAIL */
- /* No destructor defined for COMMA */
+#line 3060 "ext/sqlite/libsqlite/src/parse.c"
break;
case 286:
-#line 879 "parse.y"
+#line 879 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteDropTrigger(pParse,sqliteSrcListAppend(0,&yymsp[-1].minor.yy298,&yymsp[0].minor.yy298));
}
-#line 3776 "parse.c"
- /* No destructor defined for DROP */
- /* No destructor defined for TRIGGER */
+#line 3067 "ext/sqlite/libsqlite/src/parse.c"
break;
case 287:
-#line 884 "parse.y"
+#line 884 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteAttach(pParse, &yymsp[-3].minor.yy298, &yymsp[-1].minor.yy298, &yymsp[0].minor.yy298);
}
-#line 3785 "parse.c"
- /* No destructor defined for ATTACH */
- /* No destructor defined for database_kw_opt */
- /* No destructor defined for AS */
- break;
- case 288:
-#line 888 "parse.y"
-{ yygotominor.yy298 = yymsp[0].minor.yy298; }
-#line 3793 "parse.c"
- /* No destructor defined for USING */
+#line 3074 "ext/sqlite/libsqlite/src/parse.c"
break;
case 289:
-#line 889 "parse.y"
+#line 889 "ext/sqlite/libsqlite/src/parse.y"
{ yygotominor.yy298.z = 0; yygotominor.yy298.n = 0; }
-#line 3799 "parse.c"
- break;
- case 290:
- /* No destructor defined for DATABASE */
- break;
- case 291:
+#line 3079 "ext/sqlite/libsqlite/src/parse.c"
break;
case 292:
-#line 895 "parse.y"
+#line 895 "ext/sqlite/libsqlite/src/parse.y"
{
sqliteDetach(pParse, &yymsp[0].minor.yy298);
}
-#line 3811 "parse.c"
- /* No destructor defined for DETACH */
- /* No destructor defined for database_kw_opt */
+#line 3086 "ext/sqlite/libsqlite/src/parse.c"
break;
};
yygoto = yyRuleInfo[yyruleno].lhs;
yysize = yyRuleInfo[yyruleno].nrhs;
yypParser->yyidx -= yysize;
- yyact = yy_find_reduce_action(yypParser,yygoto);
+ yyact = yy_find_reduce_action(yymsp[-yysize].stateno,yygoto);
if( yyact < YYNSTATE ){
- yy_shift(yypParser,yyact,yygoto,&yygotominor);
+#ifdef NDEBUG
+ /* If we are not debugging and the reduce action popped at least
+ ** one element off the stack, then we can push the new element back
+ ** onto the stack here, and skip the stack overflow test in yy_shift().
+ ** That gives a significant speed improvement. */
+ if( yysize ){
+ yypParser->yyidx++;
+ yymsp -= yysize-1;
+ yymsp->stateno = yyact;
+ yymsp->major = yygoto;
+ yymsp->minor = yygotominor;
+ }else
+#endif
+ {
+ yy_shift(yypParser,yyact,yygoto,&yygotominor);
+ }
}else if( yyact == YYNSTATE + YYNRULE + 1 ){
yy_accept(yypParser);
}
@@ -3852,7 +3138,7 @@ static void yy_syntax_error(
){
sqliteParserARG_FETCH;
#define TOKEN (yyminor.yy0)
-#line 23 "parse.y"
+#line 23 "ext/sqlite/libsqlite/src/parse.y"
if( pParse->zErrMsg==0 ){
if( TOKEN.z[0] ){
@@ -3861,8 +3147,7 @@ static void yy_syntax_error(
sqliteErrorMsg(pParse, "incomplete SQL statement");
}
}
-
-#line 3865 "parse.c"
+#line 3153 "ext/sqlite/libsqlite/src/parse.c"
sqliteParserARG_STORE; /* Suppress warning about unused %extra_argument variable */
}
@@ -3918,7 +3203,7 @@ void sqliteParser(
/* (re)initialize the parser, if necessary */
yypParser = (yyParser*)yyp;
if( yypParser->yyidx<0 ){
- if( yymajor==0 ) return;
+ /* if( yymajor==0 ) return; // not sure why this was here... */
yypParser->yyidx = 0;
yypParser->yyerrcnt = -1;
yypParser->yystack[0].stateno = 0;