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 booleanprivate intprivate intprivate final AssignmentExpressionprivate final String -
Constructor Summary
ConstructorsConstructorDescriptionIsSingleAssignmentVisitor(String variableName, AssignmentExpression replacedAssignment) -
Method Summary
Modifier and TypeMethodDescription(package private) final boolean(package private) final booleanprotected BooleanvisitChildren(AstNode node, Void data) private BooleanvisitCondition(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 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:
visitChildrenin classDepthFirstAstVisitor<Void,Boolean>
-
visitForStatement
- Specified by:
visitForStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitForStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitIfElseStatement
- Specified by:
visitIfElseStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitIfElseStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitConditionalExpression
- Specified by:
visitConditionalExpressionin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitConditionalExpressionin classDepthFirstAstVisitor<Void,Boolean>
-
visitCondition
-
visitForEachStatement
- Specified by:
visitForEachStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitForEachStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitDoWhileStatement
- Specified by:
visitDoWhileStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitDoWhileStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitWhileStatement
- Specified by:
visitWhileStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitWhileStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitTryCatchStatement
- Specified by:
visitTryCatchStatementin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitTryCatchStatementin classDepthFirstAstVisitor<Void,Boolean>
-
visitAssignmentExpression
- Specified by:
visitAssignmentExpressionin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitAssignmentExpressionin classDepthFirstAstVisitor<Void,Boolean>
-
visitTypeDeclaration
- Specified by:
visitTypeDeclarationin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitTypeDeclarationin classDepthFirstAstVisitor<Void,Boolean>
-
visitUnaryOperatorExpression
- Specified by:
visitUnaryOperatorExpressionin interfaceIAstVisitor<Void,Boolean> - Overrides:
visitUnaryOperatorExpressionin classDepthFirstAstVisitor<Void,Boolean>
-