{if (true) 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;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_LEFT:
case K_FULL:
case K_RIGHT:
case K_NATURAL:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_LEFT:
jj_consume_token(K_LEFT);
join.setLeft(true);
break;
case K_RIGHT:
jj_consume_token(K_RIGHT);
join.setRight(true);
break;
case K_FULL:
jj_consume_token(K_FULL);
join.setFull(true);
break;
case K_NATURAL:
jj_consume_token(K_NATURAL);
join.setNatural(true);
break;
default:
jj_la1[59] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[60] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_INNER:
case K_OUTER:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_OUTER:
jj_consume_token(K_OUTER);
join.setOuter(true);
break;
case K_INNER:
jj_consume_token(K_INNER);
join.setInner(true);
break;
default:
jj_la1[61] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[62] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_JOIN:
jj_consume_token(K_JOIN);
break;
case 78:
jj_consume_token(78);
join.setSimple(true);
break;
default:
jj_la1[63] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
right = FromItem();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_ON:
case K_USING:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case K_ON:
jj_consume_token(K_ON);
onExpression = Expression();
join.setOnExpression(onExpression);
break;
case K_USING:
jj_consume_token(K_USING);
jj_consume_token(79);
tableColumn = Column();
columns = new ArrayList(); columns.add(tableColumn);
label_13:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case 78:
;
break;
default:
jj_la1[64] = jj_gen;
break label_13;
}
jj_consume_token(78);
tableColumn = Column();
columns.add(tableColumn);
}
jj_consume_token(80);
join.setUsingColumns(columns);
break;
default:
jj_la1[65] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_la1[66] = jj_gen;
;
}
join.setRightItem(right);
{if (true) return join;}
throw new Error("Missing return statement in function");
}