diff options
author | drh <drh@noemail.net> | 2012-01-28 19:44:22 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2012-01-28 19:44:22 +0000 |
commit | 8395b7b6cbe5db379b25c000b2bcdbc0e2f1cbaf (patch) | |
tree | 19387ca7c0b1947db7a51dbc39b9f76f3f600459 /src | |
parent | b421b894e0889fd0e573c5c541d7643c30ba5290 (diff) | |
download | sqlite-8395b7b6cbe5db379b25c000b2bcdbc0e2f1cbaf.tar.gz sqlite-8395b7b6cbe5db379b25c000b2bcdbc0e2f1cbaf.zip |
Remove a couple of unnecessary nonterminals from the grammar.
FossilOrigin-Name: 2b2a7d8d736d1e72f847f443b9957e41da6149c9
Diffstat (limited to 'src')
-rw-r--r-- | src/parse.y | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/parse.y b/src/parse.y index 3bdf3f008..66d5cb695 100644 --- a/src/parse.y +++ b/src/parse.y @@ -581,20 +581,17 @@ using_opt(U) ::= . {U = 0;} %destructor orderby_opt {sqlite3ExprListDelete(pParse->db, $$);} %type sortlist {ExprList*} %destructor sortlist {sqlite3ExprListDelete(pParse->db, $$);} -%type sortitem {Expr*} -%destructor sortitem {sqlite3ExprDelete(pParse->db, $$);} orderby_opt(A) ::= . {A = 0;} orderby_opt(A) ::= ORDER BY sortlist(X). {A = X;} -sortlist(A) ::= sortlist(X) COMMA sortitem(Y) sortorder(Z). { - A = sqlite3ExprListAppend(pParse,X,Y); +sortlist(A) ::= sortlist(X) COMMA expr(Y) sortorder(Z). { + A = sqlite3ExprListAppend(pParse,X,Y.pExpr); if( A ) A->a[A->nExpr-1].sortOrder = (u8)Z; } -sortlist(A) ::= sortitem(Y) sortorder(Z). { - A = sqlite3ExprListAppend(pParse,0,Y); +sortlist(A) ::= expr(Y) sortorder(Z). { + A = sqlite3ExprListAppend(pParse,0,Y.pExpr); if( A && ALWAYS(A->a) ) A->a[0].sortOrder = (u8)Z; } -sortitem(A) ::= expr(X). {A = X.pExpr;} %type sortorder {int} @@ -1197,11 +1194,10 @@ nmnum(A) ::= ON(X). {A = X;} nmnum(A) ::= DELETE(X). {A = X;} nmnum(A) ::= DEFAULT(X). {A = X;} %endif SQLITE_OMIT_PRAGMA -plus_num(A) ::= plus_opt number(X). {A = X;} +plus_num(A) ::= PLUS number(X). {A = X;} +plus_num(A) ::= number(X). {A = X;} minus_num(A) ::= MINUS number(X). {A = X;} number(A) ::= INTEGER|FLOAT(X). {A = X;} -plus_opt ::= PLUS. -plus_opt ::= . //////////////////////////// The CREATE TRIGGER command ///////////////////// |