Class StringSwitchRewriterTransform
- java.lang.Object
-
- com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor<java.lang.Void,TResult>
-
- com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor<java.lang.Void>
-
- com.strobel.decompiler.languages.java.ast.transforms.StringSwitchRewriterTransform
-
- All Implemented Interfaces:
IAstVisitor<java.lang.Void,java.lang.Void>,IAstTransform
public class StringSwitchRewriterTransform extends ContextTrackingVisitor<java.lang.Void>
-
-
Field Summary
Fields Modifier and Type Field Description private static BlockStatementCASE_BODY_PATTERNprivate static PatternHASH_CODE_PATTERNprivate static VariableDeclarationStatementTABLE_SWITCH_INPUT-
Fields inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
context
-
-
Constructor Summary
Constructors Constructor Description StringSwitchRewriterTransform(DecompilerContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.VoidvisitSwitchStatement(SwitchStatement node, java.lang.Void data)-
Methods inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
inConstructor, inMethod, inStaticInitializer, makeType, makeType, resolver, run, visitConstructorDeclaration, visitMethodDeclaration, visitMethodDeclarationOverride, visitTypeDeclaration, visitTypeDeclarationOverride
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.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, visitFieldDeclaration, 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 Detail
-
TABLE_SWITCH_INPUT
private static final VariableDeclarationStatement TABLE_SWITCH_INPUT
-
HASH_CODE_PATTERN
private static final Pattern HASH_CODE_PATTERN
-
CASE_BODY_PATTERN
private static final BlockStatement CASE_BODY_PATTERN
-
-
Constructor Detail
-
StringSwitchRewriterTransform
public StringSwitchRewriterTransform(DecompilerContext context)
-
-
Method Detail
-
visitSwitchStatement
public java.lang.Void visitSwitchStatement(SwitchStatement node, java.lang.Void data)
- Specified by:
visitSwitchStatementin interfaceIAstVisitor<java.lang.Void,java.lang.Void>- Overrides:
visitSwitchStatementin classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
-