@Override public Void visitAssignmentExpression(final AssignmentExpression node, final Void data) { parenthesizeIfRequired(node.getLeft(), ASSIGNMENT + 1); if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getRight(), RELATIONAL_AND_TYPE_TESTING + 1); } else { parenthesizeIfRequired(node.getRight(), ASSIGNMENT); } return super.visitAssignmentExpression(node, data); } }
@Override public Void visitAssignmentExpression(final AssignmentExpression node, final Void data) { parenthesizeIfRequired(node.getLeft(), ASSIGNMENT + 1); if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getRight(), RELATIONAL_AND_TYPE_TESTING + 1); } else { parenthesizeIfRequired(node.getRight(), ASSIGNMENT); } return super.visitAssignmentExpression(node, data); } }
@Override public Void visitAssignmentExpression(final AssignmentExpression node, final Void data) { parenthesizeIfRequired(node.getLeft(), ASSIGNMENT + 1); if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getRight(), RELATIONAL_AND_TYPE_TESTING + 1); } else { parenthesizeIfRequired(node.getRight(), ASSIGNMENT); } return super.visitAssignmentExpression(node, data); } }
@Override public Void visitInstanceOfExpression(final InstanceOfExpression node, final Void data) { if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getExpression(), PRIMARY); } else { parenthesizeIfRequired(node.getExpression(), RELATIONAL_AND_TYPE_TESTING); } return super.visitInstanceOfExpression(node, data); }
@Override public Void visitInstanceOfExpression(final InstanceOfExpression node, final Void data) { if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getExpression(), PRIMARY); } else { parenthesizeIfRequired(node.getExpression(), RELATIONAL_AND_TYPE_TESTING); } return super.visitInstanceOfExpression(node, data); }
@Override public Void visitInstanceOfExpression(final InstanceOfExpression node, final Void data) { if (_insertParenthesesForReadability) { parenthesizeIfRequired(node.getExpression(), PRIMARY); } else { parenthesizeIfRequired(node.getExpression(), RELATIONAL_AND_TYPE_TESTING); } return super.visitInstanceOfExpression(node, data); }
@Override public Void visitMemberReferenceExpression(final MemberReferenceExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitMemberReferenceExpression(node, data); }
@Override public Void visitMemberReferenceExpression(final MemberReferenceExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitMemberReferenceExpression(node, data); }
@Override public Void visitInvocationExpression(final InvocationExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitInvocationExpression(node, data); }
@Override public Void visitInvocationExpression(final InvocationExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitInvocationExpression(node, data); }
@Override public Void visitMemberReferenceExpression(final MemberReferenceExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitMemberReferenceExpression(node, data); }
@Override public Void visitInvocationExpression(final InvocationExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); return super.visitInvocationExpression(node, data); }
@Override public Void visitBinaryOperatorExpression(final BinaryOperatorExpression node, final Void data) { final int precedence = getPrecedence(node); if (_insertParenthesesForReadability && precedence < EQUALITY) { if (getBinaryOperatorType(node.getLeft()) == node.getOperator()) { parenthesizeIfRequired(node.getLeft(), precedence); } else { parenthesizeIfRequired(node.getLeft(), EQUALITY); } parenthesizeIfRequired(node.getRight(), EQUALITY); } else { parenthesizeIfRequired(node.getLeft(), precedence); parenthesizeIfRequired(node.getRight(), precedence + 1); } return super.visitBinaryOperatorExpression(node, data); }
@Override public Void visitBinaryOperatorExpression(final BinaryOperatorExpression node, final Void data) { final int precedence = getPrecedence(node); if (_insertParenthesesForReadability && precedence < EQUALITY) { if (getBinaryOperatorType(node.getLeft()) == node.getOperator()) { parenthesizeIfRequired(node.getLeft(), precedence); } else { parenthesizeIfRequired(node.getLeft(), EQUALITY); } parenthesizeIfRequired(node.getRight(), EQUALITY); } else { parenthesizeIfRequired(node.getLeft(), precedence); parenthesizeIfRequired(node.getRight(), precedence + 1); } return super.visitBinaryOperatorExpression(node, data); }
@Override public Void visitUnaryOperatorExpression(final UnaryOperatorExpression node, final Void data) { final Expression child = node.getExpression(); parenthesizeIfRequired(child, getPrecedence(node)); if (_insertParenthesesForReadability && child instanceof UnaryOperatorExpression) { parenthesize(child); } return super.visitUnaryOperatorExpression(node, data); }
@Override public Void visitUnaryOperatorExpression(final UnaryOperatorExpression node, final Void data) { final Expression child = node.getExpression(); parenthesizeIfRequired(child, getPrecedence(node)); if (_insertParenthesesForReadability && child instanceof UnaryOperatorExpression) { parenthesize(child); } return super.visitUnaryOperatorExpression(node, data); }
@Override public Void visitUnaryOperatorExpression(final UnaryOperatorExpression node, final Void data) { final Expression child = node.getExpression(); parenthesizeIfRequired(child, getPrecedence(node)); if (_insertParenthesesForReadability && child instanceof UnaryOperatorExpression) { parenthesize(child); } return super.visitUnaryOperatorExpression(node, data); }
@Override public Void visitIndexerExpression(final IndexerExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); if (node.getTarget() instanceof ArrayCreationExpression) { final ArrayCreationExpression arrayCreation = (ArrayCreationExpression) node.getTarget(); if (_insertParenthesesForReadability || arrayCreation.getInitializer().isNull()) { // require parentheses for "(new int[1])[0]" parenthesize(arrayCreation); } } return super.visitIndexerExpression(node, data); }
@Override public Void visitIndexerExpression(final IndexerExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); if (node.getTarget() instanceof ArrayCreationExpression) { final ArrayCreationExpression arrayCreation = (ArrayCreationExpression) node.getTarget(); if (_insertParenthesesForReadability || arrayCreation.getInitializer().isNull()) { // require parentheses for "(new int[1])[0]" parenthesize(arrayCreation); } } return super.visitIndexerExpression(node, data); }
@Override public Void visitIndexerExpression(final IndexerExpression node, final Void data) { parenthesizeIfRequired(node.getTarget(), PRIMARY); if (node.getTarget() instanceof ArrayCreationExpression) { final ArrayCreationExpression arrayCreation = (ArrayCreationExpression) node.getTarget(); if (_insertParenthesesForReadability || arrayCreation.getInitializer().isNull()) { // require parentheses for "(new int[1])[0]" parenthesize(arrayCreation); } } return super.visitIndexerExpression(node, data); }