aladdinparser.java
来自「mysql集群」· Java 代码 · 共 2,114 行 · 第 1/5 页
JAVA
2,114 行
statment.setExpression(expression);
}
}
{if (true) return statment;}
throw new Error("Missing return statement in function");
}
final public Expression ColumnValues() throws ParseException {
Expression expression = null;
AndExpression andExpression = new AndExpression();
expression = ColumnValue();
if(expression != null) andExpression.addExpression(expression);
label_6:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 131:
;
break;
default:
jj_la1[28] = jj_gen;
break label_6;
}
jj_consume_token(131);
expression = ColumnValue();
if(expression != null) andExpression.addExpression(expression);
}
{if (true) return andExpression;}
throw new Error("Missing return statement in function");
}
final public Expression ColumnValue() throws ParseException {
ColumnExpression colExpression = new ColumnExpression();
Expression expression = null;
Column column = null;
column = ColumnName();
jj_consume_token(130);
expression = UpdatedValue();
if(expression == null) {if (true) return null;}
colExpression.setColumn(column);
ComparisonExpression compExp = new ComparisonExpression();
compExp.setComparison(Comparative.Equivalent);
compExp.setExpression(expression);
colExpression.setExpression(compExp);
{if (true) return colExpression;}
throw new Error("Missing return statement in function");
}
final public Expression UpdatedValue() throws ParseException {
Expression expression = null;
if (jj_2_3(2147483647)) {
jj_consume_token(132);
expression = SubSelectStatement();
jj_consume_token(133);
} else if (jj_2_4(1)) {
expression = SQLSimpleExpression();
} else {
jj_consume_token(-1);
throw new ParseException();
}
{if (true) return expression;}
throw new Error("Missing return statement in function");
}
final public ComparisonExpression IsNullClause() throws ParseException {
int comparison = Comparative.Equivalent;
jj_consume_token(K_IS);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_NOT:
jj_consume_token(K_NOT);
comparison = Comparative.NotEquivalent;
break;
default:
jj_la1[29] = jj_gen;
;
}
jj_consume_token(K_NULL);
ComparisonExpression comparativeExpression = new ComparisonExpression();
comparativeExpression.setComparison(comparison);
comparativeExpression.setExpression(new ConstantExpression(null));
{if (true) return comparativeExpression;}
throw new Error("Missing return statement in function");
}
/*
* Tabel Column
*/
final public Column ColumnName() throws ParseException {
String schemaName = null;
String tableName = null;
String columnName = null;
Column column = new Column();
Table table = null;
// schema.table.column
schemaName = EntityName();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 129:
jj_consume_token(129);
tableName = EntityName();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 129:
jj_consume_token(129);
columnName = EntityName();
break;
default:
jj_la1[30] = jj_gen;
;
}
break;
default:
jj_la1[31] = jj_gen;
;
}
if(tableName == null){
columnName = schemaName;
schemaName = null;
if(tableStack.size()>0){
table = tableStack.peek();
}
}else{
if(columnName == null){
columnName = tableName;
tableName = schemaName;
schemaName = null;
table = tableAliasMap.get(tableName);
}
}
column.setTable(table);
column.setName(columnName);
{if (true) return column;}
throw new Error("Missing return statement in function");
}
final public String EntityName() throws ParseException {
Token token = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case IDENTIFIER:
token = jj_consume_token(IDENTIFIER);
{if (true) return token.image;}
break;
case S_QUOTED_IDENTIFIER:
token = jj_consume_token(S_QUOTED_IDENTIFIER);
{if (true) return token.image.substring(1,token.image.length()-1);}
break;
case S_COMMA_IDENTIFIER:
token = jj_consume_token(S_COMMA_IDENTIFIER);
{if (true) return token.image.substring(1,token.image.length()-1);}
break;
default:
jj_la1[32] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
throw new Error("Missing return statement in function");
}
final public String Relop() throws ParseException {
Token token;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 130:
token = jj_consume_token(130);
break;
case 134:
token = jj_consume_token(134);
break;
case 135:
token = jj_consume_token(135);
break;
case 136:
token = jj_consume_token(136);
break;
case 137:
token = jj_consume_token(137);
break;
case 138:
token = jj_consume_token(138);
break;
case 139:
token = jj_consume_token(139);
break;
default:
jj_la1[33] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
{if (true) return token.image;}
throw new Error("Missing return statement in function");
}
final public Table TableName() throws ParseException {
String schemaName = null;
String tableName = null;
Table table = null;
Schema schema = null;
schemaName = EntityName();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 129:
jj_consume_token(129);
tableName = EntityName();
break;
default:
jj_la1[34] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_PARTITION:
jj_consume_token(K_PARTITION);
jj_consume_token(132);
EntityName();
jj_consume_token(133);
break;
default:
jj_la1[35] = jj_gen;
;
}
if(tableName == null){
tableName = schemaName;
schemaName = null;
}
table = new Table();
table.setName(tableName);
if(schemaName != null){
schema = new Schema();
schema.setName(schemaName);
table.setSchema(schema);
}else{
table.setSchema(defaultSchema);
}
tableAliasMap.put(table.getName(),table);
tableStack.push(table);
{if (true) return table;}
throw new Error("Missing return statement in function");
}
final public Table TableReference() throws ParseException {
Table table = null;
Token token = null;
table = TableName();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_AS:
case IDENTIFIER:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_AS:
jj_consume_token(K_AS);
break;
default:
jj_la1[36] = jj_gen;
;
}
token = jj_consume_token(IDENTIFIER);
table.setAlias(token.image);
break;
default:
jj_la1[37] = jj_gen;
;
}
if(table.getAlias() != null){
tableAliasMap.put(table.getAlias(),table);
}
{if (true) return table;}
throw new Error("Missing return statement in function");
}
final public void CaseStatement() throws ParseException {
jj_consume_token(K_CASE);
if (jj_2_5(1)) {
SQLSimpleExpression();
} else {
;
}
WhenStatement();
label_7:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_WHEN:
;
break;
default:
jj_la1[38] = jj_gen;
break label_7;
}
WhenStatement();
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_ELSE:
ElseStatement();
break;
default:
jj_la1[39] = jj_gen;
;
}
jj_consume_token(K_END);
}
final public void WhenStatement() throws ParseException {
jj_consume_token(K_WHEN);
SQLExpression();
jj_consume_token(K_THEN);
SQLSimpleExpression();
}
final public void ElseStatement() throws ParseException {
jj_consume_token(K_ELSE);
SQLSimpleExpression();
}
final public void ExtraClauses() throws ParseException {
if (jj_2_6(2)) {
ForUpdateClause();
} else if (jj_2_7(2)) {
ReadOnlyClause();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_OPTIMIZE:
OptimizeForClause();
break;
case K_WITH:
WithClause();
break;
case K_QUERYNO:
QuerynoClause();
break;
case K_FETCH:
FetchFirstClause();
break;
default:
jj_la1[40] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public Expression FullSelectStatement() throws ParseException {
Expression expression = null;
Expression unionedExpression = null;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_SELECT:
expression = SubSelectStatement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_INTERSECT:
case K_MINUS:
case K_UNION:
UnionClause();
unionedExpression = FullSelectStatement();
break;
default:
jj_la1[41] = jj_gen;
;
}
break;
case 132:
jj_consume_token(132);
expression = FullSelectStatement();
jj_consume_token(133);
break;
default:
jj_la1[42] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
if(unionedExpression != null){
if(expression == null){
{if (true) return unionedExpression;}
}else{
expression = new OrExpression(expression);
((OrExpression)expression).addExpression(unionedExpression);
{if (true) return expression;}
}
}else{
{if (true) return expression;}
}
throw new Error("Missing return statement in function");
}
final public void UnionClause() throws ParseException {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_UNION:
jj_consume_token(K_UNION);
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_ALL:
jj_consume_token(K_ALL);
break;
default:
jj_la1[43] = jj_gen;
;
}
break;
case K_INTERSECT:
jj_consume_token(K_INTERSECT);
break;
case K_MINUS:
jj_consume_token(K_MINUS);
break;
default:
jj_la1[44] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
}
final public Expression SubSelectStatement() throws ParseException {
Expression expression = null;
AndExpression andExpression = null;
SelectClause();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_FROM:
expression = FromClause();
if(expression != null){
if(andExpression == null){
andExpression = new AndExpression();
}
andExpression.addExpression(expression);
}else{
}
break;
default:
jj_la1[45] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?