Class InsertParenthesesVisitor
java.lang.Object
com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor<Void,Void>
com.strobel.decompiler.languages.java.ast.InsertParenthesesVisitor
- All Implemented Interfaces:
IAstVisitor<Void,Void>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final intprivate static final int -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static booleanprivate static BinaryOperatorTypefinal booleanprivate static intprivate static voidparenthesize(Expression expression) private static voidparenthesizeIfRequired(Expression expression, int minimumPrecedence) final voidsetInsertParenthesesForReadability(boolean insertParenthesesForReadability) visitAssignmentExpression(AssignmentExpression node, Void data) visitCastExpression(CastExpression node, Void data) visitConditionalExpression(ConditionalExpression node, Void data) visitIndexerExpression(IndexerExpression node, Void data) visitInstanceOfExpression(InstanceOfExpression node, Void data) visitInvocationExpression(InvocationExpression node, Void data) visitUnaryOperatorExpression(UnaryOperatorExpression node, Void data) Methods inherited from class DepthFirstAstVisitor
shouldContinue, visitAnnotation, visitAnonymousObjectCreationExpression, visitArrayCreationExpression, visitArrayInitializerExpression, visitArraySpecifier, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitBytecodeConstant, visitCaseLabel, visitCatchClause, visitChildren, visitClassOfExpression, visitComment, visitCompilationUnit, visitComposedType, visitConstructorDeclaration, visitContinueStatement, visitDoWhileStatement, visitEmptyStatement, visitEnumValueDeclaration, visitExpressionStatement, visitFieldDeclaration, visitForEachStatement, visitForStatement, visitGotoStatement, visitIdentifier, visitIdentifierExpression, visitIfElseStatement, visitImportDeclaration, visitInitializerBlock, visitInlinedBytecode, visitIntersectionType, visitJavaTokenNode, visitLabeledStatement, visitLabelStatement, visitLambdaExpression, visitLocalTypeDeclarationStatement, visitMethodDeclaration, visitMethodGroupExpression, visitModuleDeclaration, visitNewLine, visitNullReferenceExpression, visitObjectCreationExpression, visitPackageDeclaration, visitParameterDeclaration, visitParenthesizedExpression, visitPatternPlaceholder, visitPrimitiveExpression, visitReturnStatement, visitSimpleType, visitSuperReferenceExpression, visitSwitchExpression, visitSwitchExpressionArm, visitSwitchSection, visitSwitchStatement, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTryCatchStatement, visitTypeDeclaration, visitTypeParameterDeclaration, visitTypeReference, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWhileStatement, visitWildcardType
-
Field Details
-
PRIMARY
private static final int PRIMARY- See Also:
-
CAST
private static final int CAST- See Also:
-
UNARY
private static final int UNARY- See Also:
-
MULTIPLICATIVE
private static final int MULTIPLICATIVE- See Also:
-
ADDITIVE
private static final int ADDITIVE- See Also:
-
SHIFT
private static final int SHIFT- See Also:
-
RELATIONAL_AND_TYPE_TESTING
private static final int RELATIONAL_AND_TYPE_TESTING- See Also:
-
EQUALITY
private static final int EQUALITY- See Also:
-
BITWISE_AND
private static final int BITWISE_AND- See Also:
-
EXCLUSIVE_OR
private static final int EXCLUSIVE_OR- See Also:
-
BITWISE_OR
private static final int BITWISE_OR- See Also:
-
LOGICAL_AND
private static final int LOGICAL_AND- See Also:
-
LOGICAL_OR
private static final int LOGICAL_OR- See Also:
-
CONDITIONAL
private static final int CONDITIONAL- See Also:
-
ASSIGNMENT
private static final int ASSIGNMENT- See Also:
-
PARENTHESIZE_FUNCTION
-
_insertParenthesesForReadability
private boolean _insertParenthesesForReadability
-
-
Constructor Details
-
InsertParenthesesVisitor
public InsertParenthesesVisitor()
-
-
Method Details
-
getInsertParenthesesForReadability
public final boolean getInsertParenthesesForReadability() -
setInsertParenthesesForReadability
public final void setInsertParenthesesForReadability(boolean insertParenthesesForReadability) -
getPrecedence
-
getBinaryOperatorType
-
parenthesizeIfRequired
-
parenthesize
-
canTypeBeMisinterpretedAsExpression
-
visitMemberReferenceExpression
- Specified by:
visitMemberReferenceExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitMemberReferenceExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitInvocationExpression
- Specified by:
visitInvocationExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitInvocationExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitIndexerExpression
- Specified by:
visitIndexerExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitIndexerExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitUnaryOperatorExpression
- Specified by:
visitUnaryOperatorExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitUnaryOperatorExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitCastExpression
- Specified by:
visitCastExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitCastExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitBinaryOperatorExpression
- Specified by:
visitBinaryOperatorExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitBinaryOperatorExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitInstanceOfExpression
- Specified by:
visitInstanceOfExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitInstanceOfExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitConditionalExpression
- Specified by:
visitConditionalExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitConditionalExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitAssignmentExpression
- Specified by:
visitAssignmentExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitAssignmentExpressionin classDepthFirstAstVisitor<Void,Void>
-