@Override @SuppressWarnings("unchecked") public void visitSwitch(SwitchStatement stat) { stat.setExpression(replaceExpr(stat.getExpression())); replaceAll(stat.getCaseStatements()); stat.setDefaultStatement(replace(stat.getDefaultStatement())); }
public void visitSwitch(SwitchStatement statement) { statement.getExpression().visit(this); for (CaseStatement caseStatement : statement.getCaseStatements()) { caseStatement.visit(this); } statement.getDefaultStatement().visit(this); }
@Override public void run() { literal(stmt.getStatementLabel()); visit(stmt.getExpression()); visit(stmt.getDefaultStatement()); visit(stmt.getCaseStatements()); } });
for (CaseStatement caseStatement : swi.getCaseStatements()) { final Statement code = adjustSwitchCaseCode(caseStatement.getCode(), scope, false); if (doAdd) caseStatement.setCode(code); final Statement defaultStatement = adjustSwitchCaseCode(swi.getDefaultStatement(), scope, true); if (doAdd) swi.setDefaultStatement(defaultStatement); return swi;
unknownAST(node); SwitchStatement switchStatement = new SwitchStatement(expression, list, defaultStatement); configureAST(switchStatement, switchNode); return switchStatement;
SwitchStatement sw = (SwitchStatement) statement; List<CaseStatement> caseStatements = sw.getCaseStatements(); for (CaseStatement caseStatement : caseStatements) { Statement existingCode = caseStatement.getCode();
public void visitSwitch(final SwitchStatement statement) { assertStatementAuthorized(statement); statement.getExpression().visit(this); for (CaseStatement caseStatement : statement.getCaseStatements()) { caseStatement.visit(this); } statement.getDefaultStatement().visit(this); }
List caseList = swi.getCaseStatements(); for (Iterator iter = caseList.iterator(); iter.hasNext(); ) { CaseStatement caseStatement = (CaseStatement) iter.next(); caseStatement.setCode(adjustSwitchCaseCode(caseStatement.getCode(), scope, false)); swi.setDefaultStatement(adjustSwitchCaseCode(swi.getDefaultStatement(), scope, true)); return swi;
protected Statement switchStatement(AST switchNode) { AST node = switchNode.getFirstChild(); Expression expression = expression(node); Statement defaultStatement = EmptyStatement.INSTANCE; List list = new ArrayList(); for (node = node.getNextSibling(); isType(CASE_GROUP, node); node = node.getNextSibling()) { AST child = node.getFirstChild(); if (isType(LITERAL_case, child)) { List cases = new LinkedList(); // default statement can be grouped with previous case defaultStatement = caseStatements(child, cases); list.addAll(cases); } else { defaultStatement = statement(child.getNextSibling()); } } if (node != null) { unknownAST(node); } SwitchStatement switchStatement = new SwitchStatement(expression, list, defaultStatement); configureAST(switchStatement, switchNode); return switchStatement; }
@SuppressWarnings("unchecked") @Override public void visitSwitch(SwitchStatement stat) { stat.getExpression().visit(this); replaceAll(stat.getCaseStatements()); stat.setDefaultStatement(replace(stat.getDefaultStatement())); }
public void writeSwitch(SwitchStatement statement) { controller.getAcg().onLineNumber(statement, "visitSwitch"); writeStatementLabel(statement); statement.getExpression().visit(controller.getAcg()); // switch does not have a continue label. use its parent's for continue Label breakLabel = controller.getCompileStack().pushSwitch(); final int switchVariableIndex = controller.getCompileStack().defineTemporaryVariable("switch", true); List caseStatements = statement.getCaseStatements(); int caseCount = caseStatements.size(); Label[] labels = new Label[caseCount + 1]; for (int i = 0; i < caseCount; i++) { labels[i] = new Label(); } int i = 0; for (Iterator iter = caseStatements.iterator(); iter.hasNext(); i++) { CaseStatement caseStatement = (CaseStatement) iter.next(); writeCaseStatement(caseStatement, switchVariableIndex, labels[i], labels[i + 1]); } statement.getDefaultStatement().visit(controller.getAcg()); controller.getMethodVisitor().visitLabel(breakLabel); controller.getCompileStack().removeVar(switchVariableIndex); controller.getCompileStack().pop(); }
for (CaseStatement caseStatement : swi.getCaseStatements()) { caseStatement.setCode(adjustSwitchCaseCode(caseStatement.getCode(), scope, false)); swi.setDefaultStatement(adjustSwitchCaseCode(swi.getDefaultStatement(), scope, true)); return swi;
protected Statement switchStatement(AST switchNode) { AST node = switchNode.getFirstChild(); Expression expression = expression(node); Statement defaultStatement = EmptyStatement.INSTANCE; List list = new ArrayList(); for (node = node.getNextSibling(); isType(CASE_GROUP, node); node = node.getNextSibling()) { AST child = node.getFirstChild(); if (isType(LITERAL_case, child)) { List cases = new LinkedList(); // default statement can be grouped with previous case defaultStatement = caseStatements(child, cases); list.addAll(cases); } else { defaultStatement = statement(child.getNextSibling()); } } if (node != null) { unknownAST(node); } SwitchStatement switchStatement = new SwitchStatement(expression, list, defaultStatement); configureAST(switchStatement, switchNode); return switchStatement; }
public void visitSwitch(SwitchStatement statement) { Expression exp = statement.getExpression(); statement.setExpression(transform(exp)); for (CaseStatement caseStatement : statement.getCaseStatements()) { caseStatement.visit(this); } statement.getDefaultStatement().visit(this); }
@Override public void visitSwitch(SwitchStatement statement) { children.add(statement.getExpression()); List list = statement.getCaseStatements(); for (Iterator iter = list.iterator(); iter.hasNext(); ) { CaseStatement caseStatement = (CaseStatement) iter.next(); children.add(caseStatement); } children.add(statement.getDefaultStatement()); }
protected Statement switchStatement(AST switchNode) { AST node = switchNode.getFirstChild(); Expression expression = expression(node); Statement defaultStatement = EmptyStatement.INSTANCE; List list = new ArrayList(); for (node = node.getNextSibling(); isType(CASE_GROUP, node); node = node.getNextSibling()) { AST child = node.getFirstChild(); if (isType(LITERAL_case, child)) { List cases = new LinkedList(); // default statement can be grouped with previous case defaultStatement = caseStatements(child, cases); list.addAll(cases); } else { defaultStatement = statement(child.getNextSibling()); } } if (node != null) { unknownAST(node); } SwitchStatement switchStatement = new SwitchStatement(expression, list, defaultStatement); configureAST(switchStatement, switchNode); return switchStatement; }
@Override @SuppressWarnings("unchecked") public void visitSwitch(SwitchStatement stat) { stat.setExpression(replaceExpr(stat.getExpression())); replaceAll(stat.getCaseStatements()); stat.setDefaultStatement(replace(stat.getDefaultStatement())); }
public void visitSwitch(SwitchStatement statement) { statement.getExpression().visit(this); List list = statement.getCaseStatements(); for (Iterator iter = list.iterator(); iter.hasNext(); ) { CaseStatement caseStatement = (CaseStatement) iter.next(); caseStatement.visit(this); } statement.getDefaultStatement().visit(this); }
unknownAST(node); SwitchStatement switchStatement = new SwitchStatement(expression, list, defaultStatement); configureAST(switchStatement, switchNode); return switchStatement;
@SuppressWarnings("unchecked") @Override public void visitSwitch(SwitchStatement stat) { stat.getExpression().visit(this); replaceAll(stat.getCaseStatements()); stat.setDefaultStatement(replace(stat.getDefaultStatement())); }