Class IntroducePatternMatchingTransform
- 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.IntroducePatternMatchingTransform
-
- All Implemented Interfaces:
IAstVisitor<java.lang.Void,java.lang.Void>
,IAstTransform
public class IntroducePatternMatchingTransform extends ContextTrackingVisitor<java.lang.Void>
-
-
Field Summary
Fields Modifier and Type Field Description private IfElseStatement
simplePattern
-
Fields inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
context
-
-
Constructor Summary
Constructors Constructor Description IntroducePatternMatchingTransform(DecompilerContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
run(AstNode compilationUnit)
private boolean
trySimplePatternMatch(IfElseStatement node)
java.lang.Void
visitIfElseStatement(IfElseStatement node, java.lang.Void data)
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
inConstructor, inMethod, inStaticInitializer, makeType, makeType, resolver, 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, 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, visitSwitchStatement, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTryCatchStatement, visitTypeParameterDeclaration, visitTypeReference, visitUnaryOperatorExpression, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWhileStatement, visitWildcardType
-
-
-
-
Field Detail
-
simplePattern
private final IfElseStatement simplePattern
-
-
Constructor Detail
-
IntroducePatternMatchingTransform
public IntroducePatternMatchingTransform(DecompilerContext context)
-
-
Method Detail
-
run
public void run(AstNode compilationUnit)
- Specified by:
run
in interfaceIAstTransform
- Overrides:
run
in classContextTrackingVisitor<java.lang.Void>
-
visitIfElseStatement
public java.lang.Void visitIfElseStatement(IfElseStatement node, java.lang.Void data)
- Specified by:
visitIfElseStatement
in interfaceIAstVisitor<java.lang.Void,java.lang.Void>
- Overrides:
visitIfElseStatement
in classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
trySimplePatternMatch
private boolean trySimplePatternMatch(IfElseStatement node)
-
-