* @author Matthieu Casanova
*/
public abstract class OperatorExpression
- extends Expression
- implements OperatorIds {
+ extends Expression
+ implements OperatorIds {
- public int operator;
+ public int operator;
- public OperatorExpression(int operator, int sourceStart, int sourceEnd) {
- super(sourceStart, sourceEnd);
- this.operator = operator;
- }
-
- public String operatorToString() {
- switch (operator) {
- case EQUAL_EQUAL:
- return "=="; //$NON-NLS-1$
- case LESS_EQUAL:
- return "<="; //$NON-NLS-1$
- case GREATER_EQUAL:
- return ">="; //$NON-NLS-1$
- case NOT_EQUAL:
- return "!="; //$NON-NLS-1$
- case LEFT_SHIFT:
- return "<<"; //$NON-NLS-1$
- case RIGHT_SHIFT:
- return ">>"; //$NON-NLS-1$
- case UNSIGNED_RIGHT_SHIFT:
- return ">>>"; //$NON-NLS-1$
- case OR_OR:
- return "||"; //$NON-NLS-1$
- case AND_AND:
- return "&&"; //$NON-NLS-1$
- case PLUS:
- return "+"; //$NON-NLS-1$
- case MINUS:
- return "-"; //$NON-NLS-1$
- case NOT:
- return "!"; //$NON-NLS-1$
- case REMAINDER:
- return "%"; //$NON-NLS-1$
- case XOR:
- return "^"; //$NON-NLS-1$
- case AND:
- return "&"; //$NON-NLS-1$
- case MULTIPLY:
- return "*"; //$NON-NLS-1$
- case OR:
- return "|"; //$NON-NLS-1$
- case TWIDDLE:
- return "~"; //$NON-NLS-1$
- case DIVIDE:
- return "/"; //$NON-NLS-1$
- case GREATER:
- return ">"; //$NON-NLS-1$
- case LESS:
- return "<"; //$NON-NLS-1$
- case ORL:
- return "OR"; //$NON-NLS-1$
- case ANDL:
- return "AND"; //$NON-NLS-1$
- case DOT:
- return "."; //$NON-NLS-1$
- case DIF:
- return "<>"; //$NON-NLS-1$
- case BANG_EQUAL_EQUAL:
- return "!=="; //$NON-NLS-1$
- case EQUAL_EQUAL_EQUAL:
- return "==="; //$NON-NLS-1$
- case EQUAL:
- return "="; //$NON-NLS-1$
- case AT:
- return "@"; //$NON-NLS-1$
- }
- ;
- return "unknown operator"; //$NON-NLS-1$
- }
+ public OperatorExpression(int operator, int sourceStart, int sourceEnd) {
+ super(sourceStart, sourceEnd);
+ this.operator = operator;
+ }
- public String toStringExpression() {
- //subclass redefine toStringExpressionNoParenthesis()
- return "(" + toStringExpressionNoParenthesis() + ")"; //$NON-NLS-2$ //$NON-NLS-1$
+ public String operatorToString() {
+ switch (operator) {
+ case EQUAL_EQUAL:
+ return "=="; //$NON-NLS-1$
+ case LESS_EQUAL:
+ return "<="; //$NON-NLS-1$
+ case GREATER_EQUAL:
+ return ">="; //$NON-NLS-1$
+ case NOT_EQUAL:
+ return "!="; //$NON-NLS-1$
+ case LEFT_SHIFT:
+ return "<<"; //$NON-NLS-1$
+ case RIGHT_SHIFT:
+ return ">>"; //$NON-NLS-1$
+ case UNSIGNED_RIGHT_SHIFT:
+ return ">>>"; //$NON-NLS-1$
+ case OR_OR:
+ return "||"; //$NON-NLS-1$
+ case AND_AND:
+ return "&&"; //$NON-NLS-1$
+ case PLUS:
+ return "+"; //$NON-NLS-1$
+ case MINUS:
+ return "-"; //$NON-NLS-1$
+ case NOT:
+ return "!"; //$NON-NLS-1$
+ case REMAINDER:
+ return "%"; //$NON-NLS-1$
+ case XOR:
+ return "^"; //$NON-NLS-1$
+ case AND:
+ return "&"; //$NON-NLS-1$
+ case MULTIPLY:
+ return "*"; //$NON-NLS-1$
+ case OR:
+ return "|"; //$NON-NLS-1$
+ case TWIDDLE:
+ return "~"; //$NON-NLS-1$
+ case DIVIDE:
+ return "/"; //$NON-NLS-1$
+ case GREATER:
+ return ">"; //$NON-NLS-1$
+ case LESS:
+ return "<"; //$NON-NLS-1$
+ case ORL:
+ return "OR"; //$NON-NLS-1$
+ case ANDL:
+ return "AND"; //$NON-NLS-1$
+ case DOT:
+ return "."; //$NON-NLS-1$
+ case DIF:
+ return "<>"; //$NON-NLS-1$
+ case BANG_EQUAL_EQUAL:
+ return "!=="; //$NON-NLS-1$
+ case EQUAL_EQUAL_EQUAL:
+ return "==="; //$NON-NLS-1$
+ case EQUAL:
+ return "="; //$NON-NLS-1$
+ case AT:
+ return "@"; //$NON-NLS-1$
+ case PLUS_PLUS:
+ return "++"; //$NON-NLS-1$
+ case MINUS_MINUS:
+ return "--"; //$NON-NLS-1$
+ case NEW:
+ return "new "; //$NON-NLS-1$
}
-
- public abstract String toStringExpressionNoParenthesis();
+ return "unknown operator " +operator; //$NON-NLS-1$
+ }
}
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case INTEGER_LITERAL:
case FALSE:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case INTEGER_LITERAL:
expr = UnaryExpression();
{if (true) return new PrefixedUnaryExpression(expr,operator,pos);}
break;
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
expr = PreIncDecExpression();
{if (true) return expr;}
break;
final int operator;
final int pos = SimpleCharStream.getPosition();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- jj_consume_token(INCR);
- operator = OperatorIds.PLUS_PLUS;
+ case PLUS_PLUS:
+ jj_consume_token(PLUS_PLUS);
+ operator = OperatorIds.PLUS_PLUS;
break;
- case DECR:
- jj_consume_token(DECR);
- operator = OperatorIds.MINUS_MINUS;
+ case MINUS_MINUS:
+ jj_consume_token(MINUS_MINUS);
+ operator = OperatorIds.MINUS_MINUS;
break;
default:
jj_la1[52] = jj_gen;
final int pos = SimpleCharStream.getPosition();
expr = PrimaryExpression();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- jj_consume_token(INCR);
- operator = OperatorIds.PLUS_PLUS;
+ case PLUS_PLUS:
+ jj_consume_token(PLUS_PLUS);
+ operator = OperatorIds.PLUS_PLUS;
break;
- case DECR:
- jj_consume_token(DECR);
- operator = OperatorIds.MINUS_MINUS;
+ case MINUS_MINUS:
+ jj_consume_token(MINUS_MINUS);
+ operator = OperatorIds.MINUS_MINUS;
break;
default:
jj_la1[56] = jj_gen;
case DOLLAR:
case DOLLAR_ID:
var = VariableDeclaratorId();
- {if (true) return new ConstantIdentifier(var.toCharArray(),
- pos,
- SimpleCharStream.getPosition());}
+ {if (true) return new VariableDeclaration(currentSegment,
+ var.toCharArray(),
+ pos,
+ SimpleCharStream.getPosition());}
break;
default:
jj_la1[61] = jj_gen;
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case ARRAY:
case NEW:
case DOLLAR:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case IDENTIFIER:
case DOLLAR_ID:
statement = StatementExpression();
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
throw new Error("Missing return statement in function");
}
- static final public Statement StatementExpression() throws ParseException {
+ static final public Expression StatementExpression() throws ParseException {
Expression expr,expr2;
int operator;
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
expr = PreIncDecExpression();
{if (true) return expr;}
break;
case DOLLAR_ID:
expr = PrimaryExpression();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case ASSIGN:
case PLUSASSIGN:
case MINUSASSIGN:
case LSHIFTASSIGN:
case RSIGNEDSHIFTASSIGN:
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
- case INCR:
- jj_consume_token(INCR);
- {if (true) return new PostfixedUnaryExpression(expr,
+ case PLUS_PLUS:
+ jj_consume_token(PLUS_PLUS);
+ {if (true) return new PostfixedUnaryExpression(expr,
OperatorIds.PLUS_PLUS,
SimpleCharStream.getPosition());}
break;
- case DECR:
- jj_consume_token(DECR);
- {if (true) return new PostfixedUnaryExpression(expr,
+ case MINUS_MINUS:
+ jj_consume_token(MINUS_MINUS);
+ {if (true) return new PostfixedUnaryExpression(expr,
OperatorIds.MINUS_MINUS,
SimpleCharStream.getPosition());}
break;
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
static final public ForStatement ForStatement() throws ParseException {
final Token token;
final int pos = SimpleCharStream.getPosition();
-Statement[] initializations = null;
+Expression[] initializations = null;
Expression condition = null;
-Statement[] increments = null;
+Expression[] increments = null;
Statement action;
final ArrayList list = new ArrayList();
final int startBlock, endBlock;
case ARRAY:
case NEW:
case DOLLAR:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case IDENTIFIER:
case DOLLAR_ID:
initializations = ForInit();
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case ARRAY:
case NEW:
case DOLLAR:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case IDENTIFIER:
case DOLLAR_ID:
increments = StatementExpressionList();
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
throw new Error("Missing return statement in function");
}
- static final public Statement[] ForInit() throws ParseException {
- Statement[] statements;
+ static final public Expression[] ForInit() throws ParseException {
+ Expression[] exprs;
if (jj_2_8(2147483647)) {
- statements = LocalVariableDeclaration();
- {if (true) return statements;}
+ exprs = LocalVariableDeclaration();
+ {if (true) return exprs;}
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ARRAY:
case NEW:
case DOLLAR:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case IDENTIFIER:
case DOLLAR_ID:
- statements = StatementExpressionList();
- {if (true) return statements;}
+ exprs = StatementExpressionList();
+ {if (true) return exprs;}
break;
default:
jj_la1[119] = jj_gen;
throw new Error("Missing return statement in function");
}
- static final public Statement[] StatementExpressionList() throws ParseException {
+ static final public Expression[] StatementExpressionList() throws ParseException {
final ArrayList list = new ArrayList();
- Statement expr;
+ Expression expr;
expr = StatementExpression();
list.add(expr);
label_39:
StatementExpression();
list.add(expr);
}
- Statement[] stmtsArray = new Statement[list.size()];
- list.toArray(stmtsArray);
- {if (true) return stmtsArray;}
+ Expression[] exprsArray = new Expression[list.size()];
+ list.toArray(exprsArray);
+ {if (true) return exprsArray;}
throw new Error("Missing return statement in function");
}
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
case AT:
case DOLLAR:
case BANG:
- case INCR:
- case DECR:
+ case PLUS_PLUS:
+ case MINUS_MINUS:
case PLUS:
case MINUS:
case BIT_AND:
return false;
}
- static final private boolean jj_3R_183() {
- if (jj_3R_52()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_85() {
if (jj_scan_token(LIST)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ static final private boolean jj_3R_183() {
+ if (jj_3R_52()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_78() {
if (jj_scan_token(REAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
}
static final private boolean jj_3R_160() {
- if (jj_scan_token(DECR)) return true;
+ if (jj_scan_token(MINUS_MINUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
static final private boolean jj_3R_159() {
- if (jj_scan_token(INCR)) return true;
+ if (jj_scan_token(PLUS_PLUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
return false;
}
- static final private boolean jj_3R_198() {
- if (jj_scan_token(COMMA)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_57() {
if (jj_3R_50()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ static final private boolean jj_3R_198() {
+ if (jj_scan_token(COMMA)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_135() {
Token xsp;
xsp = jj_scanpos;
return false;
}
+ static final private boolean jj_3R_47() {
+ if (jj_3R_57()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_58()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
+ return false;
+ }
+
static final private boolean jj_3R_192() {
if (jj_scan_token(LPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_47() {
- if (jj_3R_57()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_58()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
- return false;
- }
-
static final private boolean jj_3R_136() {
if (jj_scan_token(LSHIFT)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ static final private boolean jj_3_6() {
+ if (jj_3R_45()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(SEMICOLON)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_121() {
if (jj_3R_128()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3_6() {
- if (jj_3R_45()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(SEMICOLON)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_201() {
if (jj_scan_token(ARRAYASSIGN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_127() {
- if (jj_scan_token(TRIPLEEQUAL)) return true;
+ static final private boolean jj_3R_200() {
+ if (jj_3R_202()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_200() {
- if (jj_3R_202()) return true;
+ static final private boolean jj_3R_127() {
+ if (jj_scan_token(TRIPLEEQUAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
return false;
}
+ static final private boolean jj_3R_177() {
+ if (jj_scan_token(NULL)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_118() {
if (jj_scan_token(BIT_AND)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_177() {
- if (jj_scan_token(NULL)) return true;
+ static final private boolean jj_3R_176() {
+ if (jj_scan_token(FALSE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_176() {
- if (jj_scan_token(FALSE)) return true;
+ static final private boolean jj_3R_175() {
+ if (jj_scan_token(TRUE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
return false;
}
- static final private boolean jj_3R_175() {
- if (jj_scan_token(TRUE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_89() {
if (jj_scan_token(IDENTIFIER)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_88() {
- if (jj_scan_token(LBRACE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_45()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(RBRACE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- static final private boolean jj_3R_59() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_88()) {
- jj_scanpos = xsp;
- if (jj_3R_89()) {
- jj_scanpos = xsp;
- if (jj_3R_90()) {
- jj_scanpos = xsp;
- if (jj_3R_91()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_169() {
Token xsp;
xsp = jj_scanpos;
return false;
}
- static final private boolean jj_3R_116() {
- if (jj_scan_token(XOR)) return true;
+ static final private boolean jj_3R_88() {
+ if (jj_scan_token(LBRACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_115()) return true;
+ if (jj_3R_45()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(RBRACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_113() {
+ static final private boolean jj_3R_59() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_88()) {
+ jj_scanpos = xsp;
+ if (jj_3R_89()) {
+ jj_scanpos = xsp;
+ if (jj_3R_90()) {
+ jj_scanpos = xsp;
+ if (jj_3R_91()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ static final private boolean jj_3R_116() {
+ if (jj_scan_token(XOR)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
if (jj_3R_115()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_116()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
return false;
}
+ static final private boolean jj_3R_113() {
+ if (jj_3R_115()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_116()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
+ return false;
+ }
+
static final private boolean jj_3R_98() {
if (jj_scan_token(LBRACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- static final private boolean jj_3R_105() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_111()) {
- jj_scanpos = xsp;
- if (jj_3R_112()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_104()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_195() {
if (jj_3R_199()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ static final private boolean jj_3R_105() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_111()) {
+ jj_scanpos = xsp;
+ if (jj_3R_112()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_104()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_97() {
if (jj_scan_token(HOOK)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ static final private boolean jj_3R_100() {
+ if (jj_scan_token(COMMA)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_50()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
static final private boolean jj_3R_45() {
Token xsp;
xsp = jj_scanpos;
return false;
}
- static final private boolean jj_3R_100() {
- if (jj_scan_token(COMMA)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_50()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
static final private boolean jj_3R_194() {
- if (jj_scan_token(DECR)) return true;
+ if (jj_scan_token(MINUS_MINUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
static final private boolean jj_3R_193() {
- if (jj_scan_token(INCR)) return true;
+ if (jj_scan_token(PLUS_PLUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
{
<OR_OR : "||">
| <AND_AND : "&&">
-| <INCR : "++">
-| <DECR : "--">
+| <PLUS_PLUS : "++">
+| <MINUS_MINUS : "--">
| <PLUS : "+">
| <MINUS : "-">
| <STAR : "*">
final int pos = SimpleCharStream.getPosition();
}
{
- ( <INCR> {operator = OperatorIds.PLUS_PLUS;}
- | <DECR> {operator = OperatorIds.MINUS_MINUS;})
+ ( <PLUS_PLUS> {operator = OperatorIds.PLUS_PLUS;}
+ | <MINUS_MINUS> {operator = OperatorIds.MINUS_MINUS;})
expr = PrimaryExpression()
{return new PrefixedUnaryExpression(expr,operator,pos);}
}
}
{
expr = PrimaryExpression()
- [ <INCR> {operator = OperatorIds.PLUS_PLUS;}
- | <DECR> {operator = OperatorIds.MINUS_MINUS;}]
+ [ <PLUS_PLUS> {operator = OperatorIds.PLUS_PLUS;}
+ | <MINUS_MINUS> {operator = OperatorIds.MINUS_MINUS;}]
{
if (operator == -1) {
return expr;
{return expr;}
}
+/**
+ * An array declarator.
+ * array(vars)
+ * @return an array
+ */
ArrayInitializer ArrayDeclarator() :
{
final ArrayVariableDeclaration[] vars;
| <NEW> expr = ClassIdentifier() {return new PrefixedUnaryExpression(expr,
OperatorIds.NEW,
pos);}
-| var = VariableDeclaratorId() {return new ConstantIdentifier(var.toCharArray(),
- pos,
- SimpleCharStream.getPosition());}
+| var = VariableDeclaratorId() {return new VariableDeclaration(currentSegment,
+ var.toCharArray(),
+ pos,
+ SimpleCharStream.getPosition());}
}
PrefixedUnaryExpression classInstantiation() :
return new EmptyStatement(pos-1,pos);}
}
-Statement StatementExpression() :
+Expression StatementExpression() :
{
Expression expr,expr2;
int operator;
expr = PreIncDecExpression() {return expr;}
|
expr = PrimaryExpression()
- [ <INCR> {return new PostfixedUnaryExpression(expr,
+ [ <PLUS_PLUS> {return new PostfixedUnaryExpression(expr,
OperatorIds.PLUS_PLUS,
SimpleCharStream.getPosition());}
- | <DECR> {return new PostfixedUnaryExpression(expr,
+ | <MINUS_MINUS> {return new PostfixedUnaryExpression(expr,
OperatorIds.MINUS_MINUS,
SimpleCharStream.getPosition());}
| operator = AssignmentOperator() expr2 = Expression()
{
final Token token;
final int pos = SimpleCharStream.getPosition();
-Statement[] initializations = null;
+Expression[] initializations = null;
Expression condition = null;
-Statement[] increments = null;
+Expression[] increments = null;
Statement action;
final ArrayList list = new ArrayList();
final int startBlock, endBlock;
)
}
-Statement[] ForInit() :
+Expression[] ForInit() :
{
- Statement[] statements;
+ Expression[] exprs;
}
{
LOOKAHEAD(LocalVariableDeclaration())
- statements = LocalVariableDeclaration()
- {return statements;}
+ exprs = LocalVariableDeclaration()
+ {return exprs;}
|
- statements = StatementExpressionList()
- {return statements;}
+ exprs = StatementExpressionList()
+ {return exprs;}
}
-Statement[] StatementExpressionList() :
+Expression[] StatementExpressionList() :
{
final ArrayList list = new ArrayList();
- Statement expr;
+ Expression expr;
}
{
expr = StatementExpression() {list.add(expr);}
(<COMMA> StatementExpression() {list.add(expr);})*
{
- Statement[] stmtsArray = new Statement[list.size()];
- list.toArray(stmtsArray);
- return stmtsArray;}
+ Expression[] exprsArray = new Expression[list.size()];
+ list.toArray(exprsArray);
+ return exprsArray;}
}
Continue ContinueStatement() :