private void handleBranch(CFG.Block programPosition, Tree condition) { handleBranch(programPosition, condition, true); }
private void handleBranch(CFG.Block programPosition, Tree condition) { handleBranch(programPosition, condition, true); }
private void handleBranch(CFG.Block programPosition, Tree condition) { handleBranch(programPosition, condition, true); }
switch (terminator.kind()) { case IF_STATEMENT: handleBranch(block, cleanupCondition(((IfStatementTree) terminator).condition())); return; case CONDITIONAL_OR: case CONDITIONAL_AND: handleBranch(block, ((BinaryExpressionTree) terminator).leftOperand()); return; case CONDITIONAL_EXPRESSION: handleBranch(block, ((ConditionalExpressionTree) terminator).condition()); return; case FOR_STATEMENT: ExpressionTree condition = ((ForStatementTree) terminator).condition(); if (condition != null) { handleBranch(block, condition, false); return; case WHILE_STATEMENT: ExpressionTree whileCondition = ((WhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(whileCondition), !whileCondition.is(Tree.Kind.BOOLEAN_LITERAL)); return; case DO_STATEMENT: ExpressionTree doCondition = ((DoWhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(doCondition), !doCondition.is(Tree.Kind.BOOLEAN_LITERAL)); return; case SYNCHRONIZED_STATEMENT:
case IF_STATEMENT: ExpressionTree ifCondition = ((IfStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(ifCondition), verifyCondition(ifCondition)); return; case CONDITIONAL_OR: case CONDITIONAL_AND: handleBranch(block, ((BinaryExpressionTree) terminator).leftOperand()); return; case CONDITIONAL_EXPRESSION: handleBranch(block, ((ConditionalExpressionTree) terminator).condition()); return; case FOR_STATEMENT: ExpressionTree condition = ((ForStatementTree) terminator).condition(); if (condition != null) { handleBranch(block, condition, false); return; case WHILE_STATEMENT: ExpressionTree whileCondition = ((WhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(whileCondition), verifyCondition(whileCondition)); return; case DO_STATEMENT: ExpressionTree doCondition = ((DoWhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(doCondition), verifyCondition(doCondition)); return; case SYNCHRONIZED_STATEMENT:
case IF_STATEMENT: ExpressionTree ifCondition = ((IfStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(ifCondition), verifyCondition(ifCondition)); return; case CONDITIONAL_OR: case CONDITIONAL_AND: handleBranch(block, ((BinaryExpressionTree) terminator).leftOperand()); return; case CONDITIONAL_EXPRESSION: handleBranch(block, ((ConditionalExpressionTree) terminator).condition()); return; case FOR_STATEMENT: ExpressionTree condition = ((ForStatementTree) terminator).condition(); if (condition != null) { handleBranch(block, condition, false); return; case WHILE_STATEMENT: ExpressionTree whileCondition = ((WhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(whileCondition), verifyCondition(whileCondition)); return; case DO_STATEMENT: ExpressionTree doCondition = ((DoWhileStatementTree) terminator).condition(); handleBranch(block, cleanupCondition(doCondition), verifyCondition(doCondition)); return; case SYNCHRONIZED_STATEMENT: