/* CCJSqlParser.java */
/* Generated By:JavaCC: Do not edit this line. CCJSqlParser.java */
/* ================================================================
* JSQLParser : java based sql parser
* ================================================================
*
* Project Info: http://jsqlparser.sourceforge.net
* Project Lead: Leonardo Francalanci (leoonardoo@yahoo.it);
*
* (C) Copyright 2004, by Leonardo Francalanci
*
* This library is free software; you can redistribute it and/or modify it under the terms
* of the GNU Lesser General Public License as published by the Free Software Foundation;
* either version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License along with this
* library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
* Boston, MA 02111-1307, USA.
*/
package net.sf.jsqlparser.parser;
import java.util.ArrayList;
import java.util.List;
import net.sf.jsqlparser.expression.BinaryExpression;
import net.sf.jsqlparser.expression.DoubleValue;
import net.sf.jsqlparser.expression.Expression;
import net.sf.jsqlparser.expression.Function;
import net.sf.jsqlparser.expression.InverseExpression;
import net.sf.jsqlparser.expression.JdbcParameter;
import net.sf.jsqlparser.expression.NamedParameter;
import net.sf.jsqlparser.expression.LongValue;
import net.sf.jsqlparser.expression.DateValue;
import net.sf.jsqlparser.expression.TimeValue;
import net.sf.jsqlparser.expression.TimestampValue;
import net.sf.jsqlparser.expression.NullValue;
import net.sf.jsqlparser.expression.Parenthesis;
import net.sf.jsqlparser.expression.StringValue;
import net.sf.jsqlparser.expression.CaseExpression;
import net.sf.jsqlparser.expression.WhenClause;
import net.sf.jsqlparser.expression.AnyComparisonExpression;
import net.sf.jsqlparser.expression.AllComparisonExpression;
import net.sf.jsqlparser.expression.operators.arithmetic.Addition;
import net.sf.jsqlparser.expression.operators.arithmetic.BitwiseAnd;
import net.sf.jsqlparser.expression.operators.arithmetic.BitwiseOr;
import net.sf.jsqlparser.expression.operators.arithmetic.BitwiseXor;
import net.sf.jsqlparser.expression.operators.arithmetic.Concat;
import net.sf.jsqlparser.expression.operators.arithmetic.Division;
import net.sf.jsqlparser.expression.operators.arithmetic.Multiplication;
import net.sf.jsqlparser.expression.operators.arithmetic.Subtraction;
import net.sf.jsqlparser.expression.operators.conditional.AndExpression;
import net.sf.jsqlparser.expression.operators.conditional.OrExpression;
import net.sf.jsqlparser.expression.operators.relational.Between;
import net.sf.jsqlparser.expression.operators.relational.EqualsTo;
import net.sf.jsqlparser.expression.operators.relational.ExpressionList;
import net.sf.jsqlparser.expression.operators.relational.GreaterThan;
import net.sf.jsqlparser.expression.operators.relational.GreaterThanEquals;
import net.sf.jsqlparser.expression.operators.relational.InExpression;
import net.sf.jsqlparser.expression.operators.relational.IsNullExpression;
import net.sf.jsqlparser.expression.operators.relational.ItemsList;
import net.sf.jsqlparser.expression.operators.relational.LikeExpression;
import net.sf.jsqlparser.expression.operators.relational.ExistsExpression;
import net.sf.jsqlparser.expression.operators.relational.Matches;
import net.sf.jsqlparser.expression.operators.relational.MinorThan;
import net.sf.jsqlparser.expression.operators.relational.MinorThanEquals;
import net.sf.jsqlparser.expression.operators.relational.NotEqualsTo;
import net.sf.jsqlparser.schema.Column;
import net.sf.jsqlparser.schema.Table;
import net.sf.jsqlparser.statement.Statement;
import net.sf.jsqlparser.statement.create.table.ColDataType;
import net.sf.jsqlparser.statement.create.table.ColumnDefinition;
import net.sf.jsqlparser.statement.create.table.CreateTable;
import net.sf.jsqlparser.statement.create.table.Index;
import net.sf.jsqlparser.statement.delete.Delete;
import net.sf.jsqlparser.statement.drop.Drop;
import net.sf.jsqlparser.statement.insert.Insert;
import net.sf.jsqlparser.statement.replace.Replace;
import net.sf.jsqlparser.statement.select.AllColumns;
import net.sf.jsqlparser.statement.select.AllTableColumns;
import net.sf.jsqlparser.statement.select.Distinct;
import net.sf.jsqlparser.statement.select.FromItem;
import net.sf.jsqlparser.statement.select.Join;
import net.sf.jsqlparser.statement.select.SubJoin;
import net.sf.jsqlparser.statement.select.Limit;
import net.sf.jsqlparser.statement.select.OrderByElement;
import net.sf.jsqlparser.statement.select.PlainSelect;
import net.sf.jsqlparser.statement.select.Select;
import net.sf.jsqlparser.statement.select.SelectBody;
import net.sf.jsqlparser.statement.select.SelectExpressionItem;
import net.sf.jsqlparser.statement.select.SelectItem;
import net.sf.jsqlparser.statement.select.SubSelect;
import net.sf.jsqlparser.statement.select.Top;
import net.sf.jsqlparser.statement.select.Union;
import net.sf.jsqlparser.statement.select.UnionTypes;
import net.sf.jsqlparser.statement.select.WithItem;
import net.sf.jsqlparser.statement.select.Connect;
import net.sf.jsqlparser.statement.truncate.Truncate;
import net.sf.jsqlparser.statement.update.Update;
import net.sf.jsqlparser.statement.select.Alias;
import net.sf.jsqlparser.statement.select.Into;
/**
* The parser generated by JavaCC
*/
public class CCJSqlParser implements CCJSqlParserConstants {
public List<ParseException> syntaxErrors = new ArrayList<ParseException> ();
public Statement parsedStatement;
protected void recover (ParseException ex) {
syntaxErrors.add (ex);
}
public Statement parse()
{
try
{
parsedStatement = Statement();
return parsedStatement;
}catch(ParseException ex)
{
recover(ex);
return null;
}
}
final public Statement Statement() throws ParseException {Statement stm;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WITH:
case K_SELECT:
case LPAREN:{
stm = Select();
break;
}
case K_UPDATE:{
stm = Update();
break;
}
case K_INSERT:{
stm = Insert();
break;
}
case K_DELETE:{
stm = Delete();
break;
}
case K_REPLACE:{
stm = Replace();
break;
}
case K_CREATE:{
stm = CreateTable();
break;
}
case K_DROP:{
stm = Drop();
break;
}
case K_TRUNCATE:{
stm = Truncate();
break;
}
default:
jj_la1[0] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case SEMICOLON:{
tk = jj_consume_token(SEMICOLON);
if (tk.specialToken != null) {
stm.setEndComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[1] = jj_gen;
;
}
tk = jj_consume_token(0);
if (tk.specialToken != null) {
stm.setEndComment(tk.specialToken.image);
}
{if ("" != null) return stm;}
throw new Error("Missing return statement in function");
}
final public Update Update() throws ParseException {Update update = new Update();
Table table = null;
Expression where = null;
Column tableColumn = null;
List expList = new ArrayList();
List columns = new ArrayList();
Expression value = null;
Alias alias = null;
Token tk = null;
List commentsComma = new ArrayList();
List commentsEqaulas = new ArrayList();
//<K_UPDATE> table=TableWithAlias()
tk = jj_consume_token(K_UPDATE);
if (tk.specialToken != null) {
update.setComment(tk.specialToken.image);
}
table = Table();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
alias = Alias();
table.setAlias(alias);
break;
}
default:
jj_la1[2] = jj_gen;
;
}
tk = jj_consume_token(K_SET);
if (tk.specialToken != null) {
update.setCommentSet(tk.specialToken.image);
}
tableColumn = Column();
tk = jj_consume_token(EQUALS);
if (tk.specialToken != null) {
commentsEqaulas.add(tk.specialToken.image);
} else {commentsEqaulas.add("");}
value = SimpleExpression();
columns.add(tableColumn); expList.add(value);
label_1:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[3] = jj_gen;
break label_1;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentsComma.add(tk.specialToken.image);
} else {commentsComma.add("");}
tableColumn = Column();
tk = jj_consume_token(EQUALS);
if (tk.specialToken != null) {
commentsEqaulas.add(tk.specialToken.image);
} else {commentsEqaulas.add("");}
value = SimpleExpression();
columns.add(tableColumn); expList.add(value);
}
update.setCommentsComma(commentsComma);
update.setCommentsEqaulas(commentsEqaulas);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHERE:{
tk = jj_consume_token(K_WHERE);
if (tk.specialToken != null) {
update.setCommentWhere(tk.specialToken.image);
}
where = WhereClause();
update.setWhere(where);
break;
}
default:
jj_la1[4] = jj_gen;
;
}
update.setColumns(columns);
update.setExpressions(expList);
update.setTable(table);
{if ("" != null) return update;}
throw new Error("Missing return statement in function");
}
final public Replace Replace() throws ParseException {Replace replace = new Replace();
Table table = null;
Column tableColumn = null;
Expression value = null;
List columns = new ArrayList();
List expList = new ArrayList();
ItemsList itemsList = null;
Expression exp = null;
Token tk = null;
List commentEqlas = new ArrayList();
List commentComma = new ArrayList();
List commentItems= new ArrayList();
SubSelect subSelect = null;
tk = jj_consume_token(K_REPLACE);
if (tk.specialToken != null) {
replace.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_INTO:{
tk = jj_consume_token(K_INTO);
if (tk.specialToken != null) {
replace.setCommentInto(tk.specialToken.image);
}
replace.setUseInto(true);
break;
}
default:
jj_la1[5] = jj_gen;
;
}
table = TableWithAlias();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_SET:{
tk = jj_consume_token(K_SET);
if (tk.specialToken != null) {
replace.setCommentSet(tk.specialToken.image);
}
tableColumn = Column();
tk = jj_consume_token(EQUALS);
if (tk.specialToken != null) {
commentEqlas.add(tk.specialToken.image);
} else { commentEqlas.add("");}
value = SimpleExpression();
columns.add(tableColumn); expList.add(value);
label_2:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[6] = jj_gen;
break label_2;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
tableColumn = Column();
tk = jj_consume_token(EQUALS);
if (tk.specialToken != null) {
commentEqlas.add(tk.specialToken.image);
} else { commentEqlas.add("");}
value = SimpleExpression();
columns.add(tableColumn); expList.add(value);
}
replace.setExpressions(expList);
replace.setCommentEqlasColums(commentEqlas);
replace.setCommentCommaExpr(commentComma);
break;
}
case K_SELECT:
case K_VALUES:
case LPAREN:{
if (jj_2_1(2)) {
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
replace.setCommentBeforeColums(tk.specialToken.image);
}
tableColumn = Column();
columns.add(tableColumn);
label_3:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[7] = jj_gen;
break label_3;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
tableColumn = Column();
columns.add(tableColumn);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
replace.setCommentAfterColums(tk.specialToken.image);
}
replace.setCommentCommaColums(commentComma);
} else {
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_VALUES:{
tk = jj_consume_token(K_VALUES);
if (tk.specialToken != null) {
replace.setCommentValues(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
replace.setCommentBeforeItems(tk.specialToken.image);
}
exp = PrimaryExpression();
expList.add(exp);
label_4:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[8] = jj_gen;
break label_4;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentItems.add(tk.specialToken.image);
} else {commentItems.add("");}
exp = PrimaryExpression();
expList.add(exp);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
replace.setCommentAfterItems(tk.specialToken.image);
}
replace.setCommentCommaItems(commentItems);
itemsList = new ExpressionList(expList, commentItems,replace.getCommentAfterItems());
break;
}
case K_SELECT:
case LPAREN:{
replace.setUseValues(false);
subSelect = SubSelect();
subSelect.setReplace(true);
itemsList=subSelect;
break;
}
default:
jj_la1[9] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
replace.setItemsList(itemsList);
break;
}
default:
jj_la1[10] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (columns.size() > 0)
replace.setColumns(columns);
replace.setTable(table);
{if ("" != null) return replace;}
throw new Error("Missing return statement in function");
}
final public Insert Insert() throws ParseException {Insert insert = new Insert();
Table table = null;
Column tableColumn = null;
List columns = new ArrayList();
List columnsComments = new ArrayList();
List primaryExpList = new ArrayList();
ItemsList itemsList = null;
List itemsListComments = new ArrayList();
Expression exp = null;
SubSelect subSel = new SubSelect();
Token tk = null;
String commentBeginBracket = null;
tk = jj_consume_token(K_INSERT);
if (tk.specialToken != null) {
insert.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_INTO:{
tk = jj_consume_token(K_INTO);
if (tk.specialToken != null) {
insert.setCommentInto(tk.specialToken.image);
}
break;
}
default:
jj_la1[11] = jj_gen;
;
}
table = TableWithAlias();
if (jj_2_2(2)) {
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
insert.setCommentBeforeColums(tk.specialToken.image);
}
tableColumn = Column();
columns.add(tableColumn);
label_5:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[12] = jj_gen;
break label_5;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
columnsComments.add(tk.specialToken.image);
} else {
columnsComments.add("");
}
tableColumn = Column();
columns.add(tableColumn);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
insert.setCommentAfterColums(tk.specialToken.image);
}
insert.setColumsComment(columnsComments);
} else {
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_VALUES:{
tk = jj_consume_token(K_VALUES);
if (tk.specialToken != null) {
insert.setCommentValues(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
insert.setCommentItemsList(tk.specialToken.image);
}
exp = SimpleExpression();
primaryExpList.add(exp);
label_6:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[13] = jj_gen;
break label_6;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
itemsListComments.add(tk.specialToken.image);
} else {
itemsListComments.add("");
}
exp = SimpleExpression();
primaryExpList.add(exp);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
insert.setCommentAfterItemsList(tk.specialToken.image);
}
insert.setItemsListComments(itemsListComments);
itemsList = new ExpressionList(primaryExpList, itemsListComments, insert.getCommentAfterItemsList());
break;
}
case K_SELECT:
case LPAREN:{
if (jj_2_3(2)) {
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
} else {
;
}
insert.setUseValues(false);
subSel = SubSelect();
subSel.setCommentBeginBracket(commentBeginBracket);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case RPAREN:{
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
subSel.setCommentEndBracket(tk.specialToken.image);
}
break;
}
default:
jj_la1[14] = jj_gen;
;
}
itemsList=subSel;
break;
}
default:
jj_la1[15] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
insert.setItemsList(itemsList);
insert.setTable(table);
if (columns.size() > 0)
insert.setColumns(columns);
{if ("" != null) return insert;}
throw new Error("Missing return statement in function");
}
final public Delete Delete() throws ParseException {Delete delete = new Delete();
Table table = null;
Alias alias = null;
Expression where = null;
Token tk = null;
//<K_DELETE> [<K_FROM>] table=TableWithAlias()
tk = jj_consume_token(K_DELETE);
if (tk.specialToken != null) {
delete.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_FROM:{
tk = jj_consume_token(K_FROM);
if (tk.specialToken != null) {
delete.setFromComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[16] = jj_gen;
;
}
table = Table();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
alias = Alias();
table.setAlias(alias);
break;
}
default:
jj_la1[17] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHERE:{
tk = jj_consume_token(K_WHERE);
if (tk.specialToken != null) {
delete.setWhereComment(tk.specialToken.image);
}
where = WhereClause();
delete.setWhere(where);
break;
}
default:
jj_la1[18] = jj_gen;
;
}
delete.setTable(table);
{if ("" != null) return delete;}
throw new Error("Missing return statement in function");
}
final public Column Column() throws ParseException {String name1 = null;
String name2 = null;
String name3 = null;
Column column = null;
String comment = null;
// [schema.][tabella.]colonna
name1 = RelObjectName();
if (token.specialToken != null) {
comment=token.specialToken.image;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case DOT:{
jj_consume_token(DOT);
name2 = RelObjectName();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case DOT:{
jj_consume_token(DOT);
name3 = RelObjectName();
break;
}
default:
jj_la1[19] = jj_gen;
;
}
break;
}
default:
jj_la1[20] = jj_gen;
;
}
String colName = null;
Table table = null;
if (name3 != null) {
table = new Table(name1, name2);
colName = name3;
} else if (name2 != null) {
table = new Table(null, name1);
colName = name2;
} else {
table = new Table(null, null);
colName = name1;
}
column = new Column(table, colName);
column.setComment(comment);
{if ("" != null) return column;}
throw new Error("Missing return statement in function");
}
final public String RelObjectName() throws ParseException {Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:{
tk = jj_consume_token(S_IDENTIFIER);
break;
}
case S_QUOTED_IDENTIFIER:{
tk = jj_consume_token(S_QUOTED_IDENTIFIER);
break;
}
default:
jj_la1[21] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if ("" != null) return tk.image;}
throw new Error("Missing return statement in function");
}
final public Table TableWithAlias() throws ParseException {Table table = null;
Alias alias = null;
table = Table();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
alias = Alias();
table.setAlias(alias);
break;
}
default:
jj_la1[22] = jj_gen;
;
}
{if ("" != null) return table;}
throw new Error("Missing return statement in function");
}
final public Table Table() throws ParseException {Table table = null;
String name1 = null;
String name2 = null;
if (jj_2_4(3)) {
name1 = RelObjectName();
jj_consume_token(DOT);
name2 = RelObjectName();
table = new Table(name1, name2);
if (token.specialToken != null) {
table.setComment(token.specialToken.image);
}
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
name1 = RelObjectName();
table = new Table(null, name1);
if (token.specialToken != null) {
table.setComment(token.specialToken.image);
}
break;
}
default:
jj_la1[23] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return table;}
throw new Error("Missing return statement in function");
}
final public Select Select() throws ParseException {Select select = new Select();
SelectBody selectBody = null;
List with = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WITH:{
with = WithList(select);
select.setWithItemsList(with);
break;
}
default:
jj_la1[24] = jj_gen;
;
}
selectBody = SelectBody();
select.setSelectBody(selectBody);
{if ("" != null) return select;}
throw new Error("Missing return statement in function");
}
final public SelectBody SelectBody() throws ParseException {SelectBody selectBody = null;
if (jj_2_5(2147483647)) {
selectBody = Union();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_SELECT:{
selectBody = PlainSelect();
break;
}
default:
jj_la1[25] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return selectBody;}
throw new Error("Missing return statement in function");
}
final public PlainSelect PlainSelect() throws ParseException {PlainSelect plainSelect = new PlainSelect();
List selectItems = null;
FromItem fromItem = null;
List joins = null;
List distinctOn = null;
Expression where = null;
List orderByElements;
List groupByColumnReferences = null;
Expression having = null;
Limit limit = null;
Top top = null;
Connect connect = null;
Token tk = null;
Into into = null;
List commentCommaDistinct = new ArrayList();
List commentCommaSelect = new ArrayList();
tk = jj_consume_token(K_SELECT);
if (tk.specialToken != null) {
plainSelect.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
jj_consume_token(K_ALL);
break;
}
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
Distinct distinct = new Distinct(); plainSelect.setDistinct(distinct);
if (tk.specialToken != null) {
distinct.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ON:{
tk = jj_consume_token(K_ON);
if (tk.specialToken != null) {
distinct.setCommentOn(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
distinct.setCommentBeginBracket(tk.specialToken.image);
}
distinctOn = SelectItemsList(commentCommaDistinct);
plainSelect.getDistinct().setOnSelectItems(distinctOn);
plainSelect.getDistinct().setCommentsComma(commentCommaDistinct);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
distinct.setCommentEndBracket(tk.specialToken.image);
}
break;
}
default:
jj_la1[26] = jj_gen;
;
}
break;
}
default:
jj_la1[27] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[28] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_TOP:{
top = Top();
plainSelect.setTop(top);
break;
}
default:
jj_la1[29] = jj_gen;
;
}
selectItems = SelectItemsList(commentCommaSelect);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_INTO:{
into = IntoClause();
plainSelect.setInto(into);
break;
}
default:
jj_la1[30] = jj_gen;
;
}
tk = jj_consume_token(K_FROM);
if (tk.specialToken != null) {
plainSelect.setCommentFrom(tk.specialToken.image);
}
fromItem = FromItem();
joins = JoinsList();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHERE:{
tk = jj_consume_token(K_WHERE);
if (tk.specialToken != null) {
plainSelect.setCommentWhere(tk.specialToken.image);
}
where = WhereClause();
plainSelect.setWhere(where);
break;
}
default:
jj_la1[31] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_START:
case K_CONNECT:{
connect = ConnectClause();
plainSelect.setConnect(connect);
break;
}
default:
jj_la1[32] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_GROUP:{
groupByColumnReferences = GroupByColumnReferences(plainSelect);
plainSelect.setGroupByColumnReferences(groupByColumnReferences);
break;
}
default:
jj_la1[33] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_HAVING:{
having = Having(plainSelect);
plainSelect.setHaving(having);
break;
}
default:
jj_la1[34] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ORDER:{
orderByElements = OrderByElements(plainSelect);
plainSelect.setOrderByElements(orderByElements);
break;
}
default:
jj_la1[35] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_LIMIT:
case K_OFFSET:{
limit = Limit();
plainSelect.setLimit(limit);
break;
}
default:
jj_la1[36] = jj_gen;
;
}
plainSelect.setSelectItems(selectItems);
plainSelect.setCommentCommaItems(commentCommaSelect);
plainSelect.setFromItem(fromItem);
if (joins.size() > 0)
plainSelect.setJoins(joins);
{if ("" != null) return plainSelect;}
throw new Error("Missing return statement in function");
}
final public Union Union() throws ParseException {Union union = new Union();
List orderByElements = null;
Limit limit = null;
PlainSelect select = null;
ArrayList selects = new ArrayList();
UnionTypes typeUnion = null;
ArrayList typeUnions = new ArrayList();
ArrayList commentBeginBracket = new ArrayList();
ArrayList commentEndBracket = new ArrayList();
Token tk = null;
/*
this is not 100% right, since multiple UNION could have different ALL/DISTINCT clauses...
*/
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket.add(tk.specialToken.image);
} else {commentBeginBracket.add("");}
select = PlainSelect();
selects.add(select);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
commentEndBracket.add(tk.specialToken.image);
} else {commentEndBracket.add("");}
typeUnion = new UnionTypes();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:{
tk = jj_consume_token(K_UNION);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setUnion(true);
break;
}
case K_EXCEPT:{
tk = jj_consume_token(K_EXCEPT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setExcept(true);
break;
}
case K_INTERSECT:{
tk = jj_consume_token(K_INTERSECT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setIntersect(true);
break;
}
default:
jj_la1[37] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
tk = jj_consume_token(K_ALL);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setAll(true);
break;
}
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setDistinct(true);
break;
}
default:
jj_la1[38] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[39] = jj_gen;
;
}
typeUnions.add(typeUnion);
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket.add(tk.specialToken.image);
} else {commentBeginBracket.add("");}
select = PlainSelect();
selects.add(select);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
commentEndBracket.add(tk.specialToken.image);
} else {commentEndBracket.add("");}
label_7:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:
case K_EXCEPT:
case K_INTERSECT:{
;
break;
}
default:
jj_la1[40] = jj_gen;
break label_7;
}
typeUnion = new UnionTypes();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:{
tk = jj_consume_token(K_UNION);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setUnion(true);
break;
}
case K_EXCEPT:{
tk = jj_consume_token(K_EXCEPT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setExcept(true);
break;
}
case K_INTERSECT:{
tk = jj_consume_token(K_INTERSECT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setIntersect(true);
break;
}
default:
jj_la1[41] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
tk = jj_consume_token(K_ALL);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setAll(true);
break;
}
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setDistinct(true);
break;
}
default:
jj_la1[42] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[43] = jj_gen;
;
}
typeUnions.add(typeUnion);
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket.add(tk.specialToken.image);
} else {commentBeginBracket.add("");}
select = PlainSelect();
selects.add(select);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
commentEndBracket.add(tk.specialToken.image);
} else {commentEndBracket.add("");}
}
union.setCommentsBeginBracket(commentBeginBracket);
union.setCommentsEndBracket(commentEndBracket);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ORDER:{
orderByElements = OrderByElements(union);
union.setOrderByElements(orderByElements);
break;
}
default:
jj_la1[44] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_LIMIT:
case K_OFFSET:{
limit = Limit();
union.setLimit(limit);
break;
}
default:
jj_la1[45] = jj_gen;
;
}
break;
}
case K_SELECT:{
select = PlainSelect();
selects.add(select);
typeUnion = new UnionTypes();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:{
tk = jj_consume_token(K_UNION);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setUnion(true);
break;
}
case K_EXCEPT:{
tk = jj_consume_token(K_EXCEPT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setExcept(true);
break;
}
case K_INTERSECT:{
tk = jj_consume_token(K_INTERSECT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setIntersect(true);
break;
}
default:
jj_la1[46] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
tk = jj_consume_token(K_ALL);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setAll(true);
break;
}
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setDistinct(true);
break;
}
default:
jj_la1[47] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[48] = jj_gen;
;
}
typeUnions.add(typeUnion);
select = PlainSelect();
selects.add(select);
label_8:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:
case K_EXCEPT:
case K_INTERSECT:{
;
break;
}
default:
jj_la1[49] = jj_gen;
break label_8;
}
typeUnion = new UnionTypes();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_UNION:{
tk = jj_consume_token(K_UNION);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setUnion(true);
break;
}
case K_EXCEPT:{
tk = jj_consume_token(K_EXCEPT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setExcept(true);
break;
}
case K_INTERSECT:{
tk = jj_consume_token(K_INTERSECT);
if (tk.specialToken != null) {
typeUnion.setCommentUnion(tk.specialToken.image);
}
typeUnion.setIntersect(true);
break;
}
default:
jj_la1[50] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
tk = jj_consume_token(K_ALL);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setAll(true);
break;
}
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
if (tk.specialToken != null) {
typeUnion.setCommentAll(tk.specialToken.image);
}
typeUnion.setDistinct(true);
break;
}
default:
jj_la1[51] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[52] = jj_gen;
;
}
typeUnions.add(typeUnion);
select = PlainSelect();
selects.add(select);
}
break;
}
default:
jj_la1[53] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
union.setPlainSelects(selects);
union.setTypeOperations(typeUnions);
{if ("" != null) return union;}
throw new Error("Missing return statement in function");
}
final public List WithList(Select select) throws ParseException {ArrayList withItemsList = new ArrayList();
WithItem with = null;
Token tk = null;
ArrayList commentsComma = new ArrayList();
tk = jj_consume_token(K_WITH);
if (tk.specialToken != null) {
select.setCommentWith(tk.specialToken.image);
}
with = WithItem();
withItemsList.add(with);
label_9:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[54] = jj_gen;
break label_9;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentsComma.add(tk.specialToken.image);
} else {commentsComma.add("");}
with = WithItem();
withItemsList.add(with);
}
select.setCommentsComma(commentsComma);
{if ("" != null) return withItemsList;}
throw new Error("Missing return statement in function");
}
final public WithItem WithItem() throws ParseException {WithItem with = new WithItem();
String name = null;
List selectItems = null;
SelectBody selectBody = null;
Token tk = null;
List commentComma = new ArrayList();
name = RelObjectName();
if (token.specialToken != null) {
with.setCommentName(token.specialToken.image);
}
with.setName(name);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
with.setCommentBeginBracketWith(tk.specialToken.image);
}
selectItems = SelectItemsList(commentComma);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
with.setCommentEndBracketWith(tk.specialToken.image);
}
with.setWithItemList(selectItems);
with.setCommentsCommaWith(commentComma);
break;
}
default:
jj_la1[55] = jj_gen;
;
}
tk = jj_consume_token(K_AS);
if (tk.specialToken != null) {
with.setCommentAs(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
with.setCommentBeginBracketAs(tk.specialToken.image);
}
selectBody = SelectBody();
with.setSelectBody(selectBody);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
with.setCommentEndBracketAs(tk.specialToken.image);
}
{if ("" != null) return with;}
throw new Error("Missing return statement in function");
}
final public List SelectItemsList(List commas) throws ParseException {ArrayList selectItemsList = new ArrayList();
SelectItem selectItem = null;
Token tk = null;
selectItem = SelectItem();
selectItemsList.add(selectItem);
label_10:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[56] = jj_gen;
break label_10;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commas.add(tk.specialToken.image);
} else {commas.add("");}
selectItem = SelectItem();
selectItemsList.add(selectItem);
}
{if ("" != null) return selectItemsList;}
throw new Error("Missing return statement in function");
}
final public SelectItem SelectItem() throws ParseException {Function function = null;
AllColumns allTableColumns = null;
AllColumns allCol = null;
Column tableColumn = null;
Alias alias = null;
SelectItem selectItem = null;
SelectExpressionItem selectExpressionItem = null;
Expression expression = null;
SubSelect subSelect = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case MULTIPLY:{
tk = jj_consume_token(MULTIPLY);
allCol = new AllColumns();
if (tk.specialToken != null) {
allCol.setComment(tk.specialToken.image);
}
selectItem = allCol;
break;
}
default:
jj_la1[58] = jj_gen;
if (jj_2_6(2147483647)) {
selectItem = AllTableColumns();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
expression = SimpleExpression();
selectExpressionItem = new SelectExpressionItem(); selectExpressionItem.setExpression(expression);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
alias = Alias();
selectExpressionItem.setAlias(alias);
break;
}
default:
jj_la1[57] = jj_gen;
;
}
selectItem = selectExpressionItem;
break;
}
default:
jj_la1[59] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
{if ("" != null) return selectItem;}
throw new Error("Missing return statement in function");
}
final public AllTableColumns AllTableColumns() throws ParseException {Table table = null;
table = Table();
jj_consume_token(DOT);
jj_consume_token(MULTIPLY);
{if ("" != null) return new AllTableColumns(table);}
throw new Error("Missing return statement in function");
}
final public Alias Alias() throws ParseException {String retval = null;
Alias alias = new Alias();
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:{
tk = jj_consume_token(K_AS);
alias.setAs(true);
if (tk.specialToken != null) {
alias.setCommentAs(tk.specialToken.image);
}
break;
}
default:
jj_la1[60] = jj_gen;
;
}
retval = RelObjectName();
if (token.specialToken != null) {
alias.setCommentName(token.specialToken.image);
}
alias.setName(retval);
{if ("" != null) return alias;}
throw new Error("Missing return statement in function");
}
final public Into IntoClause() throws ParseException {Into into = new Into();
Token tk = null;
List commentComma = new ArrayList(); ;
List tables = new ArrayList(); ;
Table table = null;
tk = jj_consume_token(K_INTO);
if (tk.specialToken != null) {
into.setCommentInto(tk.specialToken.image);
}
table = TableWithAlias();
tables.add(table);
label_11:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[61] = jj_gen;
break label_11;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
table = TableWithAlias();
tables.add(table);
}
into.setCommentsComma(commentComma);
into.setTables(tables);
{if ("" != null) return into;}
throw new Error("Missing return statement in function");
}
final public FromItem FromItem() throws ParseException {FromItem fromItem = null;
Alias alias = null;
String commentBeginBrakcet = null;
Token tk = null;
SubJoin subJoin = null;
SubSelect subSel = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
if (jj_2_7(2147483647)) {
subJoin = SubJoin();
subJoin.setCommentBeginBracket(commentBeginBrakcet);
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_SELECT:
case LPAREN:{
subSel = SubSelect();
subSel.setCommentBeginBracket(commentBeginBrakcet);
break;
}
default:
jj_la1[62] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
if (subJoin != null) {
subJoin.setCommentEndBracket(tk.specialToken.image);
} else {
if (subSel != null) {
subSel.setCommentEndBracket(tk.specialToken.image);
}
}
}
fromItem = subJoin != null ? subJoin : subSel;
break;
}
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
fromItem = Table();
break;
}
default:
jj_la1[63] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_AS:
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
alias = Alias();
fromItem.setAlias(alias);
break;
}
default:
jj_la1[64] = jj_gen;
;
}
{if ("" != null) return fromItem;}
throw new Error("Missing return statement in function");
}
final public SubJoin SubJoin() throws ParseException {FromItem fromItem = null;
Join join = null;
SubJoin subJoin = new SubJoin();
fromItem = FromItem();
subJoin.setLeft(fromItem);
join = JoinerExpression();
subJoin.setJoin(join);
{if ("" != null) return subJoin;}
throw new Error("Missing return statement in function");
}
final public List JoinsList() throws ParseException {ArrayList joinsList = new ArrayList();
Join join = null;
label_12:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_JOIN:
case K_LEFT:
case K_FULL:
case K_INNER:
case K_OUTER:
case K_RIGHT:
case K_NATURAL:
case COMMA:{
;
break;
}
default:
jj_la1[65] = jj_gen;
break label_12;
}
join = JoinerExpression();
joinsList.add(join);
}
{if ("" != null) return joinsList;}
throw new Error("Missing return statement in function");
}
final public Join JoinerExpression() throws ParseException {Join join = new Join();
FromItem right = null;
Expression onExpression = null;
Column tableColumn;
List columns = null;
Token tk = null;
List commentComma = new ArrayList();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_LEFT:
case K_FULL:
case K_RIGHT:
case K_NATURAL:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_LEFT:{
tk = jj_consume_token(K_LEFT);
if (tk.specialToken != null) {
join.setCommentLeft(tk.specialToken.image);
}
join.setLeft(true);
break;
}
case K_RIGHT:{
tk = jj_consume_token(K_RIGHT);
if (tk.specialToken != null) {
join.setCommentRight(tk.specialToken.image);
}
join.setRight(true);
break;
}
case K_FULL:{
tk = jj_consume_token(K_FULL);
if (tk.specialToken != null) {
join.setCommentFull(tk.specialToken.image);
}
join.setFull(true);
break;
}
case K_NATURAL:{
tk = jj_consume_token(K_NATURAL);
if (tk.specialToken != null) {
join.setCommentNatural(tk.specialToken.image);
}
join.setNatural(true);
break;
}
default:
jj_la1[66] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[67] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_INNER:
case K_OUTER:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_OUTER:{
tk = jj_consume_token(K_OUTER);
if (tk.specialToken != null) {
join.setCommentOuter(tk.specialToken.image);
}
join.setOuter(true);
break;
}
case K_INNER:{
tk = jj_consume_token(K_INNER);
if (tk.specialToken != null) {
join.setCommentInner(tk.specialToken.image);
}
join.setInner(true);
break;
}
default:
jj_la1[68] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[69] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_JOIN:{
tk = jj_consume_token(K_JOIN);
if (tk.specialToken != null) {
join.setCommentJoin(tk.specialToken.image);
}
break;
}
case COMMA:{
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
join.setComment(tk.specialToken.image);
}
join.setSimple(true);
break;
}
default:
jj_la1[70] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
right = FromItem();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ON:
case K_USING:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ON:{
tk = jj_consume_token(K_ON);
if (tk.specialToken != null) {
join.setCommentOn(tk.specialToken.image);
}
onExpression = Expression();
join.setOnExpression(onExpression);
break;
}
case K_USING:{
tk = jj_consume_token(K_USING);
if (tk.specialToken != null) {
join.setCommentUsing(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
join.setCommentBeginBracket(tk.specialToken.image);
}
tableColumn = Column();
columns = new ArrayList(); columns.add(tableColumn);
label_13:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[71] = jj_gen;
break label_13;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
tableColumn = Column();
columns.add(tableColumn);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
join.setCommentEndBracket(tk.specialToken.image);
}
join.setCommentComma(commentComma);
join.setUsingColumns(columns);
break;
}
default:
jj_la1[72] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[73] = jj_gen;
;
}
join.setRightItem(right);
{if ("" != null) return join;}
throw new Error("Missing return statement in function");
}
final public Expression WhereClause() throws ParseException {Expression retval = null;
retval = Expression();
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Connect ConnectClause() throws ParseException {Connect retval = new Connect();
Expression startWith = null;
Expression connectBy = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_START:{
tk = jj_consume_token(K_START);
if (tk.specialToken != null) {
retval.setComment(tk.specialToken.image);
}
tk = jj_consume_token(K_WITH);
if (tk.specialToken != null) {
retval.setCommentWith(tk.specialToken.image);
}
startWith = Expression();
retval.setStartWith(startWith);
break;
}
default:
jj_la1[74] = jj_gen;
;
}
tk = jj_consume_token(K_CONNECT);
if (tk.specialToken != null) {
retval.setCommentConnect(tk.specialToken.image);
}
tk = jj_consume_token(K_BY);
if (tk.specialToken != null) {
retval.setCommentBy(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOCYCLE:{
tk = jj_consume_token(K_NOCYCLE);
if (tk.specialToken != null) {
retval.setCommentNoCycle(tk.specialToken.image);
}
retval.setNoCycle(true);
break;
}
default:
jj_la1[75] = jj_gen;
;
}
connectBy = Expression();
retval.setConnectBy(connectBy);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public List GroupByColumnReferences(PlainSelect select) throws ParseException {Expression columnReference = null;
List columnReferences = new ArrayList();
Token tk = null;
List commentComma = new ArrayList();
String group = null;
String by = null;
tk = jj_consume_token(K_GROUP);
if (tk.specialToken != null) {
group = tk.specialToken.image;
}
tk = jj_consume_token(K_BY);
if (tk.specialToken != null) {
by = tk.specialToken.image;
}
columnReference = SimpleExpression();
columnReferences.add(columnReference);
label_14:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[76] = jj_gen;
break label_14;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
columnReference = SimpleExpression();
columnReferences.add(columnReference);
}
select.setCommentGroup(group);
select.setCommentGroupBy(by);
select.setCommentCommaGroupBy(commentComma);
{if ("" != null) return columnReferences;}
throw new Error("Missing return statement in function");
}
final public Expression Having(PlainSelect select) throws ParseException {Expression having = null;
Token tk = null;
tk = jj_consume_token(K_HAVING);
if (tk.specialToken != null) {
select.setCommentHaving(tk.specialToken.image);
}
having = Expression();
{if ("" != null) return having;}
throw new Error("Missing return statement in function");
}
final public List OrderByElements(SelectBody sel) throws ParseException {List orderByList = new ArrayList();
OrderByElement orderByElement = null;
Token tk = null;
List commentComma = new ArrayList();
String order = null;
String by = null;
tk = jj_consume_token(K_ORDER);
if (tk.specialToken != null) {
order = tk.specialToken.image;
}
tk = jj_consume_token(K_BY);
if (tk.specialToken != null) {
by = tk.specialToken.image;
}
orderByElement = OrderByElement();
orderByList.add(orderByElement);
label_15:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[77] = jj_gen;
break label_15;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentComma.add(tk.specialToken.image);
} else {commentComma.add("");}
orderByElement = OrderByElement();
orderByList.add(orderByElement);
}
if (sel instanceof PlainSelect) {
((PlainSelect) sel).setCommentOrder(order);
((PlainSelect) sel).setCommentOrderBy(by);
((PlainSelect) sel).setCommentCommaOrderBy(commentComma);
} else {
((Union) sel).setCommentOrder(order);
((Union) sel).setCommentOrderBy(by);
((Union) sel).setCommentCommaOrderBy(commentComma);
}
{if ("" != null) return orderByList;}
throw new Error("Missing return statement in function");
}
final public OrderByElement OrderByElement() throws ParseException {OrderByElement orderByElement = new OrderByElement();
List retval = new ArrayList();
Expression columnReference = null;
Token tk = null;
columnReference = SimpleExpression();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ASC:
case K_DESC:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ASC:{
tk = jj_consume_token(K_ASC);
orderByElement.setAsc(true);
if (tk.specialToken != null) {
orderByElement.setComment(tk.specialToken.image);
}
break;
}
case K_DESC:{
tk = jj_consume_token(K_DESC);
orderByElement.setDesc(true);
if (tk.specialToken != null) {
orderByElement.setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[78] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[79] = jj_gen;
;
}
orderByElement.setExpression(columnReference);
{if ("" != null) return orderByElement;}
throw new Error("Missing return statement in function");
}
final public Limit Limit() throws ParseException {Limit limit = new Limit();
Token token = null;
if (jj_2_8(3)) {
// mysql-> LIMIT offset,row_count
token = jj_consume_token(K_LIMIT);
if (token.specialToken != null) {
limit.setCommentLimit(token.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
limit.setCommentLimitValue(token.specialToken.image);
}
limit.setOffset(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
limit.setCommentLimitValue(token.specialToken.image);
}
limit.setOffsetJdbcParameter(true);
break;
}
default:
jj_la1[80] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
token = jj_consume_token(COMMA);
if (token.specialToken != null) {
limit.setCommentComma(token.specialToken.image);
}
limit.setComma(true);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
limit.setCommentAfterCommaValue(token.specialToken.image);
}
limit.setRowCount(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
limit.setCommentAfterCommaValue(token.specialToken.image);
}
limit.setRowCountJdbcParameter(true);
break;
}
default:
jj_la1[81] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_OFFSET:{
// postgresql-> OFFSET offset
token = jj_consume_token(K_OFFSET);
if (token.specialToken != null) {
limit.setCommentOffset(token.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
limit.setCommentOffsetValue(token.specialToken.image);
}
limit.setOffset(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
limit.setCommentOffsetValue(token.specialToken.image);
}
limit.setOffsetJdbcParameter(true);
break;
}
default:
jj_la1[82] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
case K_LIMIT:{
// mysql-postgresql-> LIMIT (row_count | ALL) [OFFSET offset]
token = jj_consume_token(K_LIMIT);
if (token.specialToken != null) {
limit.setCommentLimit(token.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
limit.setCommentLimitValue(token.specialToken.image);
}
limit.setRowCount(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
limit.setCommentLimitValue(token.specialToken.image);
}
limit.setRowCountJdbcParameter(true);
break;
}
case K_ALL:{
token = jj_consume_token(K_ALL);
if (token.specialToken != null) {
limit.setCommentAll(token.specialToken.image);
}
limit.setLimitAll(true);
break;
}
default:
jj_la1[83] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_OFFSET:{
token = jj_consume_token(K_OFFSET);
if (token.specialToken != null) {
limit.setCommentOffset(token.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
limit.setCommentOffsetValue(token.specialToken.image);
}
limit.setOffset(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
limit.setCommentOffsetValue(token.specialToken.image);
}
limit.setOffsetJdbcParameter(true);
break;
}
default:
jj_la1[84] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[85] = jj_gen;
;
}
break;
}
default:
jj_la1[86] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return limit;}
throw new Error("Missing return statement in function");
}
final public Top Top() throws ParseException {Top top = new Top();
Token token = null;
token = jj_consume_token(K_TOP);
if (token.specialToken != null) {
top.setCommentTop(token.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
token = jj_consume_token(S_INTEGER);
if (token.specialToken != null) {
top.setCommentTopValue(token.specialToken.image);
}
top.setRowCount(Long.parseLong(token.image));
break;
}
case HOOK:{
token = jj_consume_token(HOOK);
if (token.specialToken != null) {
top.setCommentTopValue(token.specialToken.image);
}
top.setRowCountJdbcParameter(true);
break;
}
default:
jj_la1[87] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if ("" != null) return top;}
throw new Error("Missing return statement in function");
}
final public Expression Expression() throws ParseException {Expression retval = null;
Token tk = null;
String commentBeginBracket = null;
if (jj_2_9(2147483647)) {
retval = OrExpression();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
retval = Expression();
tk = jj_consume_token(RPAREN);
retval = new Parenthesis(retval);
((Parenthesis) retval).setCommentBeginBracket(commentBeginBracket);
if (tk.specialToken != null) {
((Parenthesis) retval).setCommentEndBracket(tk.specialToken.image);
}
break;
}
default:
jj_la1[88] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression OrExpression() throws ParseException {Expression left, right, result;
Token tk = null;
String commentOr = null;
left = AndExpression();
result = left;
label_16:
while (true) {
if (jj_2_10(2147483647)) {
;
} else {
break label_16;
}
tk = jj_consume_token(K_OR);
if (tk.specialToken != null) {
commentOr=tk.specialToken.image;
}
right = AndExpression();
result = new OrExpression(left, right);
if (commentOr != null) {((OrExpression) result).setComment(commentOr);}
left = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression AndExpression() throws ParseException {Expression left, right, result;
boolean not = false;
Token tk = null;
String commentAnd = null;
String commentBeginBracket = null;
String commentNot = null;
if (jj_2_11(2147483647)) {
left = Condition();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:
case LPAREN:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
commentNot = tk.specialToken.image;
}
not = true;
break;
}
default:
jj_la1[89] = jj_gen;
;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
left = OrExpression();
tk = jj_consume_token(RPAREN);
left = new Parenthesis(left);
((Parenthesis) left).setCommentBeginBracket(commentBeginBracket);
((Parenthesis) left).setCommentNot(commentNot);
if (tk.specialToken != null) {
((Parenthesis) left).setCommentEndBracket(tk.specialToken.image);
}
if (not) { ((Parenthesis)left).setNot(); not = false; }
break;
}
default:
jj_la1[90] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
result = left;
label_17:
while (true) {
if (jj_2_12(2147483647)) {
;
} else {
break label_17;
}
tk = jj_consume_token(K_AND);
if (tk.specialToken != null) {
commentAnd=tk.specialToken.image;
}
if (jj_2_13(2147483647)) {
right = Condition();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:
case LPAREN:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
jj_consume_token(K_NOT);
if (tk.specialToken != null) {
commentNot = tk.specialToken.image;
}
not = true;
break;
}
default:
jj_la1[91] = jj_gen;
;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
right = OrExpression();
tk = jj_consume_token(RPAREN);
right = new Parenthesis(right);
((Parenthesis) right).setCommentBeginBracket(commentBeginBracket);
((Parenthesis) right).setCommentNot(commentNot);
if (tk.specialToken != null) {
((Parenthesis) right).setCommentEndBracket(tk.specialToken.image);
}
if (not) { ((Parenthesis)right).setNot(); not = false; }
break;
}
default:
jj_la1[92] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
result = new AndExpression(left, right);
if (commentAnd != null) {((AndExpression) result).setComment(commentAnd);}
left = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression Condition() throws ParseException {Expression result;
if (jj_2_14(2147483647)) {
result = SQLCondition();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_PRIOR:
case K_ALL:
case K_ANY:
case K_NOT:
case K_NULL:
case K_CASE:
case K_SOME:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
result = RegularCondition();
break;
}
default:
jj_la1[93] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression RegularCondition() throws ParseException {Expression result = null;
Expression leftExpression;
Expression rightExpression;
boolean not = false;
boolean leftPrior = false;
boolean rightPrior = false;
Token tk = null;
String commentNot = null;
String commentLeftPrior = null;
String commentRightPrior = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_PRIOR:{
tk = jj_consume_token(K_PRIOR);
if (tk.specialToken != null) {
commentLeftPrior=tk.specialToken.image;
}
leftPrior = true;
break;
}
default:
jj_la1[94] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
commentNot=tk.specialToken.image;
}
not = true;
break;
}
default:
jj_la1[95] = jj_gen;
;
}
leftExpression = ComparisonItem();
result = leftExpression;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case GT:{
tk = jj_consume_token(GT);
result = new GreaterThan();
if (tk.specialToken != null) {
((GreaterThan) result).setComment(tk.specialToken.image);
}
break;
}
case LT:{
tk = jj_consume_token(LT);
result = new MinorThan();
if (tk.specialToken != null) {
((MinorThan) result).setComment(tk.specialToken.image);
}
break;
}
case EQUALS:{
tk = jj_consume_token(EQUALS);
result = new EqualsTo();
if (tk.specialToken != null) {
((EqualsTo) result).setComment(tk.specialToken.image);
}
break;
}
case GE:{
tk = jj_consume_token(GE);
result = new GreaterThanEquals();
if (tk.specialToken != null) {
((GreaterThanEquals) result).setComment(tk.specialToken.image);
}
break;
}
case LE:{
tk = jj_consume_token(LE);
result = new MinorThanEquals();
if (tk.specialToken != null) {
((MinorThanEquals) result).setComment(tk.specialToken.image);
}
break;
}
case NOTEQUAL1:
case NOTEQUAL2:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case NOTEQUAL1:{
tk = jj_consume_token(NOTEQUAL1);
break;
}
case NOTEQUAL2:{
tk = jj_consume_token(NOTEQUAL2);
break;
}
default:
jj_la1[96] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
result = new NotEqualsTo();
if (tk.specialToken != null) {
((NotEqualsTo) result).setComment(tk.specialToken.image);
}
break;
}
case ATAT:{
tk = jj_consume_token(ATAT);
result = new Matches();
if (tk.specialToken != null) {
((Matches) result).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[97] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_PRIOR:{
tk = jj_consume_token(K_PRIOR);
if (tk.specialToken != null) {
commentRightPrior=tk.specialToken.image;
}
rightPrior = true;
break;
}
default:
jj_la1[98] = jj_gen;
;
}
rightExpression = ComparisonItem();
BinaryExpression regCond = (BinaryExpression) result;
regCond.setLeftExpression(leftExpression);
regCond.setLeftPrior(leftPrior);
regCond.setRightExpression(rightExpression);
regCond.setRightPrior(rightPrior);
if (not)
regCond.setNot();
regCond.setCommentNot(commentNot);
regCond.setCommentLeftPrior(commentLeftPrior);
regCond.setCommentRightPrior(commentRightPrior);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression SQLCondition() throws ParseException {Expression result;
if (jj_2_15(2147483647)) {
result = InExpression();
} else if (jj_2_16(2147483647)) {
result = Between();
} else if (jj_2_17(2147483647)) {
result = IsNullExpression();
} else if (jj_2_18(2147483647)) {
result = ExistsExpression();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
result = LikeExpression();
break;
}
default:
jj_la1[99] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression InExpression() throws ParseException {InExpression result = new InExpression();
ItemsList itemsList = null;
Expression leftExpression = null;
Token tk = null;
String commentBeginBrakcet = null;
String commentEndBrakcet = null;
SubSelect subSel = null;
List commentComma = new ArrayList();
leftExpression = SimpleExpression();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
result.setCommentNot(tk.specialToken.image);
}
result.setNot(true);
break;
}
default:
jj_la1[100] = jj_gen;
;
}
tk = jj_consume_token(K_IN);
if (tk.specialToken != null) {
result.setCommentIn(tk.specialToken.image);
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
if (jj_2_19(2147483647)) {
subSel = SubSelect();
subSel.setCommentBeginBracket(commentBeginBrakcet);
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
itemsList = SimpleExpressionList();
break;
}
default:
jj_la1[101] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
commentEndBrakcet=tk.specialToken.image;
}
if (subSel != null) {
subSel.setCommentEndBracket(commentEndBrakcet);
itemsList = subSel;
} else {
result.setCommentBeginBracket(commentBeginBrakcet);
((ExpressionList) itemsList).setCommentEndBracket(commentEndBrakcet);}
result.setLeftExpression(leftExpression);
result.setItemsList(itemsList);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression Between() throws ParseException {Between result = new Between();
Expression leftExpression = null;
Expression betweenExpressionStart = null;
Expression betweenExpressionEnd = null;
Token tk = null;
leftExpression = SimpleExpression();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
result.setCommentNot(tk.specialToken.image);
}
result.setNot(true);
break;
}
default:
jj_la1[102] = jj_gen;
;
}
tk = jj_consume_token(K_BETWEEN);
if (tk.specialToken != null) {
result.setCommentBetween(tk.specialToken.image);
}
betweenExpressionStart = SimpleExpression();
tk = jj_consume_token(K_AND);
if (tk.specialToken != null) {
result.setCommentAnd(tk.specialToken.image);
}
betweenExpressionEnd = SimpleExpression();
result.setLeftExpression(leftExpression);
result.setBetweenExpressionStart(betweenExpressionStart);
result.setBetweenExpressionEnd(betweenExpressionEnd);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression LikeExpression() throws ParseException {LikeExpression result = new LikeExpression();
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
leftExpression = SimpleExpression();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
result.setCommentNot(tk.specialToken.image);
}
result.setNot(true);
break;
}
default:
jj_la1[103] = jj_gen;
;
}
tk = jj_consume_token(K_LIKE);
if (tk.specialToken != null) {
result.setCommentLike(tk.specialToken.image);
}
rightExpression = SimpleExpression();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ESCAPE:{
tk = jj_consume_token(K_ESCAPE);
if (tk.specialToken != null) {
result.setCommentEscape(tk.specialToken.image);
}
token = jj_consume_token(S_CHAR_LITERAL);
if (token.specialToken != null) {
result.setCommentLiteral(token.specialToken.image);
}
result.setEscape((new StringValue(token.image)).getValue());
break;
}
default:
jj_la1[104] = jj_gen;
;
}
result.setLeftExpression(leftExpression);
result.setRightExpression(rightExpression);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression IsNullExpression() throws ParseException {IsNullExpression result = new IsNullExpression();
Expression leftExpression = null;
Token tk = null;
leftExpression = SimpleExpression();
tk = jj_consume_token(K_IS);
if (tk.specialToken != null) {
result.setCommentIs(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
result.setCommentNot(tk.specialToken.image);
}
result.setNot(true);
break;
}
default:
jj_la1[105] = jj_gen;
;
}
tk = jj_consume_token(K_NULL);
if (tk.specialToken != null) {
result.setCommentNull(tk.specialToken.image);
}
result.setLeftExpression(leftExpression);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression ExistsExpression() throws ParseException {ExistsExpression result = new ExistsExpression();
Expression rightExpression = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
result.setCommentNot(tk.specialToken.image);
}
result.setNot(true);
break;
}
default:
jj_la1[106] = jj_gen;
;
}
tk = jj_consume_token(K_EXISTS);
if (tk.specialToken != null) {
result.setCommentExists(tk.specialToken.image);
}
rightExpression = SimpleExpression();
result.setRightExpression(rightExpression);
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public ExpressionList SQLExpressionList() throws ParseException {ExpressionList retval = new ExpressionList();
List expressions = new ArrayList();
List comments = new ArrayList();
Expression expr = null;
Token tk = null;
expr = Expression();
expressions.add(expr);
label_18:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[107] = jj_gen;
break label_18;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
expr = Expression();
expressions.add(expr);
}
retval.setExpressions(expressions);
retval.setCommentsComma(comments);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public ExpressionList SimpleExpressionList() throws ParseException {ExpressionList retval = new ExpressionList();
List expressions = new ArrayList();
List comments = new ArrayList();
Expression expr = null;
Token tk = null;
expr = SimpleExpression();
expressions.add(expr);
label_19:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[108] = jj_gen;
break label_19;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
expr = SimpleExpression();
expressions.add(expr);
}
retval.setExpressions(expressions);
retval.setCommentsComma(comments);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression ComparisonItem() throws ParseException {Expression retval = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:{
retval = AllComparisonExpression();
break;
}
case K_ANY:
case K_SOME:{
retval = AnyComparisonExpression();
break;
}
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
retval = SimpleExpression();
break;
}
default:
jj_la1[109] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression AllComparisonExpression() throws ParseException {AllComparisonExpression retval = null;
SubSelect subselect = null;
Token tk = null;
String commentBeginBrakcet = null;
String comment = null;
tk = jj_consume_token(K_ALL);
if (tk.specialToken != null) {
comment=tk.specialToken.image;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
subselect = SubSelect();
subselect.setCommentBeginBracket(commentBeginBrakcet);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
subselect.setCommentEndBracket(tk.specialToken.image);
}
retval = new AllComparisonExpression(subselect);
retval.setComment(comment);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression AnyComparisonExpression() throws ParseException {AnyComparisonExpression retval = null;
SubSelect subselect = null;
Token tk = null;
String commentBeginBrakcet = null;
String comment = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ANY:{
tk = jj_consume_token(K_ANY);
break;
}
case K_SOME:{
tk = jj_consume_token(K_SOME);
break;
}
default:
jj_la1[110] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (tk.specialToken != null) {
comment=tk.specialToken.image;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
subselect = SubSelect();
subselect.setCommentBeginBracket(commentBeginBrakcet);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
subselect.setCommentEndBracket(tk.specialToken.image);
}
retval = new AnyComparisonExpression(subselect);
retval.setComment(comment);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression SimpleExpression() throws ParseException {Expression retval = null;
Token tk = null;
String commentBeginBracket = null;
if (jj_2_20(2147483647)) {
retval = BitwiseAndOr();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
retval = BitwiseAndOr();
tk = jj_consume_token(RPAREN);
retval = new Parenthesis(retval);
((Parenthesis) retval).setCommentBeginBracket(commentBeginBracket);
{if (tk.specialToken != null) {
((Parenthesis) retval).setCommentEndBracket(tk.specialToken.image);
}
}
break;
}
default:
jj_la1[111] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression ConcatExpression() throws ParseException {Expression result = null;
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
String concat = null;
leftExpression = AdditiveExpression();
result = leftExpression;
label_20:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case OR:{
;
break;
}
default:
jj_la1[112] = jj_gen;
break label_20;
}
tk = jj_consume_token(OR);
if (tk.specialToken != null) {
concat=tk.specialToken.image;
}
rightExpression = AdditiveExpression();
Concat binExp = new Concat();
if (concat != null) {binExp.setComment(concat);}
binExp.setLeftExpression(leftExpression);
binExp.setRightExpression(rightExpression);
result = binExp;
leftExpression = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression BitwiseAndOr() throws ParseException {Expression result = null;
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
leftExpression = ConcatExpression();
result = leftExpression;
label_21:
while (true) {
if (jj_2_21(2)) {
;
} else {
break label_21;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case BITWISEOR:{
tk = jj_consume_token(BITWISEOR);
result = new BitwiseOr();
if (tk.specialToken != null) {
((BitwiseOr) result).setComment(tk.specialToken.image);
}
break;
}
case BITWISEAND:{
tk = jj_consume_token(BITWISEAND);
result = new BitwiseAnd();
if (tk.specialToken != null) {
((BitwiseAnd) result).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[113] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
rightExpression = ConcatExpression();
BinaryExpression binExp = (BinaryExpression) result;
binExp.setLeftExpression(leftExpression);
binExp.setRightExpression(rightExpression);
leftExpression = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression AdditiveExpression() throws ParseException {Expression result = null;
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
leftExpression = MultiplicativeExpression();
result = leftExpression;
label_22:
while (true) {
if (jj_2_22(2)) {
;
} else {
break label_22;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
tk = jj_consume_token(ADD);
result = new Addition();
if (tk.specialToken != null) {
((Addition) result).setComment(tk.specialToken.image);
}
break;
}
case MINUS:{
tk = jj_consume_token(MINUS);
result = new Subtraction();
if (tk.specialToken != null) {
((Subtraction) result).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[114] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
rightExpression = MultiplicativeExpression();
BinaryExpression binExp = (BinaryExpression) result;
binExp.setLeftExpression(leftExpression);
binExp.setRightExpression(rightExpression);
leftExpression = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression MultiplicativeExpression() throws ParseException {Expression result = null;
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
String commentBeginBracket = null;
if (jj_2_23(2147483647)) {
leftExpression = BitwiseXor();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
leftExpression = AdditiveExpression();
tk = jj_consume_token(RPAREN);
leftExpression = new Parenthesis(leftExpression);
((Parenthesis) leftExpression).setCommentBeginBracket(commentBeginBracket);
{if (tk.specialToken != null) {
((Parenthesis) leftExpression).setCommentEndBracket(tk.specialToken.image);
}
}
break;
}
default:
jj_la1[115] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
result = leftExpression;
label_23:
while (true) {
if (jj_2_24(2)) {
;
} else {
break label_23;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case MULTIPLY:{
tk = jj_consume_token(MULTIPLY);
result = new Multiplication();
if (tk.specialToken != null) {
((Multiplication) result).setComment(tk.specialToken.image);
}
break;
}
case DIVIDE:{
tk = jj_consume_token(DIVIDE);
result = new Division();
if (tk.specialToken != null) {
((Division) result).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[116] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (jj_2_25(2147483647)) {
rightExpression = BitwiseXor();
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBracket = tk.specialToken.image;
}
rightExpression = AdditiveExpression();
tk = jj_consume_token(RPAREN);
rightExpression = new Parenthesis(rightExpression);
((Parenthesis) rightExpression).setCommentBeginBracket(commentBeginBracket);
{if (tk.specialToken != null) {
((Parenthesis) rightExpression).setCommentEndBracket(tk.specialToken.image);
}
}
break;
}
default:
jj_la1[117] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
BinaryExpression binExp = (BinaryExpression) result;
binExp.setLeftExpression(leftExpression);
binExp.setRightExpression(rightExpression);
leftExpression = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression BitwiseXor() throws ParseException {Expression result = null;
Expression leftExpression = null;
Expression rightExpression = null;
Token tk = null;
String commentXor = null;
leftExpression = PrimaryExpression();
result = leftExpression;
label_24:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case XOR:{
;
break;
}
default:
jj_la1[118] = jj_gen;
break label_24;
}
tk = jj_consume_token(XOR);
if (tk.specialToken != null) {
commentXor=tk.specialToken.image;
}
rightExpression = PrimaryExpression();
BitwiseXor binExp = new BitwiseXor();
if (commentXor != null) {binExp.setComment(commentXor);}
binExp.setLeftExpression(leftExpression);
binExp.setRightExpression(rightExpression);
result = binExp;
leftExpression = result;
}
{if ("" != null) return result;}
throw new Error("Missing return statement in function");
}
final public Expression PrimaryExpression() throws ParseException {Expression retval = null;
Token token = null;
boolean isInverse = false;
String tmp = "";
SubSelect subSel = null;
String commentBeginBrakcet = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NULL:{
tk = jj_consume_token(K_NULL);
retval = new NullValue();
if (tk.specialToken != null) {
((NullValue) retval).setComment(tk.specialToken.image);
}
break;
}
case K_CASE:{
retval = CaseWhenExpression();
break;
}
case HOOK:{
tk = jj_consume_token(HOOK);
retval = new JdbcParameter();
if (tk.specialToken != null) {
((JdbcParameter) retval).setComment(tk.specialToken.image);
}
break;
}
case COLON:{
tk = jj_consume_token(COLON);
token = jj_consume_token(S_IDENTIFIER);
retval = new NamedParameter(token.image);
if (tk.specialToken != null) {
((NamedParameter) retval).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[131] = jj_gen;
if (jj_2_26(2147483647)) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
isInverse = true;
break;
}
default:
jj_la1[119] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[120] = jj_gen;
;
}
retval = Function();
} else if (jj_2_27(2147483647)) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
tmp = "-";
break;
}
default:
jj_la1[121] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[122] = jj_gen;
;
}
token = jj_consume_token(S_DOUBLE);
retval = new DoubleValue(tmp+token.image);
if (token.specialToken != null) {
((DoubleValue) retval).setComment(token.specialToken.image);
}
} else if (jj_2_28(2147483647)) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
tmp = "-";
break;
}
default:
jj_la1[123] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[124] = jj_gen;
;
}
token = jj_consume_token(S_INTEGER);
retval = new LongValue(tmp+token.image);
if (token.specialToken != null) {
((LongValue) retval).setComment(token.specialToken.image);
}
} else if (jj_2_29(2)) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
isInverse = true;
break;
}
default:
jj_la1[125] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[126] = jj_gen;
;
}
retval = Column();
} else if (jj_2_30(2)) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
isInverse = true;
break;
}
default:
jj_la1[127] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[128] = jj_gen;
;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
retval = PrimaryExpression();
tk = jj_consume_token(RPAREN);
retval = new Parenthesis(retval);
((Parenthesis) retval).setCommentBeginBracket(commentBeginBrakcet);
{if (tk.specialToken != null) {
((Parenthesis) retval).setCommentEndBracket(tk.specialToken.image);
}
}
} else {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_CHAR_LITERAL:{
token = jj_consume_token(S_CHAR_LITERAL);
retval = new StringValue(token.image);
if (token.specialToken != null) {
((StringValue) retval).setComment(token.specialToken.image);
}
break;
}
case LPAREN:
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:
case MINUS:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ADD:{
jj_consume_token(ADD);
break;
}
case MINUS:{
jj_consume_token(MINUS);
isInverse = true;
break;
}
default:
jj_la1[129] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[130] = jj_gen;
;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
commentBeginBrakcet=tk.specialToken.image;
}
subSel = SubSelect();
subSel.setCommentBeginBracket(commentBeginBrakcet);
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
subSel.setCommentEndBracket(tk.specialToken.image);
}
retval = subSel;
break;
}
case DATELITERAL:{
tk = jj_consume_token(DATELITERAL);
token = jj_consume_token(S_CHAR_LITERAL);
jj_consume_token(LITERALEND);
retval = new DateValue(token.image);
if (tk.specialToken != null) {
((DateValue) retval).setComment(tk.specialToken.image);
}
break;
}
case TIMELITERAL:{
tk = jj_consume_token(TIMELITERAL);
token = jj_consume_token(S_CHAR_LITERAL);
jj_consume_token(LITERALEND);
retval = new TimeValue(token.image);
if (tk.specialToken != null) {
((TimeValue) retval).setComment(tk.specialToken.image);
}
break;
}
case TIMESTAMPLITERAL:{
tk = jj_consume_token(TIMESTAMPLITERAL);
token = jj_consume_token(S_CHAR_LITERAL);
jj_consume_token(LITERALEND);
retval = new TimestampValue(token.image);
if (tk.specialToken != null) {
((TimestampValue) retval).setComment(tk.specialToken.image);
}
break;
}
default:
jj_la1[132] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
if (isInverse) {
retval = new InverseExpression(retval);
}
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Expression CaseWhenExpression() throws ParseException {CaseExpression caseExp = new CaseExpression();
Expression switchExp = null;
WhenClause clause;
List whenClauses = new ArrayList();
Expression elseExp = null;
Token tk = null;
tk = jj_consume_token(K_CASE);
if (tk.specialToken != null) {
caseExp.setCommentCase(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHEN:{
label_25:
while (true) {
clause = WhenThenSearchCondition();
whenClauses.add(clause);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHEN:{
;
break;
}
default:
jj_la1[133] = jj_gen;
break label_25;
}
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ELSE:{
tk = jj_consume_token(K_ELSE);
if (tk.specialToken != null) {
caseExp.setCommentElse(tk.specialToken.image);
}
elseExp = PrimaryExpression();
break;
}
default:
jj_la1[134] = jj_gen;
;
}
break;
}
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
switchExp = PrimaryExpression();
label_26:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_WHEN:{
;
break;
}
default:
jj_la1[135] = jj_gen;
break label_26;
}
clause = WhenThenValue();
whenClauses.add(clause);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ELSE:{
tk = jj_consume_token(K_ELSE);
if (tk.specialToken != null) {
caseExp.setCommentElse(tk.specialToken.image);
}
elseExp = PrimaryExpression();
break;
}
default:
jj_la1[136] = jj_gen;
;
}
break;
}
default:
jj_la1[137] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
tk = jj_consume_token(K_END);
if (tk.specialToken != null) {
caseExp.setCommentEnd(tk.specialToken.image);
}
caseExp.setSwitchExpression(switchExp);
caseExp.setWhenClauses(whenClauses);
caseExp.setElseExpression(elseExp);
{if ("" != null) return caseExp;}
throw new Error("Missing return statement in function");
}
final public WhenClause WhenThenSearchCondition() throws ParseException {WhenClause whenThen = new WhenClause();
Expression whenExp = null;
Expression thenExp = null;
Token tk = null;
tk = jj_consume_token(K_WHEN);
if (tk.specialToken != null) {
whenThen.setCommentWhen(tk.specialToken.image);
}
whenExp = Expression();
tk = jj_consume_token(K_THEN);
if (tk.specialToken != null) {
whenThen.setCommentThen(tk.specialToken.image);
}
thenExp = SimpleExpression();
whenThen.setWhenExpression(whenExp);
whenThen.setThenExpression(thenExp);
{if ("" != null) return whenThen;}
throw new Error("Missing return statement in function");
}
final public WhenClause WhenThenValue() throws ParseException {WhenClause whenThen = new WhenClause();
Expression whenExp = null;
Expression thenExp = null;
Token tk = null;
tk = jj_consume_token(K_WHEN);
if (tk.specialToken != null) {
whenThen.setCommentWhen(tk.specialToken.image);
}
whenExp = PrimaryExpression();
tk = jj_consume_token(K_THEN);
if (tk.specialToken != null) {
whenThen.setCommentThen(tk.specialToken.image);
}
thenExp = SimpleExpression();
whenThen.setWhenExpression(whenExp);
whenThen.setThenExpression(thenExp);
{if ("" != null) return whenThen;}
throw new Error("Missing return statement in function");
}
final public Function Function() throws ParseException {Function retval = new Function();
String funcName = null;
String tmp = null;
ExpressionList expressionList = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case ESCAPEDLITEARL:{
tk = jj_consume_token(ESCAPEDLITEARL);
retval.setEscaped(true);
if (tk.specialToken != null) {
retval.setCommentBeginEscaped(tk.specialToken.image);
}
break;
}
default:
jj_la1[138] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:
case S_QUOTED_IDENTIFIER:{
funcName = RelObjectName();
if (token.specialToken != null) {
retval.setCommentName(token.specialToken.image);
}
break;
}
case K_REPLACE:{
// workaround for replace(string) function (name clash with mysql REPLACE expression)
tk = jj_consume_token(K_REPLACE);
funcName = "REPLACE";
if (tk.specialToken != null) {
retval.setCommentName(tk.specialToken.image);
}
break;
}
default:
jj_la1[139] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case DOT:{
jj_consume_token(DOT);
tmp = RelObjectName();
funcName+= "." + tmp;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case DOT:{
jj_consume_token(DOT);
tmp = RelObjectName();
funcName+= "." + tmp;
break;
}
default:
jj_la1[140] = jj_gen;
;
}
break;
}
default:
jj_la1[141] = jj_gen;
;
}
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
retval.setCommentBeginBracket(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_NULL:
case K_CASE:
case K_REPLACE:
case K_DISTINCT:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case MULTIPLY:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_ALL:
case K_DISTINCT:{
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_DISTINCT:{
tk = jj_consume_token(K_DISTINCT);
retval.setDistinct(true);
if (tk.specialToken != null) {
retval.setCommentDistinct(tk.specialToken.image);
}
break;
}
case K_ALL:{
tk = jj_consume_token(K_ALL);
retval.setAllColumns(true);
if (tk.specialToken != null) {
retval.setCommentAll(tk.specialToken.image);
}
break;
}
default:
jj_la1[142] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[143] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_NULL:
case K_CASE:
case K_REPLACE:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case S_QUOTED_IDENTIFIER:
case LPAREN:
case HOOK:
case ADD:
case MINUS:
case COLON:
case DATELITERAL:
case TIMELITERAL:
case TIMESTAMPLITERAL:
case ESCAPEDLITEARL:{
expressionList = SimpleExpressionList();
break;
}
case MULTIPLY:{
tk = jj_consume_token(MULTIPLY);
retval.setAllColumns(true);
if (tk.specialToken != null) {
retval.setCommentAllColumns(tk.specialToken.image);
}
break;
}
default:
jj_la1[144] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
}
default:
jj_la1[145] = jj_gen;
;
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
retval.setCommentEndBracket(tk.specialToken.image);
if (expressionList != null) {
expressionList.setCommentEndBracket(tk.specialToken.image);
}
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LITERALEND:{
tk = jj_consume_token(LITERALEND);
if (tk.specialToken != null) {
retval.setCommentEndEscaped(tk.specialToken.image);
}
break;
}
default:
jj_la1[146] = jj_gen;
;
}
retval.setParameters(expressionList);
retval.setName(funcName);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public SubSelect SubSelect() throws ParseException {SelectBody selectBody = null;
selectBody = SelectBody();
SubSelect subSelect = new SubSelect();
subSelect.setSelectBody(selectBody);
{if ("" != null) return subSelect;}
throw new Error("Missing return statement in function");
}
final public CreateTable CreateTable() throws ParseException {CreateTable createTable = new CreateTable();
Table table = null;
ArrayList columnDefinitions = new ArrayList();
List columnSpecs = null;
List commentColumnSpecs = null;
List tableOptions = new ArrayList();
Token columnName;
Token tk = null;
Token tk2 = null;
Token tk3 = null;
ColDataType colDataType = null;
String stringList = null;
ColumnDefinition coldef = null;
List indexes = new ArrayList();
List commentsCommaIndexes = new ArrayList();
List commentTableOptions = new ArrayList();
List colNames = null;
Index index = null;
String parameter = null;
String commentColName = null;
Token tks = null;
List createOptions = new ArrayList();
List commentCreateOptions = new ArrayList();
tks = jj_consume_token(K_CREATE);
if (tks.specialToken != null) {
createTable.setComment(tks.specialToken.image);
}
label_27:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_KEY:
case K_NOT:
case K_NULL:
case K_PRIMARY:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case EQUALS:
case LPAREN:{
;
break;
}
default:
jj_la1[147] = jj_gen;
break label_27;
}
parameter = CreateParameter(commentCreateOptions);
createOptions.add(parameter);
}
tks = jj_consume_token(K_TABLE);
if (tks.specialToken != null) {
createTable.setCommentTable(tks.specialToken.image);
}
table = Table();
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case LPAREN:{
tks = jj_consume_token(LPAREN);
if (tks.specialToken != null) {
createTable.setCommentBeginBracket(tks.specialToken.image);
}
columnName = jj_consume_token(S_IDENTIFIER);
if (columnName.specialToken != null) {
commentColName=columnName.specialToken.image;
}
colDataType = ColDataType();
columnSpecs = new ArrayList();
commentColumnSpecs = new ArrayList();
label_28:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_KEY:
case K_NOT:
case K_NULL:
case K_PRIMARY:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case EQUALS:
case LPAREN:{
;
break;
}
default:
jj_la1[148] = jj_gen;
break label_28;
}
parameter = CreateParameter(commentColumnSpecs);
columnSpecs.add(parameter);
}
coldef = new ColumnDefinition();
coldef.setCommentName(commentColName);
coldef.setColumnName(columnName.image);
coldef.setColDataType(colDataType);
if (columnSpecs.size() > 0) {
coldef.setColumnSpecStrings(columnSpecs);
coldef.setCommentsSpec(commentColumnSpecs);
}
columnDefinitions.add(coldef);
label_29:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[149] = jj_gen;
break label_29;
}
tks = jj_consume_token(COMMA);
if (tks.specialToken != null) {
commentsCommaIndexes.add(tks.specialToken.image);
} else {commentsCommaIndexes.add("");}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_INDEX:{
tk = jj_consume_token(K_INDEX);
tk3 = jj_consume_token(S_IDENTIFIER);
index = new Index();
colNames = ColumnsNamesList(index);
if (tk.specialToken != null) {
index.setCommentType(tk.specialToken.image);
}
index.setType(tk.image);
if (tk3.specialToken != null) {
index.setCommentName(tk3.specialToken.image);
}
index.setColumnsNames(colNames);
index.setName(tk3.image);
indexes.add(index);
break;
}
case K_PRIMARY:{
tk = jj_consume_token(K_PRIMARY);
tk2 = jj_consume_token(K_KEY);
index = new Index();
colNames = ColumnsNamesList(index);
if (tk.specialToken != null) {
index.setCommentType(tk.specialToken.image);
}
index.setType(tk.image + " "+ tk2.image);
index.setKey(true);
if (tk2.specialToken != null) {
index.setCommentKey(tk2.specialToken.image);
}
index.setColumnsNames(colNames);
indexes.add(index);
break;
}
case K_KEY:{
tk = jj_consume_token(K_KEY);
tk3 = jj_consume_token(S_IDENTIFIER);
index = new Index();
colNames = ColumnsNamesList(index);
if (tk.specialToken != null) {
index.setCommentType(tk.specialToken.image);
}
index.setType(tk.image);
if (tk3.specialToken != null) {
index.setCommentName(tk3.specialToken.image);
}
index.setName(tk3.image);
index.setColumnsNames(colNames);
indexes.add(index);
break;
}
case S_IDENTIFIER:{
columnName = jj_consume_token(S_IDENTIFIER);
if (columnName.specialToken != null) {
commentColName=columnName.specialToken.image;
}
colDataType = ColDataType();
columnSpecs = new ArrayList();
commentColumnSpecs = new ArrayList();
label_30:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_KEY:
case K_NOT:
case K_NULL:
case K_PRIMARY:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case EQUALS:
case LPAREN:{
;
break;
}
default:
jj_la1[150] = jj_gen;
break label_30;
}
parameter = CreateParameter(commentColumnSpecs);
columnSpecs.add(parameter);
}
coldef = new ColumnDefinition();
coldef.setCommentName(commentColName);
coldef.setColumnName(columnName.image);
coldef.setColDataType(colDataType);
if (columnSpecs.size() > 0) {
coldef.setColumnSpecStrings(columnSpecs);
coldef.setCommentsSpec(commentColumnSpecs);
}
columnDefinitions.add(coldef);
break;
}
default:
jj_la1[151] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
tks = jj_consume_token(RPAREN);
if (tks.specialToken != null) {
createTable.setCommentEndBracket(tks.specialToken.image);
}
label_31:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case K_KEY:
case K_NOT:
case K_NULL:
case K_PRIMARY:
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:
case EQUALS:
case LPAREN:{
;
break;
}
default:
jj_la1[152] = jj_gen;
break label_31;
}
parameter = CreateParameter(commentTableOptions);
tableOptions.add(parameter);
}
break;
}
default:
jj_la1[153] = jj_gen;
;
}
createTable.setTable(table);
if (indexes.size() > 0) {
createTable.setIndexes(indexes);
createTable.setCommentCommaIndexes(commentsCommaIndexes);
}
if (tableOptions.size() > 0) {
createTable.setTableOptionsStrings(tableOptions);
createTable.setCommentTableOptions(commentTableOptions);
}
if (createOptions.size() > 0) {
createTable.setCreateOptions(createOptions);
createTable.setCommentCreateOptions(commentCreateOptions);
}
if (columnDefinitions.size() > 0)
createTable.setColumnDefinitions(columnDefinitions);
{if ("" != null) return createTable;}
throw new Error("Missing return statement in function");
}
final public ColDataType ColDataType() throws ParseException {ColDataType colDataType = new ColDataType();
Token tk = null;
ArrayList argumentsStringList = new ArrayList();
ArrayList commentsValue = new ArrayList();
ArrayList commentsComma = new ArrayList();
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {
colDataType.setCommentType(tk.specialToken.image);
}
colDataType.setDataType(tk.image);
if (jj_2_31(2)) {
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
colDataType.setCommentBeginBracket(tk.specialToken.image);
}
label_32:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:
case S_CHAR_LITERAL:{
;
break;
}
default:
jj_la1[154] = jj_gen;
break label_32;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
tk = jj_consume_token(S_INTEGER);
break;
}
case S_CHAR_LITERAL:{
tk = jj_consume_token(S_CHAR_LITERAL);
break;
}
default:
jj_la1[155] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (tk.specialToken != null) {
commentsValue.add(tk.specialToken.image);
} else {commentsValue.add("");}
argumentsStringList.add(tk.image);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentsComma.add(tk.specialToken.image);
} else {commentsComma.add("");}
/*argumentsStringList.add(",");*/
break;
}
default:
jj_la1[156] = jj_gen;
;
}
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
colDataType.setCommentEndBracket(tk.specialToken.image);
}
} else {
;
}
if (argumentsStringList.size() > 0)
{ colDataType.setArgumentsStringList(argumentsStringList); }
colDataType.setCommentsValue(commentsValue);
colDataType.setCommentsComma(commentsComma);
{if ("" != null) return colDataType;}
throw new Error("Missing return statement in function");
}
final public String CreateParameter(List comments) throws ParseException {String retval = null;
Token tk = null;
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:{
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case K_NULL:{
tk = jj_consume_token(K_NULL);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case K_NOT:{
tk = jj_consume_token(K_NOT);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case K_PRIMARY:{
tk = jj_consume_token(K_PRIMARY);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case K_KEY:{
tk = jj_consume_token(K_KEY);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case S_CHAR_LITERAL:{
tk = jj_consume_token(S_CHAR_LITERAL);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case S_INTEGER:{
tk = jj_consume_token(S_INTEGER);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case S_DOUBLE:{
tk = jj_consume_token(S_DOUBLE);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case EQUALS:{
tk = jj_consume_token(EQUALS);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval = tk.image;
break;
}
case LPAREN:{
retval = AList();
comments.add("");
break;
}
default:
jj_la1[157] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public String AList() throws ParseException {StringBuilder retval = new StringBuilder("");
Token tk = null;
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
retval.append(tk.specialToken.image).append(" ");
}
retval.append("(");
label_33:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_DOUBLE:
case S_INTEGER:
case S_IDENTIFIER:
case S_CHAR_LITERAL:{
;
break;
}
default:
jj_la1[158] = jj_gen;
break label_33;
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_INTEGER:{
tk = jj_consume_token(S_INTEGER);
break;
}
case S_DOUBLE:{
tk = jj_consume_token(S_DOUBLE);
break;
}
case S_CHAR_LITERAL:{
tk = jj_consume_token(S_CHAR_LITERAL);
break;
}
case S_IDENTIFIER:{
tk = jj_consume_token(S_IDENTIFIER);
break;
}
default:
jj_la1[159] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if (tk.specialToken != null) {
retval.append(" ").append(tk.specialToken.image).append(" ");
}
retval.append(tk.image);
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
retval.append(" ").append(tk.specialToken.image).append(" ");
}
retval.append(",");
break;
}
default:
jj_la1[160] = jj_gen;
;
}
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
retval.append(" ").append(tk.specialToken.image).append(" ");
}
retval.append(")");
{if ("" != null) return retval.toString();}
throw new Error("Missing return statement in function");
}
final public List ColumnsNamesList(Index idx) throws ParseException {List retval = new ArrayList();
List comments = new ArrayList();
List commentsComma = new ArrayList();
Token tk = null;
tk = jj_consume_token(LPAREN);
if (tk.specialToken != null) {
idx.setCommentBeginBracket(tk.specialToken.image);
}
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval.add(tk.image);
label_34:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case COMMA:{
;
break;
}
default:
jj_la1[161] = jj_gen;
break label_34;
}
tk = jj_consume_token(COMMA);
if (tk.specialToken != null) {
commentsComma.add(tk.specialToken.image);
} else {commentsComma.add("");}
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {
comments.add(tk.specialToken.image);
} else {comments.add("");}
retval.add(tk.image);
}
tk = jj_consume_token(RPAREN);
if (tk.specialToken != null) {
idx.setCommentEndBracket(tk.specialToken.image);
}
idx.setCommentsComma(commentsComma);
idx.setCommentsValue(comments);
{if ("" != null) return retval;}
throw new Error("Missing return statement in function");
}
final public Drop Drop() throws ParseException {Drop drop = new Drop();
Token tk = null;
List dropArgs = new ArrayList();
List commentArgs = new ArrayList();
tk = jj_consume_token(K_DROP);
if (tk.specialToken != null) {
drop.setComment(tk.specialToken.image);
}
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:{
tk = jj_consume_token(S_IDENTIFIER);
break;
}
case K_TABLE:{
tk = jj_consume_token(K_TABLE);
break;
}
case K_INDEX:{
tk = jj_consume_token(K_INDEX);
break;
}
default:
jj_la1[162] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
drop.setType(tk.image);
if (tk.specialToken != null) {drop.setTypeComment(tk.specialToken.image); }
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {drop.setNameComment(tk.specialToken.image);}
drop.setName(tk.image);
label_35:
while (true) {
switch ((jj_ntk==-1)?jj_ntk_f():jj_ntk) {
case S_IDENTIFIER:{
;
break;
}
default:
jj_la1[163] = jj_gen;
break label_35;
}
tk = jj_consume_token(S_IDENTIFIER);
if (tk.specialToken != null) {commentArgs.add(tk.specialToken.image);}
else {commentArgs.add("");}
dropArgs.add(tk.image);
}
if (dropArgs.size() > 0) {
drop.setParameters(dropArgs);
drop.setParametersComment(commentArgs);
}
{if ("" != null) return drop;}
throw new Error("Missing return statement in function");
}
final public Truncate Truncate() throws ParseException {Truncate truncate = new Truncate();
Table table;
Token tk = null;
tk = jj_consume_token(K_TRUNCATE);
if (tk.specialToken != null) {
truncate.setComment(tk.specialToken.image);
}
tk = jj_consume_token(K_TABLE);
if (tk.specialToken != null) {
truncate.setCommentTable(tk.specialToken.image);
}
table = Table();
truncate.setTable(table);
{if ("" != null) return truncate;}
throw new Error("Missing return statement in function");
}
private boolean jj_2_1(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_1(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(0, xla); }
}
private boolean jj_2_2(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_2(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(1, xla); }
}
private boolean jj_2_3(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_3(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(2, xla); }
}
private boolean jj_2_4(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_4(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(3, xla); }
}
private boolean jj_2_5(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_5(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(4, xla); }
}
private boolean jj_2_6(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_6(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(5, xla); }
}
private boolean jj_2_7(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_7(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(6, xla); }
}
private boolean jj_2_8(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_8(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(7, xla); }
}
private boolean jj_2_9(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_9(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(8, xla); }
}
private boolean jj_2_10(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_10(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(9, xla); }
}
private boolean jj_2_11(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_11(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(10, xla); }
}
private boolean jj_2_12(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_12(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(11, xla); }
}
private boolean jj_2_13(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_13(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(12, xla); }
}
private boolean jj_2_14(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_14(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(13, xla); }
}
private boolean jj_2_15(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_15(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(14, xla); }
}
private boolean jj_2_16(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_16(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(15, xla); }
}
private boolean jj_2_17(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_17(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(16, xla); }
}
private boolean jj_2_18(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_18(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(17, xla); }
}
private boolean jj_2_19(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_19(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(18, xla); }
}
private boolean jj_2_20(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_20(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(19, xla); }
}
private boolean jj_2_21(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_21(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(20, xla); }
}
private boolean jj_2_22(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_22(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(21, xla); }
}
private boolean jj_2_23(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_23(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(22, xla); }
}
private boolean jj_2_24(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_24(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(23, xla); }
}
private boolean jj_2_25(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_25(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(24, xla); }
}
private boolean jj_2_26(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_26(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(25, xla); }
}
private boolean jj_2_27(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_27(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(26, xla); }
}
private boolean jj_2_28(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_28(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(27, xla); }
}
private boolean jj_2_29(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_29(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(28, xla); }
}
private boolean jj_2_30(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_30(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(29, xla); }
}
private boolean jj_2_31(int xla)
{
jj_la = xla; jj_lastpos = jj_scanpos = token;
try { return !jj_3_31(); }
catch(LookaheadSuccess ls) { return true; }
finally { jj_save(30, xla); }
}
private boolean jj_3R_275()
{
if (jj_3R_187()) return true;
return false;
}
private boolean jj_3R_219()
{
if (jj_scan_token(K_DISTINCT)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_246()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_231()
{
if (jj_3R_85()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_257()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_257()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_277()) {
jj_scanpos = xsp;
if (jj_3R_278()) return true;
}
return false;
}
private boolean jj_3R_205()
{
if (jj_scan_token(GE)) return true;
return false;
}
private boolean jj_3R_39()
{
if (jj_3R_73()) return true;
if (jj_scan_token(DOT)) return true;
if (jj_scan_token(MULTIPLY)) return true;
return false;
}
private boolean jj_3R_85()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_145()) {
jj_scanpos = xsp;
if (jj_3R_146()) return true;
}
return false;
}
private boolean jj_3R_245()
{
if (jj_3R_69()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_272()) { jj_scanpos = xsp; break; }
}
xsp = jj_scanpos;
if (jj_3R_273()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_204()
{
if (jj_scan_token(EQUALS)) return true;
return false;
}
private boolean jj_3R_160()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(17)) {
jj_scanpos = xsp;
if (jj_3R_219()) return true;
}
return false;
}
private boolean jj_3_6()
{
if (jj_3R_39()) return true;
return false;
}
private boolean jj_3R_273()
{
if (jj_scan_token(K_ELSE)) return true;
if (jj_3R_69()) return true;
return false;
}
private boolean jj_3R_272()
{
if (jj_3R_282()) return true;
return false;
}
private boolean jj_3R_203()
{
if (jj_scan_token(LT)) return true;
return false;
}
private boolean jj_3R_251()
{
if (jj_3R_85()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_275()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_250()
{
if (jj_3R_39()) return true;
return false;
}
private boolean jj_3R_202()
{
if (jj_scan_token(GT)) return true;
return false;
}
private boolean jj_3R_118()
{
if (jj_scan_token(K_SELECT)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_160()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_161()) jj_scanpos = xsp;
if (jj_3R_162()) return true;
xsp = jj_scanpos;
if (jj_3R_163()) jj_scanpos = xsp;
if (jj_scan_token(K_FROM)) return true;
if (jj_3R_74()) return true;
if (jj_3R_164()) return true;
xsp = jj_scanpos;
if (jj_3R_165()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_166()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_167()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_168()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_169()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_170()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_70()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(73)) {
jj_scanpos = xsp;
if (jj_scan_token(81)) return true;
}
return false;
}
private boolean jj_3R_271()
{
if (jj_scan_token(K_ELSE)) return true;
if (jj_3R_69()) return true;
return false;
}
private boolean jj_3R_270()
{
if (jj_3R_281()) return true;
return false;
}
private boolean jj_3R_244()
{
Token xsp;
if (jj_3R_270()) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_270()) { jj_scanpos = xsp; break; }
}
xsp = jj_scanpos;
if (jj_3R_271()) jj_scanpos = xsp;
return false;
}
private boolean jj_3_5()
{
if (jj_3R_38()) return true;
return false;
}
private boolean jj_3_31()
{
if (jj_scan_token(LPAREN)) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_70()) { jj_scanpos = xsp; break; }
}
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_232()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_231()) return true;
return false;
}
private boolean jj_3R_249()
{
if (jj_scan_token(MULTIPLY)) return true;
return false;
}
private boolean jj_3R_221()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_249()) {
jj_scanpos = xsp;
if (jj_3R_250()) {
jj_scanpos = xsp;
if (jj_3R_251()) return true;
}
}
return false;
}
private boolean jj_3R_200()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_155()
{
if (jj_scan_token(K_CASE)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_244()) {
jj_scanpos = xsp;
if (jj_3R_245()) return true;
}
if (jj_scan_token(K_END)) return true;
return false;
}
private boolean jj_3R_148()
{
if (jj_3R_38()) return true;
return false;
}
private boolean jj_3R_149()
{
if (jj_3R_118()) return true;
return false;
}
private boolean jj_3R_199()
{
if (jj_scan_token(K_PRIOR)) return true;
return false;
}
private boolean jj_3R_269()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(19)) {
jj_scanpos = xsp;
if (jj_scan_token(39)) return true;
}
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_50()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_143()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_199()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_200()) jj_scanpos = xsp;
if (jj_3R_201()) return true;
xsp = jj_scanpos;
if (jj_3R_202()) {
jj_scanpos = xsp;
if (jj_3R_203()) {
jj_scanpos = xsp;
if (jj_3R_204()) {
jj_scanpos = xsp;
if (jj_3R_205()) {
jj_scanpos = xsp;
if (jj_3R_206()) {
jj_scanpos = xsp;
if (jj_3R_207()) {
jj_scanpos = xsp;
if (jj_3R_208()) return true;
}
}
}
}
}
}
xsp = jj_scanpos;
if (jj_3R_209()) jj_scanpos = xsp;
if (jj_3R_201()) return true;
return false;
}
private boolean jj_3R_177()
{
if (jj_scan_token(K_ORDER)) return true;
if (jj_scan_token(K_BY)) return true;
if (jj_3R_231()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_232()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_92()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_148()) {
jj_scanpos = xsp;
if (jj_3R_149()) return true;
}
return false;
}
private boolean jj_3_14()
{
if (jj_3R_45()) return true;
return false;
}
private boolean jj_3R_222()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_221()) return true;
return false;
}
private boolean jj_3R_117()
{
if (jj_scan_token(TIMESTAMPLITERAL)) return true;
if (jj_scan_token(S_CHAR_LITERAL)) return true;
if (jj_scan_token(LITERALEND)) return true;
return false;
}
private boolean jj_3R_217()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_162()
{
if (jj_3R_221()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_222()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_79()
{
if (jj_3R_143()) return true;
return false;
}
private boolean jj_3R_116()
{
if (jj_scan_token(TIMELITERAL)) return true;
if (jj_scan_token(S_CHAR_LITERAL)) return true;
if (jj_scan_token(LITERALEND)) return true;
return false;
}
private boolean jj_3R_158()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_217()) return true;
}
return false;
}
private boolean jj_3R_78()
{
if (jj_3R_45()) return true;
return false;
}
private boolean jj_3R_44()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_78()) {
jj_scanpos = xsp;
if (jj_3R_79()) return true;
}
return false;
}
private boolean jj_3R_115()
{
if (jj_scan_token(DATELITERAL)) return true;
if (jj_scan_token(S_CHAR_LITERAL)) return true;
if (jj_scan_token(LITERALEND)) return true;
return false;
}
private boolean jj_3R_228()
{
if (jj_scan_token(K_HAVING)) return true;
if (jj_3R_238()) return true;
return false;
}
private boolean jj_3R_216()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_131()
{
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_268()
{
if (jj_scan_token(K_ALL)) return true;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_50()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_157()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_216()) return true;
}
return false;
}
private boolean jj_3R_215()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_218()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3_13()
{
if (jj_3R_44()) return true;
return false;
}
private boolean jj_3R_240()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_156()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_215()) return true;
}
return false;
}
private boolean jj_3R_159()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_218()) return true;
}
return false;
}
private boolean jj_3R_276()
{
if (jj_3R_187()) return true;
return false;
}
private boolean jj_3R_256()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_198()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_240()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_43()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_105()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_114()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_159()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_50()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_243()
{
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3_4()
{
if (jj_3R_37()) return true;
if (jj_scan_token(DOT)) return true;
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_103()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_242()
{
if (jj_3R_269()) return true;
return false;
}
private boolean jj_3R_73()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3_4()) {
jj_scanpos = xsp;
if (jj_3R_131()) return true;
}
return false;
}
private boolean jj_3_12()
{
if (jj_scan_token(K_AND)) return true;
return false;
}
private boolean jj_3R_241()
{
if (jj_3R_268()) return true;
return false;
}
private boolean jj_3R_197()
{
if (jj_3R_44()) return true;
return false;
}
private boolean jj_3R_68()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_105()) return true;
}
return false;
}
private boolean jj_3R_113()
{
if (jj_scan_token(S_CHAR_LITERAL)) return true;
return false;
}
private boolean jj_3R_67()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_3R_103()) return true;
}
return false;
}
private boolean jj_3R_201()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_241()) {
jj_scanpos = xsp;
if (jj_3R_242()) {
jj_scanpos = xsp;
if (jj_3R_243()) return true;
}
}
return false;
}
private boolean jj_3R_227()
{
if (jj_scan_token(K_GROUP)) return true;
if (jj_scan_token(K_BY)) return true;
if (jj_3R_85()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_256()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_142()
{
if (jj_scan_token(K_AND)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_197()) {
jj_scanpos = xsp;
if (jj_3R_198()) return true;
}
return false;
}
private boolean jj_3R_252()
{
if (jj_3R_73()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_276()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_66()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_scan_token(113)) return true;
}
return false;
}
private boolean jj_3_28()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_66()) jj_scanpos = xsp;
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_212()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_65()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_scan_token(113)) return true;
}
return false;
}
private boolean jj_3_30()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_68()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_69()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_63()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(112)) {
jj_scanpos = xsp;
if (jj_scan_token(113)) return true;
}
return false;
}
private boolean jj_3_29()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_67()) jj_scanpos = xsp;
if (jj_3R_36()) return true;
return false;
}
private boolean jj_3_26()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_63()) jj_scanpos = xsp;
if (jj_3R_64()) return true;
return false;
}
private boolean jj_3R_274()
{
if (jj_scan_token(DOT)) return true;
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_147()
{
if (jj_3R_85()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_212()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3_27()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_65()) jj_scanpos = xsp;
if (jj_scan_token(S_DOUBLE)) return true;
return false;
}
private boolean jj_3R_37()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(78)) {
jj_scanpos = xsp;
if (jj_scan_token(82)) return true;
}
return false;
}
private boolean jj_3R_112()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_158()) jj_scanpos = xsp;
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_255()
{
if (jj_scan_token(K_NOCYCLE)) return true;
return false;
}
private boolean jj_3R_110()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_156()) jj_scanpos = xsp;
if (jj_3R_64()) return true;
return false;
}
private boolean jj_3R_111()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_157()) jj_scanpos = xsp;
if (jj_scan_token(S_DOUBLE)) return true;
return false;
}
private boolean jj_3_11()
{
if (jj_3R_44()) return true;
return false;
}
private boolean jj_3R_196()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_141()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_196()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_43()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_236()
{
if (jj_scan_token(K_DISTINCT)) return true;
return false;
}
private boolean jj_3R_109()
{
if (jj_scan_token(COLON)) return true;
if (jj_scan_token(S_IDENTIFIER)) return true;
return false;
}
private boolean jj_3R_140()
{
if (jj_3R_44()) return true;
return false;
}
private boolean jj_3R_76()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_140()) {
jj_scanpos = xsp;
if (jj_3R_141()) return true;
}
while (true) {
xsp = jj_scanpos;
if (jj_3R_142()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_108()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_235()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3R_184()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_235()) {
jj_scanpos = xsp;
if (jj_3R_236()) return true;
}
return false;
}
private boolean jj_3R_254()
{
if (jj_scan_token(K_START)) return true;
if (jj_scan_token(K_WITH)) return true;
if (jj_3R_238()) return true;
return false;
}
private boolean jj_3R_107()
{
if (jj_3R_155()) return true;
return false;
}
private boolean jj_3R_226()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_254()) jj_scanpos = xsp;
if (jj_scan_token(K_CONNECT)) return true;
if (jj_scan_token(K_BY)) return true;
xsp = jj_scanpos;
if (jj_3R_255()) jj_scanpos = xsp;
if (jj_3R_238()) return true;
return false;
}
private boolean jj_3R_104()
{
if (jj_scan_token(DOT)) return true;
if (jj_3R_37()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_274()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_183()
{
if (jj_scan_token(K_INTERSECT)) return true;
return false;
}
private boolean jj_3R_182()
{
if (jj_scan_token(K_EXCEPT)) return true;
return false;
}
private boolean jj_3R_106()
{
if (jj_scan_token(K_NULL)) return true;
return false;
}
private boolean jj_3_10()
{
if (jj_scan_token(K_OR)) return true;
return false;
}
private boolean jj_3R_239()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_36()) return true;
return false;
}
private boolean jj_3R_225()
{
if (jj_3R_238()) return true;
return false;
}
private boolean jj_3R_36()
{
if (jj_3R_37()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_104()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_130()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_181()) {
jj_scanpos = xsp;
if (jj_3R_182()) {
jj_scanpos = xsp;
if (jj_3R_183()) return true;
}
}
xsp = jj_scanpos;
if (jj_3R_184()) jj_scanpos = xsp;
if (jj_3R_118()) return true;
return false;
}
private boolean jj_3R_181()
{
if (jj_scan_token(K_UNION)) return true;
return false;
}
private boolean jj_3R_69()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_106()) {
jj_scanpos = xsp;
if (jj_3R_107()) {
jj_scanpos = xsp;
if (jj_3R_108()) {
jj_scanpos = xsp;
if (jj_3R_109()) {
jj_scanpos = xsp;
if (jj_3R_110()) {
jj_scanpos = xsp;
if (jj_3R_111()) {
jj_scanpos = xsp;
if (jj_3R_112()) {
jj_scanpos = xsp;
if (jj_3_29()) {
jj_scanpos = xsp;
if (jj_3_30()) {
jj_scanpos = xsp;
if (jj_3R_113()) {
jj_scanpos = xsp;
if (jj_3R_114()) {
jj_scanpos = xsp;
if (jj_3R_115()) {
jj_scanpos = xsp;
if (jj_3R_116()) {
jj_scanpos = xsp;
if (jj_3R_117()) return true;
}
}
}
}
}
}
}
}
}
}
}
}
}
return false;
}
private boolean jj_3R_180()
{
if (jj_scan_token(K_DISTINCT)) return true;
return false;
}
private boolean jj_3R_77()
{
if (jj_scan_token(K_OR)) return true;
if (jj_3R_76()) return true;
return false;
}
private boolean jj_3R_91()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_49()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_91()) jj_scanpos = xsp;
if (jj_scan_token(K_EXISTS)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_179()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3R_129()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_179()) {
jj_scanpos = xsp;
if (jj_3R_180()) return true;
}
return false;
}
private boolean jj_3R_128()
{
if (jj_scan_token(K_INTERSECT)) return true;
return false;
}
private boolean jj_3R_43()
{
if (jj_3R_76()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_77()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_60()
{
if (jj_scan_token(DIVIDE)) return true;
return false;
}
private boolean jj_3R_62()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_93()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_127()
{
if (jj_scan_token(K_EXCEPT)) return true;
return false;
}
private boolean jj_3R_195()
{
if (jj_scan_token(K_USING)) return true;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_36()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_239()) { jj_scanpos = xsp; break; }
}
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_126()
{
if (jj_scan_token(K_UNION)) return true;
return false;
}
private boolean jj_3R_96()
{
if (jj_scan_token(XOR)) return true;
if (jj_3R_69()) return true;
return false;
}
private boolean jj_3R_194()
{
if (jj_scan_token(K_ON)) return true;
if (jj_3R_238()) return true;
return false;
}
private boolean jj_3R_139()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_194()) {
jj_scanpos = xsp;
if (jj_3R_195()) return true;
}
return false;
}
private boolean jj_3R_90()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3_25()
{
if (jj_3R_58()) return true;
return false;
}
private boolean jj_3R_58()
{
if (jj_3R_69()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_96()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_267()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_238()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_138()
{
if (jj_scan_token(COMMA)) return true;
return false;
}
private boolean jj_3_9()
{
if (jj_3R_43()) return true;
return false;
}
private boolean jj_3R_48()
{
if (jj_3R_85()) return true;
if (jj_scan_token(K_IS)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_90()) jj_scanpos = xsp;
if (jj_scan_token(K_NULL)) return true;
return false;
}
private boolean jj_3R_125()
{
if (jj_3R_178()) return true;
return false;
}
private boolean jj_3R_124()
{
if (jj_3R_177()) return true;
return false;
}
private boolean jj_3R_61()
{
if (jj_3R_58()) return true;
return false;
}
private boolean jj_3R_137()
{
if (jj_scan_token(K_JOIN)) return true;
return false;
}
private boolean jj_3R_266()
{
if (jj_3R_43()) return true;
return false;
}
private boolean jj_3R_72()
{
if (jj_3R_118()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_126()) {
jj_scanpos = xsp;
if (jj_3R_127()) {
jj_scanpos = xsp;
if (jj_3R_128()) return true;
}
}
xsp = jj_scanpos;
if (jj_3R_129()) jj_scanpos = xsp;
if (jj_3R_118()) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_130()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_238()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_266()) {
jj_scanpos = xsp;
if (jj_3R_267()) return true;
}
return false;
}
private boolean jj_3R_193()
{
if (jj_scan_token(K_INNER)) return true;
return false;
}
private boolean jj_3R_230()
{
if (jj_scan_token(K_DISTINCT)) return true;
return false;
}
private boolean jj_3R_192()
{
if (jj_scan_token(K_OUTER)) return true;
return false;
}
private boolean jj_3R_248()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_229()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3R_176()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_229()) {
jj_scanpos = xsp;
if (jj_3R_230()) return true;
}
return false;
}
private boolean jj_3R_136()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_192()) {
jj_scanpos = xsp;
if (jj_3R_193()) return true;
}
return false;
}
private boolean jj_3_3()
{
if (jj_scan_token(LPAREN)) return true;
return false;
}
private boolean jj_3R_191()
{
if (jj_scan_token(K_NATURAL)) return true;
return false;
}
private boolean jj_3R_175()
{
if (jj_scan_token(K_INTERSECT)) return true;
return false;
}
private boolean jj_3R_59()
{
if (jj_scan_token(MULTIPLY)) return true;
return false;
}
private boolean jj_3R_211()
{
if (jj_scan_token(K_ESCAPE)) return true;
if (jj_scan_token(S_CHAR_LITERAL)) return true;
return false;
}
private boolean jj_3R_247()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_190()
{
if (jj_scan_token(K_FULL)) return true;
return false;
}
private boolean jj_3R_174()
{
if (jj_scan_token(K_EXCEPT)) return true;
return false;
}
private boolean jj_3R_280()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_56()
{
if (jj_scan_token(MINUS)) return true;
return false;
}
private boolean jj_3R_189()
{
if (jj_scan_token(K_RIGHT)) return true;
return false;
}
private boolean jj_3R_279()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_123()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_173()) {
jj_scanpos = xsp;
if (jj_3R_174()) {
jj_scanpos = xsp;
if (jj_3R_175()) return true;
}
}
xsp = jj_scanpos;
if (jj_3R_176()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_118()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_210()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_173()
{
if (jj_scan_token(K_UNION)) return true;
return false;
}
private boolean jj_3_24()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_59()) {
jj_scanpos = xsp;
if (jj_3R_60()) return true;
}
xsp = jj_scanpos;
if (jj_3R_61()) {
jj_scanpos = xsp;
if (jj_3R_62()) return true;
}
return false;
}
private boolean jj_3R_188()
{
if (jj_scan_token(K_LEFT)) return true;
return false;
}
private boolean jj_3R_144()
{
if (jj_3R_85()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_210()) jj_scanpos = xsp;
if (jj_scan_token(K_LIKE)) return true;
if (jj_3R_85()) return true;
xsp = jj_scanpos;
if (jj_3R_211()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_220()
{
if (jj_scan_token(K_TOP)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_247()) {
jj_scanpos = xsp;
if (jj_3R_248()) return true;
}
return false;
}
private boolean jj_3R_135()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_188()) {
jj_scanpos = xsp;
if (jj_3R_189()) {
jj_scanpos = xsp;
if (jj_3R_190()) {
jj_scanpos = xsp;
if (jj_3R_191()) return true;
}
}
}
return false;
}
private boolean jj_3R_75()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_135()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_136()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_137()) {
jj_scanpos = xsp;
if (jj_3R_138()) return true;
}
if (jj_3R_74()) return true;
xsp = jj_scanpos;
if (jj_3R_139()) jj_scanpos = xsp;
return false;
}
private boolean jj_3_23()
{
if (jj_3R_58()) return true;
return false;
}
private boolean jj_3R_265()
{
if (jj_scan_token(K_OFFSET)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_279()) {
jj_scanpos = xsp;
if (jj_3R_280()) return true;
}
return false;
}
private boolean jj_3R_264()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3R_95()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_93()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_172()
{
if (jj_scan_token(K_DISTINCT)) return true;
return false;
}
private boolean jj_3R_263()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_151()
{
if (jj_scan_token(DOT)) return true;
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_94()
{
if (jj_3R_58()) return true;
return false;
}
private boolean jj_3R_57()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_94()) {
jj_scanpos = xsp;
if (jj_3R_95()) return true;
}
while (true) {
xsp = jj_scanpos;
if (jj_3_24()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_171()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3R_122()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_171()) {
jj_scanpos = xsp;
if (jj_3R_172()) return true;
}
return false;
}
private boolean jj_3R_50()
{
if (jj_3R_92()) return true;
return false;
}
private boolean jj_3R_262()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_121()
{
if (jj_scan_token(K_INTERSECT)) return true;
return false;
}
private boolean jj_3R_89()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_120()
{
if (jj_scan_token(K_EXCEPT)) return true;
return false;
}
private boolean jj_3R_224()
{
if (jj_3R_75()) return true;
return false;
}
private boolean jj_3R_164()
{
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_224()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_47()
{
if (jj_3R_85()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_89()) jj_scanpos = xsp;
if (jj_scan_token(K_BETWEEN)) return true;
if (jj_3R_85()) return true;
if (jj_scan_token(K_AND)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_119()
{
if (jj_scan_token(K_UNION)) return true;
return false;
}
private boolean jj_3R_234()
{
if (jj_scan_token(K_LIMIT)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_262()) {
jj_scanpos = xsp;
if (jj_3R_263()) {
jj_scanpos = xsp;
if (jj_3R_264()) return true;
}
}
xsp = jj_scanpos;
if (jj_3R_265()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_102()
{
if (jj_scan_token(LITERALEND)) return true;
return false;
}
private boolean jj_3R_55()
{
if (jj_scan_token(ADD)) return true;
return false;
}
private boolean jj_3R_40()
{
if (jj_3R_74()) return true;
if (jj_3R_75()) return true;
return false;
}
private boolean jj_3R_261()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3_2()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_36()) return true;
return false;
}
private boolean jj_3R_214()
{
if (jj_scan_token(K_ALL)) return true;
return false;
}
private boolean jj_3_7()
{
if (jj_3R_40()) return true;
return false;
}
private boolean jj_3R_154()
{
if (jj_scan_token(MULTIPLY)) return true;
return false;
}
private boolean jj_3R_153()
{
if (jj_3R_147()) return true;
return false;
}
private boolean jj_3R_260()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_133()
{
if (jj_3R_73()) return true;
return false;
}
private boolean jj_3R_53()
{
if (jj_scan_token(BITWISEAND)) return true;
return false;
}
private boolean jj_3R_186()
{
if (jj_3R_50()) return true;
return false;
}
private boolean jj_3_22()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_55()) {
jj_scanpos = xsp;
if (jj_3R_56()) return true;
}
if (jj_3R_57()) return true;
return false;
}
private boolean jj_3_19()
{
if (jj_3R_50()) return true;
return false;
}
private boolean jj_3R_134()
{
if (jj_3R_187()) return true;
return false;
}
private boolean jj_3R_185()
{
if (jj_3R_40()) return true;
return false;
}
private boolean jj_3R_52()
{
if (jj_scan_token(BITWISEOR)) return true;
return false;
}
private boolean jj_3R_213()
{
if (jj_scan_token(K_DISTINCT)) return true;
return false;
}
private boolean jj_3R_152()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_213()) {
jj_scanpos = xsp;
if (jj_3R_214()) return true;
}
return false;
}
private boolean jj_3R_93()
{
if (jj_3R_57()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3_22()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_101()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_152()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_153()) {
jj_scanpos = xsp;
if (jj_3R_154()) return true;
}
return false;
}
private boolean jj_3R_88()
{
if (jj_3R_147()) return true;
return false;
}
private boolean jj_3R_233()
{
if (jj_scan_token(K_OFFSET)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_260()) {
jj_scanpos = xsp;
if (jj_3R_261()) return true;
}
return false;
}
private boolean jj_3R_71()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_118()) return true;
if (jj_scan_token(RPAREN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_119()) {
jj_scanpos = xsp;
if (jj_3R_120()) {
jj_scanpos = xsp;
if (jj_3R_121()) return true;
}
}
xsp = jj_scanpos;
if (jj_3R_122()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_118()) return true;
if (jj_scan_token(RPAREN)) return true;
while (true) {
xsp = jj_scanpos;
if (jj_3R_123()) { jj_scanpos = xsp; break; }
}
xsp = jj_scanpos;
if (jj_3R_124()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_125()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_87()
{
if (jj_3R_50()) return true;
return false;
}
private boolean jj_3R_259()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_100()
{
if (jj_scan_token(DOT)) return true;
if (jj_3R_37()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_151()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_42()
{
if (jj_scan_token(HOOK)) return true;
return false;
}
private boolean jj_3R_99()
{
if (jj_scan_token(K_REPLACE)) return true;
return false;
}
private boolean jj_3R_258()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_38()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_71()) {
jj_scanpos = xsp;
if (jj_3R_72()) return true;
}
return false;
}
private boolean jj_3R_41()
{
if (jj_scan_token(S_INTEGER)) return true;
return false;
}
private boolean jj_3R_98()
{
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_132()
{
if (jj_scan_token(LPAREN)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_185()) {
jj_scanpos = xsp;
if (jj_3R_186()) return true;
}
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_46()
{
if (jj_3R_85()) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_86()) jj_scanpos = xsp;
if (jj_scan_token(K_IN)) return true;
if (jj_scan_token(LPAREN)) return true;
xsp = jj_scanpos;
if (jj_3R_87()) {
jj_scanpos = xsp;
if (jj_3R_88()) return true;
}
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_86()
{
if (jj_scan_token(K_NOT)) return true;
return false;
}
private boolean jj_3R_97()
{
if (jj_scan_token(ESCAPEDLITEARL)) return true;
return false;
}
private boolean jj_3R_64()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_97()) jj_scanpos = xsp;
xsp = jj_scanpos;
if (jj_3R_98()) {
jj_scanpos = xsp;
if (jj_3R_99()) return true;
}
xsp = jj_scanpos;
if (jj_3R_100()) jj_scanpos = xsp;
if (jj_scan_token(LPAREN)) return true;
xsp = jj_scanpos;
if (jj_3R_101()) jj_scanpos = xsp;
if (jj_scan_token(RPAREN)) return true;
xsp = jj_scanpos;
if (jj_3R_102()) jj_scanpos = xsp;
return false;
}
private boolean jj_3R_74()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_132()) {
jj_scanpos = xsp;
if (jj_3R_133()) return true;
}
xsp = jj_scanpos;
if (jj_3R_134()) jj_scanpos = xsp;
return false;
}
private boolean jj_3_18()
{
if (jj_3R_49()) return true;
return false;
}
private boolean jj_3_17()
{
if (jj_3R_48()) return true;
return false;
}
private boolean jj_3_21()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_52()) {
jj_scanpos = xsp;
if (jj_3R_53()) return true;
}
if (jj_3R_54()) return true;
return false;
}
private boolean jj_3_16()
{
if (jj_3R_47()) return true;
return false;
}
private boolean jj_3_15()
{
if (jj_3R_46()) return true;
return false;
}
private boolean jj_3R_51()
{
if (jj_3R_54()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3_21()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_84()
{
if (jj_3R_144()) return true;
return false;
}
private boolean jj_3R_169()
{
if (jj_3R_177()) return true;
return false;
}
private boolean jj_3R_83()
{
if (jj_3R_49()) return true;
return false;
}
private boolean jj_3R_82()
{
if (jj_3R_48()) return true;
return false;
}
private boolean jj_3R_81()
{
if (jj_3R_47()) return true;
return false;
}
private boolean jj_3R_80()
{
if (jj_3R_46()) return true;
return false;
}
private boolean jj_3R_170()
{
if (jj_3R_178()) return true;
return false;
}
private boolean jj_3R_45()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_80()) {
jj_scanpos = xsp;
if (jj_3R_81()) {
jj_scanpos = xsp;
if (jj_3R_82()) {
jj_scanpos = xsp;
if (jj_3R_83()) {
jj_scanpos = xsp;
if (jj_3R_84()) return true;
}
}
}
}
return false;
}
private boolean jj_3_8()
{
if (jj_scan_token(K_LIMIT)) return true;
Token xsp;
xsp = jj_scanpos;
if (jj_3R_41()) {
jj_scanpos = xsp;
if (jj_3R_42()) return true;
}
if (jj_scan_token(COMMA)) return true;
xsp = jj_scanpos;
if (jj_3R_258()) {
jj_scanpos = xsp;
if (jj_3R_259()) return true;
}
return false;
}
private boolean jj_3R_168()
{
if (jj_3R_228()) return true;
return false;
}
private boolean jj_3R_167()
{
if (jj_3R_227()) return true;
return false;
}
private boolean jj_3R_166()
{
if (jj_3R_226()) return true;
return false;
}
private boolean jj_3R_282()
{
if (jj_scan_token(K_WHEN)) return true;
if (jj_3R_69()) return true;
if (jj_scan_token(K_THEN)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_253()
{
if (jj_scan_token(COMMA)) return true;
if (jj_3R_252()) return true;
return false;
}
private boolean jj_3R_165()
{
if (jj_scan_token(K_WHERE)) return true;
if (jj_3R_225()) return true;
return false;
}
private boolean jj_3R_150()
{
if (jj_scan_token(OR)) return true;
if (jj_3R_93()) return true;
return false;
}
private boolean jj_3R_223()
{
if (jj_scan_token(K_INTO)) return true;
if (jj_3R_252()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_253()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_178()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3_8()) {
jj_scanpos = xsp;
if (jj_3R_233()) {
jj_scanpos = xsp;
if (jj_3R_234()) return true;
}
}
return false;
}
private boolean jj_3R_54()
{
if (jj_3R_93()) return true;
Token xsp;
while (true) {
xsp = jj_scanpos;
if (jj_3R_150()) { jj_scanpos = xsp; break; }
}
return false;
}
private boolean jj_3R_246()
{
if (jj_scan_token(K_ON)) return true;
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_162()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_163()
{
if (jj_3R_223()) return true;
return false;
}
private boolean jj_3_1()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_36()) return true;
return false;
}
private boolean jj_3R_161()
{
if (jj_3R_220()) return true;
return false;
}
private boolean jj_3R_209()
{
if (jj_scan_token(K_PRIOR)) return true;
return false;
}
private boolean jj_3_20()
{
if (jj_3R_51()) return true;
return false;
}
private boolean jj_3R_208()
{
if (jj_scan_token(ATAT)) return true;
return false;
}
private boolean jj_3R_146()
{
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_51()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
private boolean jj_3R_281()
{
if (jj_scan_token(K_WHEN)) return true;
if (jj_3R_238()) return true;
if (jj_scan_token(K_THEN)) return true;
if (jj_3R_85()) return true;
return false;
}
private boolean jj_3R_278()
{
if (jj_scan_token(K_DESC)) return true;
return false;
}
private boolean jj_3R_145()
{
if (jj_3R_51()) return true;
return false;
}
private boolean jj_3R_207()
{
Token xsp;
xsp = jj_scanpos;
if (jj_scan_token(106)) {
jj_scanpos = xsp;
if (jj_scan_token(107)) return true;
}
return false;
}
private boolean jj_3R_237()
{
if (jj_scan_token(K_AS)) return true;
return false;
}
private boolean jj_3R_187()
{
Token xsp;
xsp = jj_scanpos;
if (jj_3R_237()) jj_scanpos = xsp;
if (jj_3R_37()) return true;
return false;
}
private boolean jj_3R_277()
{
if (jj_scan_token(K_ASC)) return true;
return false;
}
private boolean jj_3R_206()
{
if (jj_scan_token(LE)) return true;
return false;
}
/** Generated Token Manager. */
public CCJSqlParserTokenManager token_source;
SimpleCharStream jj_input_stream;
/** Current token. */
public Token token;
/** Next token. */
public Token jj_nt;
private int jj_ntk;
private Token jj_scanpos, jj_lastpos;
private int jj_la;
private int jj_gen;
final private int[] jj_la1 = new int[164];
static private int[] jj_la1_0;
static private int[] jj_la1_1;
static private int[] jj_la1_2;
static private int[] jj_la1_3;
static {
jj_la1_init_0();
jj_la1_init_1();
jj_la1_init_2();
jj_la1_init_3();
}
private static void jj_la1_init_0() {
jj_la1_0 = new int[] {0x40000000,0x0,0x40,0x0,0x0,0x8000000,0x0,0x0,0x0,0x0,0x400000,0x8000000,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x10000,0x20000,0x20000,0x1000000,0x8000000,0x0,0x180,0x0,0x0,0x0,0x0,0x0,0x20000,0x20000,0x0,0x0,0x20000,0x20000,0x0,0x0,0x0,0x20000,0x20000,0x0,0x0,0x20000,0x20000,0x0,0x0,0x0,0x0,0x40,0x0,0x10000000,0x40,0x0,0x0,0x0,0x40,0x80000000,0x0,0x0,0x0,0x0,0x80000000,0x0,0x10000,0x10000,0x80,0x200,0x0,0x0,0x4800000,0x4800000,0x0,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x200000,0x200000,0x200000,0x200000,0x102a0400,0x400,0x200000,0x0,0x0,0x400,0x10000000,0x200000,0x10000000,0x200000,0x200000,0x0,0x200000,0x200000,0x0,0x0,0x100a0000,0x80000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x10000000,0x0,0x0,0x0,0x0,0x0,0x10000000,0x0,0x0,0x0,0x0,0x20000,0x20000,0x10000000,0x10020000,0x0,0x10300000,0x10300000,0x0,0x10300000,0x100000,0x10300000,0x0,0x0,0x0,0x0,0x10300000,0x0,0x0,0x0,0x0,0x0,0x0,};
}
private static void jj_la1_init_1() {
jj_la1_1 = new int[] {0x63800200,0x0,0x0,0x0,0x800,0x0,0x0,0x0,0x0,0x82000000,0x82000000,0x0,0x0,0x0,0x0,0x82000000,0x2,0x0,0x800,0x0,0x0,0x0,0x0,0x0,0x200,0x2000000,0x0,0x0,0x0,0x0,0x0,0x800,0x0,0x8000,0x10000000,0x200000,0x4080000,0x6000,0x0,0x0,0x6000,0x6000,0x0,0x0,0x200000,0x4080000,0x6000,0x0,0x0,0x6000,0x6000,0x0,0x0,0x2000000,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x0,0x2000000,0x0,0x0,0x540101,0x400101,0x400101,0x140000,0x140000,0x0,0x0,0x1000,0x1000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4000000,0x4080000,0x0,0x0,0x0,0x0,0x0,0x0,0x88,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x88,0x80,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x0,0x10,0x40,0x10,0x40,0x18,0x0,0x0,0x0,0x0,0x0,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20400,0x0,};
}
private static void jj_la1_init_2() {
jj_la1_2 = new int[] {0x28,0x80000,0x44000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x44000,0x0,0x0,0x0,0x44000,0x44000,0x44000,0x0,0x0,0x0,0x40,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x80,0x40,0x40,0x80,0x80,0x40,0x40,0x0,0x0,0x80,0x40,0x40,0x80,0x80,0x40,0x40,0x0,0x0,0x0,0x0,0x44000,0x0,0x64308,0x0,0x0,0x0,0x44000,0x44000,0x4,0x4,0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x200,0x200,0x200,0x200,0x200,0x0,0x0,0x200,0x0,0x0,0x0,0x0,0x0,0x64308,0x0,0x0,0x0,0x80000000,0x0,0x64308,0x0,0x64308,0x0,0x0,0x1,0x0,0x0,0x0,0x0,0x64308,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000,0x0,0x0,0x0,0x0,0x64308,0x0,0x44008,0x0,0x0,0x40,0x40,0x64308,0x64348,0x0,0x80024302,0x80024302,0x0,0x80024302,0x4002,0x80024302,0x0,0x20200,0x20200,0x0,0x80024302,0x24300,0x24300,0x0,0x0,0x4000,0x4000,};
}
private static void jj_la1_init_3() {
jj_la1_3 = new int[] {0x2,0x0,0x0,0x1,0x0,0x0,0x1,0x1,0x1,0x2,0x2,0x0,0x1,0x1,0x4,0x2,0x0,0x0,0x0,0x8,0x8,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x1,0x2,0x1,0x0,0x10,0x1f30022,0x0,0x1,0x2,0x2,0x0,0x1,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x0,0x0,0x1,0x1,0x0,0x0,0x20,0x20,0x20,0x20,0x20,0x0,0x0,0x20,0x2,0x0,0x2,0x0,0x2,0x1f30022,0x0,0x0,0xc00,0x1fc0,0x0,0x1f30022,0x0,0x1f30022,0x0,0x0,0x0,0x0,0x0,0x1,0x1,0x1f30022,0x0,0x2,0x2000,0xc000,0x30000,0x2,0x40010,0x2,0x80000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x30000,0x100020,0xe30002,0x0,0x0,0x0,0x0,0x1f30022,0x1000000,0x0,0x8,0x8,0x0,0x0,0x1f30032,0x1f30032,0x4000000,0x2,0x2,0x1,0x2,0x0,0x2,0x2,0x0,0x0,0x1,0x2,0x0,0x0,0x1,0x1,0x0,0x0,};
}
final private JJCalls[] jj_2_rtns = new JJCalls[31];
private boolean jj_rescan = false;
private int jj_gc = 0;
/** Constructor with InputStream. */
public CCJSqlParser(java.io.InputStream stream) {
this(stream, null);
}
/** Constructor with InputStream and supplied encoding */
public CCJSqlParser(java.io.InputStream stream, String encoding) {
try { jj_input_stream = new SimpleCharStream(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source = new CCJSqlParserTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream) {
ReInit(stream, null);
}
/** Reinitialise. */
public void ReInit(java.io.InputStream stream, String encoding) {
try { jj_input_stream.ReInit(stream, encoding, 1, 1); } catch(java.io.UnsupportedEncodingException e) { throw new RuntimeException(e); }
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Constructor. */
public CCJSqlParser(java.io.Reader stream) {
jj_input_stream = new SimpleCharStream(stream, 1, 1);
token_source = new CCJSqlParserTokenManager(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(java.io.Reader stream) {
jj_input_stream.ReInit(stream, 1, 1);
token_source.ReInit(jj_input_stream);
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Constructor with generated Token Manager. */
public CCJSqlParser(CCJSqlParserTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
/** Reinitialise. */
public void ReInit(CCJSqlParserTokenManager tm) {
token_source = tm;
token = new Token();
jj_ntk = -1;
jj_gen = 0;
for (int i = 0; i < 164; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
private Token jj_consume_token(int kind) throws ParseException {
Token oldToken;
if ((oldToken = token).next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
if (token.kind == kind) {
jj_gen++;
if (++jj_gc > 100) {
jj_gc = 0;
for (int i = 0; i < jj_2_rtns.length; i++) {
JJCalls c = jj_2_rtns[i];
while (c != null) {
if (c.gen < jj_gen) c.first = null;
c = c.next;
}
}
}
return token;
}
token = oldToken;
jj_kind = kind;
throw generateParseException();
}
@SuppressWarnings("serial")
static private final class LookaheadSuccess extends java.lang.Error { }
final private LookaheadSuccess jj_ls = new LookaheadSuccess();
private boolean jj_scan_token(int kind) {
if (jj_scanpos == jj_lastpos) {
jj_la--;
if (jj_scanpos.next == null) {
jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
} else {
jj_lastpos = jj_scanpos = jj_scanpos.next;
}
} else {
jj_scanpos = jj_scanpos.next;
}
if (jj_rescan) {
int i = 0; Token tok = token;
while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
if (tok != null) jj_add_error_token(kind, i);
}
if (jj_scanpos.kind != kind) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls;
return false;
}
/** Get the next Token. */
final public Token getNextToken() {
if (token.next != null) token = token.next;
else token = token.next = token_source.getNextToken();
jj_ntk = -1;
jj_gen++;
return token;
}
/** Get the specific Token. */
final public Token getToken(int index) {
Token t = token;
for (int i = 0; i < index; i++) {
if (t.next != null) t = t.next;
else t = t.next = token_source.getNextToken();
}
return t;
}
private int jj_ntk_f() {
if ((jj_nt=token.next) == null)
return (jj_ntk = (token.next=token_source.getNextToken()).kind);
else
return (jj_ntk = jj_nt.kind);
}
private java.util.List<int[]> jj_expentries = new java.util.ArrayList<int[]>();
private int[] jj_expentry;
private int jj_kind = -1;
private int[] jj_lasttokens = new int[100];
private int jj_endpos;
private void jj_add_error_token(int kind, int pos) {
if (pos >= 100) return;
if (pos == jj_endpos + 1) {
jj_lasttokens[jj_endpos++] = kind;
} else if (jj_endpos != 0) {
jj_expentry = new int[jj_endpos];
for (int i = 0; i < jj_endpos; i++) {
jj_expentry[i] = jj_lasttokens[i];
}
jj_entries_loop: for (java.util.Iterator<?> it = jj_expentries.iterator(); it.hasNext();) {
int[] oldentry = (int[])(it.next());
if (oldentry.length == jj_expentry.length) {
for (int i = 0; i < jj_expentry.length; i++) {
if (oldentry[i] != jj_expentry[i]) {
continue jj_entries_loop;
}
}
jj_expentries.add(jj_expentry);
break jj_entries_loop;
}
}
if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
}
}
/** Generate ParseException. */
public ParseException generateParseException() {
jj_expentries.clear();
boolean[] la1tokens = new boolean[123];
if (jj_kind >= 0) {
la1tokens[jj_kind] = true;
jj_kind = -1;
}
for (int i = 0; i < 164; i++) {
if (jj_la1[i] == jj_gen) {
for (int j = 0; j < 32; j++) {
if ((jj_la1_0[i] & (1<<j)) != 0) {
la1tokens[j] = true;
}
if ((jj_la1_1[i] & (1<<j)) != 0) {
la1tokens[32+j] = true;
}
if ((jj_la1_2[i] & (1<<j)) != 0) {
la1tokens[64+j] = true;
}
if ((jj_la1_3[i] & (1<<j)) != 0) {
la1tokens[96+j] = true;
}
}
}
}
for (int i = 0; i < 123; i++) {
if (la1tokens[i]) {
jj_expentry = new int[1];
jj_expentry[0] = i;
jj_expentries.add(jj_expentry);
}
}
jj_endpos = 0;
jj_rescan_token();
jj_add_error_token(0, 0);
int[][] exptokseq = new int[jj_expentries.size()][];
for (int i = 0; i < jj_expentries.size(); i++) {
exptokseq[i] = jj_expentries.get(i);
}
return new ParseException(token, exptokseq, tokenImage);
}
/** Enable tracing. */
final public void enable_tracing() {
}
/** Disable tracing. */
final public void disable_tracing() {
}
private void jj_rescan_token() {
jj_rescan = true;
for (int i = 0; i < 31; i++) {
try {
JJCalls p = jj_2_rtns[i];
do {
if (p.gen > jj_gen) {
jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
switch (i) {
case 0: jj_3_1(); break;
case 1: jj_3_2(); break;
case 2: jj_3_3(); break;
case 3: jj_3_4(); break;
case 4: jj_3_5(); break;
case 5: jj_3_6(); break;
case 6: jj_3_7(); break;
case 7: jj_3_8(); break;
case 8: jj_3_9(); break;
case 9: jj_3_10(); break;
case 10: jj_3_11(); break;
case 11: jj_3_12(); break;
case 12: jj_3_13(); break;
case 13: jj_3_14(); break;
case 14: jj_3_15(); break;
case 15: jj_3_16(); break;
case 16: jj_3_17(); break;
case 17: jj_3_18(); break;
case 18: jj_3_19(); break;
case 19: jj_3_20(); break;
case 20: jj_3_21(); break;
case 21: jj_3_22(); break;
case 22: jj_3_23(); break;
case 23: jj_3_24(); break;
case 24: jj_3_25(); break;
case 25: jj_3_26(); break;
case 26: jj_3_27(); break;
case 27: jj_3_28(); break;
case 28: jj_3_29(); break;
case 29: jj_3_30(); break;
case 30: jj_3_31(); break;
}
}
p = p.next;
} while (p != null);
} catch(LookaheadSuccess ls) { }
}
jj_rescan = false;
}
private void jj_save(int index, int xla) {
JJCalls p = jj_2_rtns[index];
while (p.gen > jj_gen) {
if (p.next == null) { p = p.next = new JJCalls(); break; }
p = p.next;
}
p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
}
static final class JJCalls {
int gen;
Token first;
int arg;
JJCalls next;
}
}