Class DeclareVariablesTransform.IsSingleAssignmentVisitor
java.lang.Object
com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor<Void,Boolean>
com.strobel.decompiler.languages.java.ast.transforms.DeclareVariablesTransform.IsSingleAssignmentVisitor
- All Implemented Interfaces:
IAstVisitor<Void,
Boolean>
- Enclosing class:
DeclareVariablesTransform
private static final class DeclareVariablesTransform.IsSingleAssignmentVisitor
extends DepthFirstAstVisitor<Void,Boolean>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate boolean
private int
private int
private final AssignmentExpression
private final String
-
Constructor Summary
ConstructorsConstructorDescriptionIsSingleAssignmentVisitor
(String variableName, AssignmentExpression replacedAssignment) -
Method Summary
Modifier and TypeMethodDescription(package private) final boolean
(package private) final boolean
protected Boolean
visitChildren
(AstNode node, Void data) private Boolean
visitCondition
(AstNode condition, AstNode ifTrue, AstNode ifFalse) visitConditionalExpression
(ConditionalExpression node, Void data) visitDoWhileStatement
(DoWhileStatement node, Void p) visitForEachStatement
(ForEachStatement node, Void p) visitForStatement
(ForStatement node, Void p) visitIfElseStatement
(IfElseStatement node, Void data) visitTryCatchStatement
(TryCatchStatement node, Void data) visitTypeDeclaration
(TypeDeclaration node, Void data) visitWhileStatement
(WhileStatement node, Void p) Methods inherited from class com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor
shouldContinue, visitAnnotation, visitAnonymousObjectCreationExpression, visitArrayCreationExpression, visitArrayInitializerExpression, visitArraySpecifier, visitAssertStatement, visitBinaryOperatorExpression, visitBlockStatement, visitBreakStatement, visitBytecodeConstant, visitCaseLabel, visitCastExpression, visitCatchClause, visitClassOfExpression, visitComment, visitCompilationUnit, visitComposedType, visitConstructorDeclaration, visitContinueStatement, visitEmptyStatement, visitEnumValueDeclaration, visitExpressionStatement, visitFieldDeclaration, visitGotoStatement, visitIdentifier, visitIdentifierExpression, visitImportDeclaration, visitIndexerExpression, visitInitializerBlock, visitInlinedBytecode, visitInstanceOfExpression, visitIntersectionType, visitInvocationExpression, visitJavaTokenNode, visitLabeledStatement, visitLabelStatement, visitLambdaExpression, visitLocalTypeDeclarationStatement, visitMemberReferenceExpression, visitMethodDeclaration, visitMethodGroupExpression, visitModuleDeclaration, visitNewLine, visitNullReferenceExpression, visitObjectCreationExpression, visitPackageDeclaration, visitParameterDeclaration, visitParenthesizedExpression, visitPatternPlaceholder, visitPrimitiveExpression, visitReturnStatement, visitSimpleType, visitSuperReferenceExpression, visitSwitchExpression, visitSwitchExpressionArm, visitSwitchSection, visitSwitchStatement, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTypeParameterDeclaration, visitTypeReference, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWildcardType
-
Field Details
-
_variableName
-
_replacedAssignment
-
_abort
private boolean _abort -
_loopOrTryDepth
private int _loopOrTryDepth -
_assignmentCount
private int _assignmentCount
-
-
Constructor Details
-
IsSingleAssignmentVisitor
IsSingleAssignmentVisitor(String variableName, AssignmentExpression replacedAssignment)
-
-
Method Details
-
isAssigned
final boolean isAssigned() -
isSingleAssignment
final boolean isSingleAssignment() -
visitChildren
- Overrides:
visitChildren
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitForStatement
- Specified by:
visitForStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitForStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitIfElseStatement
- Specified by:
visitIfElseStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitIfElseStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitConditionalExpression
- Specified by:
visitConditionalExpression
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitConditionalExpression
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitCondition
-
visitForEachStatement
- Specified by:
visitForEachStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitForEachStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitDoWhileStatement
- Specified by:
visitDoWhileStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitDoWhileStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitWhileStatement
- Specified by:
visitWhileStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitWhileStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitTryCatchStatement
- Specified by:
visitTryCatchStatement
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitTryCatchStatement
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitAssignmentExpression
- Specified by:
visitAssignmentExpression
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitAssignmentExpression
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitTypeDeclaration
- Specified by:
visitTypeDeclaration
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitTypeDeclaration
in classDepthFirstAstVisitor<Void,
Boolean>
-
visitUnaryOperatorExpression
- Specified by:
visitUnaryOperatorExpression
in interfaceIAstVisitor<Void,
Boolean> - Overrides:
visitUnaryOperatorExpression
in classDepthFirstAstVisitor<Void,
Boolean>
-