ExpressionParser.java revision 2362
/*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
* particular file as subject to the "Classpath" exception as provided
* by Oracle in the LICENSE file that accompanied this code.
*
* This code 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 General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
/* Generated By:JavaCC: Do not edit this line. ExpressionParser.java */
@SuppressWarnings("unchecked")
public class ExpressionParser implements ExpressionParserConstants {
private static GetFrame lastFrameGetter;
private static LValue lastLValue;
}
}
}
}
public interface GetFrame {
}
// TODO StringBufferInputStream is deprecated.
parser.Expression();
return lastLValue.getValue();
}
try {
return;
}
} else {
return;
}
try {
parser.Expression();
} catch (ParseException e) {
}
}
/*****************************************
* THE JAVA LANGUAGE GRAMMAR STARTS HERE *
*****************************************/
/*
* Type, name and expression syntax follows.
*/
final public void Type() throws ParseException {
case BOOLEAN:
case BYTE:
case CHAR:
case DOUBLE:
case FLOAT:
case INT:
case LONG:
case SHORT:
break;
case IDENTIFIER:
Name();
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
while (true) {
case LBRACKET:
;
break;
default:
break label_1;
}
}
}
final public void PrimitiveType() throws ParseException {
case BOOLEAN:
break;
case CHAR:
break;
case BYTE:
break;
case SHORT:
break;
case INT:
break;
case LONG:
break;
case FLOAT:
break;
case DOUBLE:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
while (true) {
if (jj_2_1(2)) {
;
} else {
break label_2;
}
}
throw new Error("Missing return statement in function");
}
final public void NameList() throws ParseException {
Name();
while (true) {
case COMMA:
;
break;
default:
break label_3;
}
Name();
}
}
/*
* Expression syntax follows.
*/
final public void Expression() throws ParseException {
if (jj_2_2(2147483647)) {
Assignment();
} else {
case FALSE:
case NEW:
case NULL:
case SUPER:
case THIS:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
case IDENTIFIER:
case LPAREN:
case BANG:
case TILDE:
case INCR:
case DECR:
case PLUS:
case MINUS:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void Assignment() throws ParseException {
Expression();
}
final public void AssignmentOperator() throws ParseException {
case ASSIGN:
break;
case STARASSIGN:
break;
case SLASHASSIGN:
break;
case REMASSIGN:
break;
case PLUSASSIGN:
break;
case MINUSASSIGN:
break;
case LSHIFTASSIGN:
break;
case RSIGNEDSHIFTASSIGN:
break;
case RUNSIGNEDSHIFTASSIGN:
break;
case ANDASSIGN:
break;
case XORASSIGN:
break;
case ORASSIGN:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void ConditionalExpression() throws ParseException {
case HOOK:
Expression();
if (cond instanceof BooleanValue) {
} else {
{if (true) throw new ParseException("Condition must be boolean");}
}
break;
default:
;
}
}
final public void ConditionalOrExpression() throws ParseException {
while (true) {
case SC_OR:
;
break;
default:
break label_4;
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void ConditionalAndExpression() throws ParseException {
while (true) {
case SC_AND:
;
break;
default:
break label_5;
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void InclusiveOrExpression() throws ParseException {
while (true) {
case BIT_OR:
;
break;
default:
break label_6;
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void ExclusiveOrExpression() throws ParseException {
while (true) {
case XOR:
;
break;
default:
break label_7;
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void AndExpression() throws ParseException {
while (true) {
case BIT_AND:
;
break;
default:
break label_8;
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void EqualityExpression() throws ParseException {
while (true) {
case EQ:
case NE:
;
break;
default:
break label_9;
}
case EQ:
break;
case NE:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void InstanceOfExpression() throws ParseException {
case INSTANCEOF:
Type();
{if (true) throw new ParseException("operation not yet supported");}
break;
default:
;
}
}
final public void RelationalExpression() throws ParseException {
while (true) {
case GT:
case LT:
case LE:
case GE:
;
break;
default:
break label_10;
}
case LT:
break;
case GT:
break;
case LE:
break;
case GE:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void ShiftExpression() throws ParseException {
while (true) {
case LSHIFT:
case RSIGNEDSHIFT:
case RUNSIGNEDSHIFT:
;
break;
default:
break label_11;
}
case LSHIFT:
break;
case RSIGNEDSHIFT:
break;
case RUNSIGNEDSHIFT:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
{if (true) throw new ParseException("operation not yet supported");}
}
}
final public void AdditiveExpression() throws ParseException {
while (true) {
case PLUS:
case MINUS:
;
break;
default:
break label_12;
}
case PLUS:
break;
case MINUS:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void MultiplicativeExpression() throws ParseException {
while (true) {
case STAR:
case SLASH:
case REM:
;
break;
default:
break label_13;
}
case STAR:
break;
case SLASH:
break;
case REM:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void UnaryExpression() throws ParseException {
case PLUS:
case MINUS:
case PLUS:
break;
case MINUS:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
{if (true) throw new ParseException("operation not yet supported");}
break;
case INCR:
break;
case DECR:
break;
case FALSE:
case NEW:
case NULL:
case SUPER:
case THIS:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
case IDENTIFIER:
case LPAREN:
case BANG:
case TILDE:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void PreIncrementExpression() throws ParseException {
{if (true) throw new ParseException("operation not yet supported");}
}
final public void PreDecrementExpression() throws ParseException {
{if (true) throw new ParseException("operation not yet supported");}
}
final public void UnaryExpressionNotPlusMinus() throws ParseException {
case BANG:
case TILDE:
case TILDE:
break;
case BANG:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
{if (true) throw new ParseException("operation not yet supported");}
break;
default:
if (jj_2_3(2147483647)) {
} else {
case FALSE:
case NEW:
case NULL:
case SUPER:
case THIS:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
case IDENTIFIER:
case LPAREN:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
}
// This production is to determine lookahead only. The LOOKAHEAD specifications
// below are not used, but they are there just to indicate that we know about
// this.
final public void CastLookahead() throws ParseException {
if (jj_2_4(2)) {
} else if (jj_2_5(2147483647)) {
Name();
} else {
case LPAREN:
Name();
case TILDE:
break;
case BANG:
break;
case LPAREN:
break;
case IDENTIFIER:
break;
case THIS:
break;
case SUPER:
break;
case NEW:
break;
case FALSE:
case NULL:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
Literal();
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void PostfixExpression() throws ParseException {
case INCR:
case DECR:
case INCR:
break;
case DECR:
{if (true) throw new ParseException("operation not yet supported");}
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
;
}
}
final public void CastExpression() throws ParseException {
if (jj_2_6(2)) {
while (true) {
case LBRACKET:
;
break;
default:
break label_14;
}
}
} else {
case LPAREN:
Name();
while (true) {
case LBRACKET:
;
break;
default:
break label_15;
}
}
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
final public void PrimaryExpression() throws ParseException {
while (true) {
case LPAREN:
case LBRACKET:
case DOT:
;
break;
default:
break label_16;
}
}
}
final public void PrimaryPrefix() throws ParseException {
case FALSE:
case NULL:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
Literal();
break;
case IDENTIFIER:
break;
case THIS:
break;
case SUPER:
{if (true) throw new ParseException("operation not yet supported");}
break;
case LPAREN:
Expression();
break;
case NEW:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void PrimarySuffix() throws ParseException {
case LBRACKET:
Expression();
break;
case DOT:
break;
case LPAREN:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void Literal() throws ParseException {
case INTEGER_LITERAL:
break;
case FLOATING_POINT_LITERAL:
break;
case CHARACTER_LITERAL:
break;
case STRING_LITERAL:
break;
case FALSE:
case TRUE:
break;
case NULL:
NullLiteral();
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void BooleanLiteral() throws ParseException {
case TRUE:
break;
case FALSE:
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
final public void NullLiteral() throws ParseException {
}
case FALSE:
case NEW:
case NULL:
case SUPER:
case THIS:
case TRUE:
case INTEGER_LITERAL:
case FLOATING_POINT_LITERAL:
case CHARACTER_LITERAL:
case STRING_LITERAL:
case IDENTIFIER:
case LPAREN:
case BANG:
case TILDE:
case INCR:
case DECR:
case PLUS:
case MINUS:
break;
default:
;
}
{if (true) return argList;}
throw new Error("Missing return statement in function");
}
Expression();
while (true) {
case COMMA:
;
break;
default:
break label_17;
}
Expression();
}
}
final public void AllocationExpression() throws ParseException {
if (jj_2_7(2)) {
} else {
case NEW:
case LPAREN:
break;
case LBRACKET:
{if (true) throw new ParseException("operation not yet supported");}
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
break;
default:
jj_consume_token(-1);
throw new ParseException();
}
}
}
/*
* The second LOOKAHEAD specification below is to parse to PrimarySuffix
* if there is an expression between the "[...]".
*/
final public void ArrayDimensions() throws ParseException {
while (true) {
Expression();
if (jj_2_8(2)) {
;
} else {
break label_18;
}
}
while (true) {
if (jj_2_9(2)) {
;
} else {
break label_19;
}
}
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
return retval;
}
final private boolean jj_3R_154() {
if (jj_scan_token(INCR)) return true;
return false;
}
final private boolean jj_3R_151() {
xsp = jj_scanpos;
if (jj_3R_154()) {
jj_scanpos = xsp;
if (jj_3R_155()) return true;
return false;
}
final private boolean jj_3R_148() {
xsp = jj_scanpos;
if (jj_3_6()) {
jj_scanpos = xsp;
if (jj_3R_150()) return true;
return false;
}
final private boolean jj_3_6() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_23()) return true;
while (true) {
xsp = jj_scanpos;
}
if (jj_scan_token(RPAREN)) return true;
if (jj_3R_115()) return true;
return false;
}
final private boolean jj_3R_25() {
xsp = jj_scanpos;
if (jj_3R_50()) {
jj_scanpos = xsp;
if (jj_3R_51()) return true;
return false;
}
final private boolean jj_3R_50() {
if (jj_3R_67()) return true;
return false;
}
final private boolean jj_3_5() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_24()) return true;
if (jj_scan_token(LBRACKET)) return true;
return false;
}
final private boolean jj_3R_149() {
if (jj_3R_20()) return true;
xsp = jj_scanpos;
return false;
}
final private boolean jj_3R_41() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_24()) return true;
if (jj_scan_token(RPAREN)) return true;
xsp = jj_scanpos;
if (jj_3R_59()) {
jj_scanpos = xsp;
if (jj_3R_60()) {
jj_scanpos = xsp;
if (jj_3R_61()) {
jj_scanpos = xsp;
if (jj_3R_62()) {
jj_scanpos = xsp;
if (jj_3R_63()) {
jj_scanpos = xsp;
if (jj_3R_64()) {
jj_scanpos = xsp;
if (jj_3R_65()) {
jj_scanpos = xsp;
if (jj_3R_66()) return true;
return false;
}
final private boolean jj_3R_40() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_24()) return true;
if (jj_scan_token(LBRACKET)) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_123() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3_1() {
if (jj_scan_token(DOT)) return true;
if (jj_scan_token(IDENTIFIER)) return true;
return false;
}
final private boolean jj_3_4() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_23()) return true;
return false;
}
final private boolean jj_3R_22() {
xsp = jj_scanpos;
if (jj_3_4()) {
jj_scanpos = xsp;
if (jj_3R_40()) {
jj_scanpos = xsp;
if (jj_3R_41()) return true;
return false;
}
final private boolean jj_3_3() {
if (jj_3R_22()) return true;
return false;
}
final private boolean jj_3R_24() {
if (jj_scan_token(IDENTIFIER)) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_147() {
if (jj_scan_token(BANG)) return true;
return false;
}
final private boolean jj_3R_142() {
if (jj_3R_149()) return true;
return false;
}
final private boolean jj_3R_122() {
if (jj_3R_24()) return true;
return false;
}
final private boolean jj_3R_49() {
if (jj_scan_token(DOUBLE)) return true;
return false;
}
final private boolean jj_3R_141() {
if (jj_3R_148()) return true;
return false;
}
final private boolean jj_3R_48() {
if (jj_scan_token(FLOAT)) return true;
return false;
}
final private boolean jj_3R_146() {
if (jj_scan_token(TILDE)) return true;
return false;
}
final private boolean jj_3R_47() {
if (jj_scan_token(LONG)) return true;
return false;
}
final private boolean jj_3R_140() {
xsp = jj_scanpos;
if (jj_3R_146()) {
jj_scanpos = xsp;
if (jj_3R_147()) return true;
if (jj_3R_115()) return true;
return false;
}
final private boolean jj_3R_136() {
xsp = jj_scanpos;
if (jj_3R_140()) {
jj_scanpos = xsp;
if (jj_3R_141()) {
jj_scanpos = xsp;
if (jj_3R_142()) return true;
return false;
}
final private boolean jj_3R_46() {
if (jj_scan_token(INT)) return true;
return false;
}
final private boolean jj_3R_145() {
if (jj_scan_token(REM)) return true;
return false;
}
final private boolean jj_3R_45() {
if (jj_scan_token(SHORT)) return true;
return false;
}
final private boolean jj_3R_44() {
if (jj_scan_token(BYTE)) return true;
return false;
}
final private boolean jj_3R_135() {
if (jj_scan_token(DECR)) return true;
if (jj_3R_20()) return true;
return false;
}
final private boolean jj_3R_43() {
if (jj_scan_token(CHAR)) return true;
return false;
}
final private boolean jj_3R_23() {
xsp = jj_scanpos;
if (jj_3R_42()) {
jj_scanpos = xsp;
if (jj_3R_43()) {
jj_scanpos = xsp;
if (jj_3R_44()) {
jj_scanpos = xsp;
if (jj_3R_45()) {
jj_scanpos = xsp;
if (jj_3R_46()) {
jj_scanpos = xsp;
if (jj_3R_47()) {
jj_scanpos = xsp;
if (jj_3R_48()) {
jj_scanpos = xsp;
if (jj_3R_49()) return true;
return false;
}
final private boolean jj_3R_42() {
if (jj_scan_token(BOOLEAN)) return true;
return false;
}
final private boolean jj_3_9() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_121() {
if (jj_3R_23()) return true;
return false;
}
final private boolean jj_3R_144() {
if (jj_scan_token(SLASH)) return true;
return false;
}
final private boolean jj_3R_134() {
if (jj_scan_token(INCR)) return true;
if (jj_3R_20()) return true;
return false;
}
final private boolean jj_3R_114() {
xsp = jj_scanpos;
if (jj_3R_121()) {
jj_scanpos = xsp;
if (jj_3R_122()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_120() {
if (jj_scan_token(GE)) return true;
return false;
}
final private boolean jj_3R_133() {
if (jj_scan_token(MINUS)) return true;
return false;
}
final private boolean jj_3R_127() {
if (jj_3R_136()) return true;
return false;
}
final private boolean jj_3R_126() {
if (jj_3R_135()) return true;
return false;
}
final private boolean jj_3R_139() {
if (jj_scan_token(MINUS)) return true;
return false;
}
final private boolean jj_3R_125() {
if (jj_3R_134()) return true;
return false;
}
final private boolean jj_3R_132() {
if (jj_scan_token(PLUS)) return true;
return false;
}
final private boolean jj_3R_143() {
if (jj_scan_token(STAR)) return true;
return false;
}
final private boolean jj_3R_124() {
xsp = jj_scanpos;
if (jj_3R_132()) {
jj_scanpos = xsp;
if (jj_3R_133()) return true;
if (jj_3R_115()) return true;
return false;
}
final private boolean jj_3R_115() {
xsp = jj_scanpos;
if (jj_3R_124()) {
jj_scanpos = xsp;
if (jj_3R_125()) {
jj_scanpos = xsp;
if (jj_3R_126()) {
jj_scanpos = xsp;
if (jj_3R_127()) return true;
return false;
}
final private boolean jj_3R_137() {
xsp = jj_scanpos;
if (jj_3R_143()) {
jj_scanpos = xsp;
if (jj_3R_144()) {
jj_scanpos = xsp;
if (jj_3R_145()) return true;
if (jj_3R_115()) return true;
return false;
}
final private boolean jj_3R_131() {
if (jj_scan_token(RUNSIGNEDSHIFT)) return true;
return false;
}
final private boolean jj_3R_119() {
if (jj_scan_token(LE)) return true;
return false;
}
final private boolean jj_3R_138() {
if (jj_scan_token(PLUS)) return true;
return false;
}
final private boolean jj_3R_112() {
if (jj_3R_115()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_88() {
if (jj_3R_86()) return true;
return false;
}
final private boolean jj_3R_130() {
if (jj_scan_token(RSIGNEDSHIFT)) return true;
return false;
}
final private boolean jj_3R_128() {
xsp = jj_scanpos;
if (jj_3R_138()) {
jj_scanpos = xsp;
if (jj_3R_139()) return true;
if (jj_3R_112()) return true;
return false;
}
final private boolean jj_3R_87() {
if (jj_3R_82()) return true;
return false;
}
final private boolean jj_3R_118() {
if (jj_scan_token(GT)) return true;
return false;
}
final private boolean jj_3R_129() {
if (jj_scan_token(LSHIFT)) return true;
return false;
}
final private boolean jj_3R_116() {
xsp = jj_scanpos;
if (jj_3R_129()) {
jj_scanpos = xsp;
if (jj_3R_130()) {
jj_scanpos = xsp;
if (jj_3R_131()) return true;
if (jj_3R_108()) return true;
return false;
}
final private boolean jj_3R_108() {
if (jj_3R_112()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3_8() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_3R_25()) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_86() {
if (jj_3_8()) return true;
while (true) {
xsp = jj_scanpos;
}
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_117() {
if (jj_scan_token(LT)) return true;
return false;
}
final private boolean jj_3R_106() {
if (jj_3R_108()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_113() {
xsp = jj_scanpos;
if (jj_3R_117()) {
jj_scanpos = xsp;
if (jj_3R_118()) {
jj_scanpos = xsp;
if (jj_3R_119()) {
jj_scanpos = xsp;
if (jj_3R_120()) return true;
if (jj_3R_106()) return true;
return false;
}
final private boolean jj_3R_111() {
if (jj_scan_token(NE)) return true;
return false;
}
final private boolean jj_3R_109() {
if (jj_scan_token(INSTANCEOF)) return true;
if (jj_3R_114()) return true;
return false;
}
final private boolean jj_3R_104() {
if (jj_3R_106()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_81() {
if (jj_scan_token(NEW)) return true;
if (jj_3R_24()) return true;
xsp = jj_scanpos;
if (jj_3R_87()) {
jj_scanpos = xsp;
if (jj_3R_88()) return true;
return false;
}
final private boolean jj_3_7() {
if (jj_scan_token(NEW)) return true;
if (jj_3R_23()) return true;
if (jj_3R_86()) return true;
return false;
}
final private boolean jj_3R_70() {
xsp = jj_scanpos;
if (jj_3_7()) {
jj_scanpos = xsp;
if (jj_3R_81()) return true;
return false;
}
final private boolean jj_3R_97() {
if (jj_scan_token(COMMA)) return true;
if (jj_3R_25()) return true;
return false;
}
final private boolean jj_3R_39() {
if (jj_scan_token(ORASSIGN)) return true;
return false;
}
final private boolean jj_3R_110() {
if (jj_scan_token(EQ)) return true;
return false;
}
final private boolean jj_3R_102() {
if (jj_3R_104()) return true;
xsp = jj_scanpos;
return false;
}
final private boolean jj_3R_107() {
xsp = jj_scanpos;
if (jj_3R_110()) {
jj_scanpos = xsp;
if (jj_3R_111()) return true;
if (jj_3R_102()) return true;
return false;
}
final private boolean jj_3R_94() {
if (jj_3R_25()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_89() {
if (jj_3R_94()) return true;
return false;
}
final private boolean jj_3R_38() {
if (jj_scan_token(XORASSIGN)) return true;
return false;
}
final private boolean jj_3R_82() {
if (jj_scan_token(LPAREN)) return true;
xsp = jj_scanpos;
if (jj_scan_token(RPAREN)) return true;
return false;
}
final private boolean jj_3R_105() {
if (jj_scan_token(BIT_AND)) return true;
if (jj_3R_100()) return true;
return false;
}
final private boolean jj_3R_100() {
if (jj_3R_102()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_37() {
if (jj_scan_token(ANDASSIGN)) return true;
return false;
}
final private boolean jj_3R_85() {
if (jj_scan_token(NULL)) return true;
return false;
}
final private boolean jj_3R_103() {
if (jj_scan_token(XOR)) return true;
if (jj_3R_98()) return true;
return false;
}
final private boolean jj_3R_98() {
if (jj_3R_100()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_92() {
if (jj_scan_token(FALSE)) return true;
return false;
}
final private boolean jj_3R_36() {
if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true;
return false;
}
final private boolean jj_3R_91() {
if (jj_scan_token(TRUE)) return true;
return false;
}
final private boolean jj_3R_84() {
xsp = jj_scanpos;
if (jj_3R_91()) {
jj_scanpos = xsp;
if (jj_3R_92()) return true;
return false;
}
final private boolean jj_3R_101() {
if (jj_scan_token(BIT_OR)) return true;
if (jj_3R_95()) return true;
return false;
}
final private boolean jj_3R_95() {
if (jj_3R_98()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_35() {
if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true;
return false;
}
final private boolean jj_3R_80() {
if (jj_3R_85()) return true;
return false;
}
final private boolean jj_3R_66() {
if (jj_3R_69()) return true;
return false;
}
final private boolean jj_3R_79() {
if (jj_3R_84()) return true;
return false;
}
final private boolean jj_3R_78() {
if (jj_scan_token(STRING_LITERAL)) return true;
return false;
}
final private boolean jj_3R_99() {
if (jj_scan_token(SC_AND)) return true;
if (jj_3R_90()) return true;
return false;
}
final private boolean jj_3R_90() {
if (jj_3R_95()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_34() {
if (jj_scan_token(LSHIFTASSIGN)) return true;
return false;
}
final private boolean jj_3R_65() {
if (jj_scan_token(NEW)) return true;
return false;
}
final private boolean jj_3R_77() {
if (jj_scan_token(CHARACTER_LITERAL)) return true;
return false;
}
final private boolean jj_3R_76() {
if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
return false;
}
final private boolean jj_3R_33() {
if (jj_scan_token(MINUSASSIGN)) return true;
return false;
}
final private boolean jj_3R_69() {
xsp = jj_scanpos;
if (jj_3R_75()) {
jj_scanpos = xsp;
if (jj_3R_76()) {
jj_scanpos = xsp;
if (jj_3R_77()) {
jj_scanpos = xsp;
if (jj_3R_78()) {
jj_scanpos = xsp;
if (jj_3R_79()) {
jj_scanpos = xsp;
if (jj_3R_80()) return true;
return false;
}
final private boolean jj_3R_75() {
if (jj_scan_token(INTEGER_LITERAL)) return true;
return false;
}
final private boolean jj_3R_96() {
if (jj_scan_token(SC_OR)) return true;
if (jj_3R_83()) return true;
return false;
}
final private boolean jj_3R_83() {
if (jj_3R_90()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_64() {
if (jj_scan_token(SUPER)) return true;
return false;
}
final private boolean jj_3R_32() {
if (jj_scan_token(PLUSASSIGN)) return true;
return false;
}
final private boolean jj_3R_73() {
if (jj_3R_82()) return true;
return false;
}
final private boolean jj_3R_72() {
if (jj_scan_token(DOT)) return true;
if (jj_scan_token(IDENTIFIER)) return true;
return false;
}
final private boolean jj_3R_74() {
if (jj_3R_83()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_63() {
if (jj_scan_token(THIS)) return true;
return false;
}
final private boolean jj_3R_31() {
if (jj_scan_token(REMASSIGN)) return true;
return false;
}
final private boolean jj_3R_58() {
xsp = jj_scanpos;
if (jj_3R_71()) {
jj_scanpos = xsp;
if (jj_3R_72()) {
jj_scanpos = xsp;
if (jj_3R_73()) return true;
return false;
}
final private boolean jj_3R_71() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_3R_25()) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_93() {
if (jj_scan_token(HOOK)) return true;
if (jj_3R_25()) return true;
if (jj_scan_token(COLON)) return true;
if (jj_3R_68()) return true;
return false;
}
final private boolean jj_3R_57() {
if (jj_3R_70()) return true;
return false;
}
final private boolean jj_3R_30() {
if (jj_scan_token(SLASHASSIGN)) return true;
return false;
}
final private boolean jj_3R_27() {
if (jj_3R_58()) return true;
return false;
}
final private boolean jj_3R_56() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_25()) return true;
if (jj_scan_token(RPAREN)) return true;
return false;
}
final private boolean jj_3R_152() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_55() {
if (jj_scan_token(SUPER)) return true;
if (jj_scan_token(DOT)) return true;
if (jj_scan_token(IDENTIFIER)) return true;
return false;
}
final private boolean jj_3R_29() {
if (jj_scan_token(STARASSIGN)) return true;
return false;
}
final private boolean jj_3R_68() {
if (jj_3R_74()) return true;
xsp = jj_scanpos;
return false;
}
final private boolean jj_3R_54() {
if (jj_scan_token(THIS)) return true;
return false;
}
final private boolean jj_3R_62() {
if (jj_scan_token(IDENTIFIER)) return true;
return false;
}
final private boolean jj_3R_53() {
if (jj_3R_24()) return true;
return false;
}
final private boolean jj_3R_153() {
if (jj_scan_token(LBRACKET)) return true;
if (jj_scan_token(RBRACKET)) return true;
return false;
}
final private boolean jj_3R_26() {
xsp = jj_scanpos;
if (jj_3R_52()) {
jj_scanpos = xsp;
if (jj_3R_53()) {
jj_scanpos = xsp;
if (jj_3R_54()) {
jj_scanpos = xsp;
if (jj_3R_55()) {
jj_scanpos = xsp;
if (jj_3R_56()) {
jj_scanpos = xsp;
if (jj_3R_57()) return true;
return false;
}
final private boolean jj_3R_52() {
if (jj_3R_69()) return true;
return false;
}
final private boolean jj_3R_21() {
xsp = jj_scanpos;
if (jj_3R_28()) {
jj_scanpos = xsp;
if (jj_3R_29()) {
jj_scanpos = xsp;
if (jj_3R_30()) {
jj_scanpos = xsp;
if (jj_3R_31()) {
jj_scanpos = xsp;
if (jj_3R_32()) {
jj_scanpos = xsp;
if (jj_3R_33()) {
jj_scanpos = xsp;
if (jj_3R_34()) {
jj_scanpos = xsp;
if (jj_3R_35()) {
jj_scanpos = xsp;
if (jj_3R_36()) {
jj_scanpos = xsp;
if (jj_3R_37()) {
jj_scanpos = xsp;
if (jj_3R_38()) {
jj_scanpos = xsp;
if (jj_3R_39()) return true;
return false;
}
final private boolean jj_3R_28() {
if (jj_scan_token(ASSIGN)) return true;
return false;
}
final private boolean jj_3R_61() {
if (jj_scan_token(LPAREN)) return true;
return false;
}
final private boolean jj_3_2() {
if (jj_3R_20()) return true;
if (jj_3R_21()) return true;
return false;
}
final private boolean jj_3R_20() {
if (jj_3R_26()) return true;
while (true) {
xsp = jj_scanpos;
}
return false;
}
final private boolean jj_3R_60() {
if (jj_scan_token(BANG)) return true;
return false;
}
final private boolean jj_3R_155() {
if (jj_scan_token(DECR)) return true;
return false;
}
final private boolean jj_3R_67() {
if (jj_3R_20()) return true;
if (jj_3R_21()) return true;
if (jj_3R_25()) return true;
return false;
}
final private boolean jj_3R_150() {
if (jj_scan_token(LPAREN)) return true;
if (jj_3R_24()) return true;
while (true) {
xsp = jj_scanpos;
}
if (jj_scan_token(RPAREN)) return true;
if (jj_3R_136()) return true;
return false;
}
final private boolean jj_3R_59() {
if (jj_scan_token(TILDE)) return true;
return false;
}
final private boolean jj_3R_51() {
if (jj_3R_68()) return true;
return false;
}
private int jj_ntk;
private int jj_la;
public boolean lookingAhead = false;
private boolean jj_semLA;
private int jj_gen;
final private int[] jj_la1 = new int[44];
final private int[] jj_la1_0 = {0x8209400,0x0,0x8209400,0x0,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x0,0x1000000,0x1000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1000000,0x0,0x1000000,0x1000000,0x1000000,0x0,0x0,0x0,};
final private int[] jj_la1_1 = {0x2014,0x0,0x2014,0x0,0x884480c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x884480c0,0x0,0x0,0x884480c0,0x884480c0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x884480c0,0x0,0x88400080,0x400000,0x884480c0,0x0,0x0,0x40,};
final private int[] jj_la1_2 = {0x8,0x400,0x0,0x2000,0xf00c004e,0x8000,0x100000,0x4000000,0x8000000,0x0,0x0,0x0,0x2400000,0x2400000,0x0,0x1830000,0x1830000,0x0,0x0,0xc0000000,0xc0000000,0x0,0x0,0xc0000000,0xf00c004e,0xc0000,0xc0000,0x4e,0xc004e,0x40,0x30000000,0x30000000,0x400,0x400,0x40,0x4440,0x4e,0x4440,0x6,0x0,0xf00c004e,0x2000,0x440,0x0,};
final private int[] jj_la1_3 = {0x0,0x0,0x0,0x0,0x0,0xffe00,0x0,0x0,0x0,0x8,0x10,0x4,0x0,0x0,0x0,0x0,0x0,0x1c0,0x1c0,0x0,0x0,0x23,0x23,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
private boolean jj_rescan = false;
private int jj_gc = 0;
jj_ntk = -1;
jj_gen = 0;
}
jj_ntk = -1;
jj_gen = 0;
}
token_source = tm;
jj_ntk = -1;
jj_gen = 0;
}
token_source = tm;
jj_ntk = -1;
jj_gen = 0;
}
jj_ntk = -1;
jj_gen++;
if (++jj_gc > 100) {
jj_gc = 0;
JJExpressionParserCalls c = jj_2_rtns[i];
while (c != null) {
c = c.next;
}
}
}
return token;
}
throw generateParseException();
}
final private boolean jj_scan_token(int kind) {
if (jj_scanpos == jj_lastpos) {
jj_la--;
} else {
}
} else {
}
if (jj_rescan) {
}
}
final public Token getNextToken() {
jj_ntk = -1;
jj_gen++;
return token;
}
for (int i = 0; i < index; i++) {
}
return t;
}
final private int jj_ntk() {
else
}
private int[] jj_expentry;
private int jj_kind = -1;
private int[] jj_lasttokens = new int[100];
private int jj_endpos;
if (pos >= 100) return;
} 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];
}
boolean exists = false;
exists = true;
if (oldentry[i] != jj_expentry[i]) {
exists = false;
break;
}
}
if (exists) break;
}
}
}
}
final public ParseException generateParseException() {
boolean[] la1tokens = new boolean[116];
for (int i = 0; i < 116; i++) {
la1tokens[i] = false;
}
if (jj_kind >= 0) {
jj_kind = -1;
}
for (int i = 0; i < 44; i++) {
for (int j = 0; j < 32; j++) {
la1tokens[j] = true;
}
la1tokens[32+j] = true;
}
la1tokens[64+j] = true;
}
la1tokens[96+j] = true;
}
}
}
}
for (int i = 0; i < 116; i++) {
if (la1tokens[i]) {
jj_expentry = new int[1];
jj_expentry[0] = i;
}
}
jj_endpos = 0;
}
}
final public void enable_tracing() {
}
final public void disable_tracing() {
}
final private void jj_rescan_token() {
jj_rescan = true;
for (int i = 0; i < 9; i++) {
JJExpressionParserCalls p = jj_2_rtns[i];
do {
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;
}
}
p = p.next;
} while (p != null);
}
jj_rescan = false;
}
p = p.next;
}
}
}
final class JJExpressionParserCalls {
int gen;
int arg;
}