private static Expression getInversedExpression(ASTRewrite rewrite, Expression expression) { return getInversedExpression(rewrite, expression, null); } private interface SimpleNameRenameProvider {
private static Expression getInversedExpression(ASTRewrite rewrite, Expression expression) { return getInversedExpression(rewrite, expression, null); } private interface SimpleNameRenameProvider {
private static Expression getInversedAndOrExpression(ASTRewrite rewrite, InfixExpression infixExpression, Operator newOperator, SimpleNameRenameProvider provider) { InfixExpression newExpression= rewrite.getAST().newInfixExpression(); newExpression.setOperator(newOperator); int newOperatorPrecedence= OperatorPrecedence.getOperatorPrecedence(newOperator); // Expression leftOperand= getInversedExpression(rewrite, infixExpression.getLeftOperand(), provider); newExpression.setLeftOperand(parenthesizeIfRequired(leftOperand, newOperatorPrecedence)); Expression rightOperand= getInversedExpression(rewrite, infixExpression.getRightOperand(), provider); newExpression.setRightOperand(parenthesizeIfRequired(rightOperand, newOperatorPrecedence)); List<Expression> extraOperands= infixExpression.extendedOperands(); List<Expression> newExtraOperands= newExpression.extendedOperands(); for (int i= 0; i < extraOperands.size(); i++) { Expression extraOperand= getInversedExpression(rewrite, extraOperands.get(i), provider); newExtraOperands.add(parenthesizeIfRequired(extraOperand, newOperatorPrecedence)); } return newExpression; }
private static Expression getInversedAndOrExpression(ASTRewrite rewrite, InfixExpression infixExpression, Operator newOperator, SimpleNameRenameProvider provider) { InfixExpression newExpression= rewrite.getAST().newInfixExpression(); newExpression.setOperator(newOperator); int newOperatorPrecedence= OperatorPrecedence.getOperatorPrecedence(newOperator); // Expression leftOperand= getInversedExpression(rewrite, infixExpression.getLeftOperand(), provider); newExpression.setLeftOperand(parenthesizeIfRequired(leftOperand, newOperatorPrecedence)); Expression rightOperand= getInversedExpression(rewrite, infixExpression.getRightOperand(), provider); newExpression.setRightOperand(parenthesizeIfRequired(rightOperand, newOperatorPrecedence)); List<Expression> extraOperands= infixExpression.extendedOperands(); List<Expression> newExtraOperands= newExpression.extendedOperands(); for (int i= 0; i < extraOperands.size(); i++) { Expression extraOperand= getInversedExpression(rewrite, extraOperands.get(i), provider); newExtraOperands.add(parenthesizeIfRequired(extraOperand, newOperatorPrecedence)); } return newExpression; }
Expression coveredExpression= getBooleanExpression(covered); if (coveredExpression != null) { Expression inversedExpression= getInversedExpression(rewrite, coveredExpression); rewrite.replace(coveredExpression, inversedExpression, null); hasChanges= true;
Expression coveredExpression= getBooleanExpression(covered); if (coveredExpression != null) { Expression inversedExpression= getInversedExpression(rewrite, coveredExpression); rewrite.replace(coveredExpression, inversedExpression, null); hasChanges= true;
final ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, expression);
final ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, expression);
ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression()); IfStatement newIf= ast.newIfStatement(); newIf.setExpression(inversedExpression);
ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression()); IfStatement newIf= ast.newIfStatement(); newIf.setExpression(inversedExpression);
Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression());
Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression());
ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression()); IfStatement newIf= ast.newIfStatement(); newIf.setExpression(inversedExpression);
ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression()); IfStatement newIf= ast.newIfStatement(); newIf.setExpression(inversedExpression);
Expression inversedExpression= getInversedExpression(rewrite, ifStatement.getExpression()); IfStatement newIf= ast.newIfStatement(); newIf.setExpression(inversedExpression);
newExpression.setExpression(getInversedExpression(rewrite, expression.getExpression())); newExpression.setThenExpression((Expression) rewrite.createCopyTarget(expression.getElseExpression())); newExpression.setElseExpression((Expression) rewrite.createCopyTarget(expression.getThenExpression()));
newExpression.setExpression(getInversedExpression(rewrite, expression.getExpression())); newExpression.setThenExpression((Expression) rewrite.createCopyTarget(expression.getElseExpression())); newExpression.setElseExpression((Expression) rewrite.createCopyTarget(expression.getThenExpression()));
return getInversedExpression(rewrite, innerExpression, provider); parenthesizedExpression= getParenthesizedExpression(ast, getInversedExpression(rewrite, innerExpression, provider)); return parenthesizedExpression; ConditionalExpression newExpression= ast.newConditionalExpression(); newExpression.setExpression((Expression)rewrite.createCopyTarget(conditionalExpression.getExpression())); newExpression.setThenExpression(getInversedExpression(rewrite, conditionalExpression.getThenExpression())); newExpression.setElseExpression(getInversedExpression(rewrite, conditionalExpression.getElseExpression())); return newExpression;
final ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, parenthesizedExpression.getExpression());
final ASTRewrite rewrite= ASTRewrite.create(ast); Expression inversedExpression= getInversedExpression(rewrite, parenthesizedExpression.getExpression());