Class EclipseEnumSwitchRewriterTransform.Visitor
java.lang.Object
com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor<Void,Void>
com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor<Void>
com.strobel.decompiler.languages.java.ast.transforms.EclipseEnumSwitchRewriterTransform.Visitor
- All Implemented Interfaces:
IAstVisitor<Void,Void>, IAstTransform
- Enclosing class:
EclipseEnumSwitchRewriterTransform
private static final class EclipseEnumSwitchRewriterTransform.Visitor
extends ContextTrackingVisitor<Void>
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<String, EclipseEnumSwitchRewriterTransform.Visitor.SwitchMapInfo> private static final INodeprivate static final INodeFields inherited from class ContextTrackingVisitor
context -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static booleanisSwitchMapField(FieldReference field) private static booleanisSwitchMapMethod(MethodReference method) private static StringmakeKey(FieldReference field) private voidrewrite()private voidprivate booleanrewriteSwitch(SwitchStatement s, Map<Integer, Expression> mappings) visitFieldDeclaration(FieldDeclaration node, Void data) protected VoidvisitSwitchStatement(SwitchStatement node, Void data) Methods inherited from class ContextTrackingVisitor
inConstructor, inMethod, inStaticInitializer, makeType, makeType, resolver, run, visitConstructorDeclaration, visitMethodDeclaration, visitTypeDeclaration, visitTypeDeclarationOverrideMethods inherited from class DepthFirstAstVisitor
shouldContinue, visitAnnotation, visitAnonymousObjectCreationExpression, visitArrayCreationExpression, visitArrayInitializerExpression, visitArraySpecifier, visitAssertStatement, visitAssignmentExpression, visitBinaryOperatorExpression, visitBlockStatement, visitBreakStatement, visitBytecodeConstant, visitCaseLabel, visitCastExpression, visitCatchClause, visitChildren, visitClassOfExpression, visitComment, visitCompilationUnit, visitComposedType, visitConditionalExpression, visitContinueStatement, visitDoWhileStatement, visitEmptyStatement, visitEnumValueDeclaration, visitExpressionStatement, visitForEachStatement, visitForStatement, visitGotoStatement, visitIdentifier, visitIdentifierExpression, visitIfElseStatement, visitImportDeclaration, visitIndexerExpression, visitInitializerBlock, visitInlinedBytecode, visitInstanceOfExpression, visitIntersectionType, visitInvocationExpression, visitJavaTokenNode, visitLabeledStatement, visitLabelStatement, visitLambdaExpression, visitLocalTypeDeclarationStatement, visitMemberReferenceExpression, visitMethodGroupExpression, visitModuleDeclaration, visitNewLine, visitNullReferenceExpression, visitObjectCreationExpression, visitPackageDeclaration, visitParameterDeclaration, visitParenthesizedExpression, visitPatternPlaceholder, visitPrimitiveExpression, visitReturnStatement, visitSimpleType, visitSuperReferenceExpression, visitSwitchExpression, visitSwitchExpressionArm, visitSwitchSection, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTryCatchStatement, visitTypeParameterDeclaration, visitTypeReference, visitUnaryOperatorExpression, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWhileStatement, visitWildcardType
-
Field Details
-
_switchMaps
-
SWITCH_INPUT
-
SWITCH_TABLE_METHOD_BODY
-
-
Constructor Details
-
Visitor
-
-
Method Details
-
visitSwitchStatement
- Specified by:
visitSwitchStatementin interfaceIAstVisitor<Void,Void> - Overrides:
visitSwitchStatementin classDepthFirstAstVisitor<Void,Void>
-
visitFieldDeclaration
- Specified by:
visitFieldDeclarationin interfaceIAstVisitor<Void,Void> - Overrides:
visitFieldDeclarationin classDepthFirstAstVisitor<Void,Void>
-
visitMethodDeclarationOverride
- Overrides:
visitMethodDeclarationOverridein classContextTrackingVisitor<Void>
-
rewrite
private void rewrite() -
rewrite
-
rewriteSwitch
-
isSwitchMapMethod
-
isSwitchMapField
-
makeKey
-