final public void StatementModifier(Statement stmt) throws ParseException {
Token t;
Expression expr;
IfStatement ifStmt;
Statement context = flowPeek();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case IF:
t = jj_consume_token(IF);
Expression();
jj_consume_token(SEMICOLON);
ifStmt = new IfStatement(context, toLocation(t), (Expression)pop());
ifStmt.setChildStatement(stmt);
stmt.setParentStatement(ifStmt);
context.setChildStatement(ifStmt);
break;
case WHILE:
t = jj_consume_token(WHILE);
Expression();
jj_consume_token(SEMICOLON);
WhileStatement whileStmt = new WhileStatement(context, toLocation(t), (Expression)pop(), null);
whileStmt.setChildStatement(stmt);
stmt.setParentStatement(whileStmt);
context.setChildStatement(whileStmt);
break;
case SEMICOLON:
t = jj_consume_token(SEMICOLON);
context.setChildStatement(stmt);
break;
default:
jj_la1[52] = jj_gen;
jj_consume_token(-1);
throw new ParseException();