Bug 79507 [quick assist] "Inverse if statement" quick assist doesn't work
"Inverse if statement" quick assist replaces if (args.length > 5) System.out.println("OK"); else if (args.length < 3) System.out.println("KO"); with if (args.length <= 5) if (args.length < 3) System.out.println("KO"); else System.out.println("OK");
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/correction/AdvancedQuickAssistProcessor.java
private static Expression addRightOperandInInfixExpression(Operator operator, AST ast, ASTRewrite rewrite,
			Expression expression, Expression rightOperand) {
		Expression rightPlaceholder = (Expression) rewrite.createCopyTarget(rightOperand);
		if (expression == null) {
			return rightPlaceholder;
		}
		InfixExpression infix = ast.newInfixExpression();
		infix.setOperator(operator);
		infix.setLeftOperand(expression);
		infix.setRightOperand(rightPlaceholder);
		expression = infix;
		return expression;
	}
	private static boolean getCastAndAssignIfStatementProposals(IInvocationContext context, ASTNode node, Collection resultingCollections) {
		if (!(node instanceof InstanceofExpression)) {
			return false;
		}
		InstanceofExpression expression= (InstanceofExpression) node;
		
		while (node.getParent() instanceof Expression) {
			node= node.getParent();
		}
		StructuralPropertyDescriptor locationInParent= node.getLocationInParent();
		Statement body= null;
		if (locationInParent == IfStatement.EXPRESSION_PROPERTY) {
			body= ((IfStatement) node.getParent()).getThenStatement();
		} else if (locationInParent == WhileStatement.EXPRESSION_PROPERTY) {
			body= ((WhileStatement) node.getParent()).getBody();
		}
		if (body == null) {