Class EnumSwitchRewriterTransform.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.EnumSwitchRewriterTransform.Visitor
- All Implemented Interfaces:
IAstVisitor<Void,Void>, IAstTransform
- Enclosing class:
EnumSwitchRewriterTransform
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate final StrongBox<Expression> private final Map<String, EnumSwitchRewriterTransform.Visitor.SwitchMapInfo> Fields inherited from class ContextTrackingVisitor
context -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate booleanisSwitchMapLookup(Expression e, StrongBox<Expression> enumValue) private static booleanprivate voidrewrite()private voidprivate booleanrewriteSwitch(SwitchStatement s, Map<Integer, Expression> mappings) visitAssignmentExpression(AssignmentExpression node, Void data) visitIndexerExpression(IndexerExpression node, Void data) visitSwitchStatement(SwitchStatement node, Void data) protected VoidvisitTypeDeclarationOverride(TypeDeclaration typeDeclaration, Void p) Methods inherited from class ContextTrackingVisitor
inConstructor, inMethod, inStaticInitializer, makeType, makeType, resolver, run, visitConstructorDeclaration, visitMethodDeclaration, visitMethodDeclarationOverride, visitTypeDeclarationMethods inherited from class DepthFirstAstVisitor
shouldContinue, visitAnnotation, visitAnonymousObjectCreationExpression, visitArrayCreationExpression, visitArrayInitializerExpression, visitArraySpecifier, visitAssertStatement, visitBinaryOperatorExpression, visitBlockStatement, visitBreakStatement, visitBytecodeConstant, visitCaseLabel, visitCastExpression, visitCatchClause, visitChildren, visitClassOfExpression, visitComment, visitCompilationUnit, visitComposedType, visitConditionalExpression, visitContinueStatement, visitDoWhileStatement, visitEmptyStatement, visitEnumValueDeclaration, visitExpressionStatement, visitFieldDeclaration, visitForEachStatement, visitForStatement, visitGotoStatement, visitIdentifier, visitIdentifierExpression, visitIfElseStatement, visitImportDeclaration, 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
-
_scratch
-
_switchMaps
-
_isSwitchMapWrapper
private boolean _isSwitchMapWrapper
-
-
Constructor Details
-
Visitor
-
-
Method Details
-
visitTypeDeclarationOverride
- Overrides:
visitTypeDeclarationOverridein classContextTrackingVisitor<Void>
-
visitIndexerExpression
- Specified by:
visitIndexerExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitIndexerExpressionin classDepthFirstAstVisitor<Void,Void>
-
visitSwitchStatement
- Specified by:
visitSwitchStatementin interfaceIAstVisitor<Void,Void> - Overrides:
visitSwitchStatementin classDepthFirstAstVisitor<Void,Void>
-
isSwitchMapLookup
-
visitAssignmentExpression
- Specified by:
visitAssignmentExpressionin interfaceIAstVisitor<Void,Void> - Overrides:
visitAssignmentExpressionin classDepthFirstAstVisitor<Void,Void>
-
rewrite
private void rewrite() -
rewrite
-
rewriteSwitch
-
isSwitchMapWrapper
-