Class DepthFirstAstVisitor<T,S>
- java.lang.Object
-
- com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor<T,S>
-
- All Implemented Interfaces:
IAstVisitor<T,S>
- Direct Known Subclasses:
ContextTrackingVisitor
,ControlFlowGraphBuilder.NodeCreationVisitor
,DeclareVariablesTransform.IsSingleAssignmentVisitor
,DeclareVariablesTransform.ParameterAssignmentVisitor
,DefiniteAssignmentAnalysis.DefiniteAssignmentVisitor
,InsertParenthesesVisitor
,RedundantCastUtility.IsRedundantVisitor
public abstract class DepthFirstAstVisitor<T,S> extends java.lang.Object implements IAstVisitor<T,S>
-
-
Constructor Summary
Constructors Constructor Description DepthFirstAstVisitor()
-
Method Summary
-
-
-
Method Detail
-
shouldContinue
protected boolean shouldContinue()
-
visitComment
public S visitComment(Comment node, T data)
- Specified by:
visitComment
in interfaceIAstVisitor<T,S>
-
visitPatternPlaceholder
public S visitPatternPlaceholder(AstNode node, Pattern pattern, T data)
- Specified by:
visitPatternPlaceholder
in interfaceIAstVisitor<T,S>
-
visitInvocationExpression
public S visitInvocationExpression(InvocationExpression node, T data)
- Specified by:
visitInvocationExpression
in interfaceIAstVisitor<T,S>
-
visitTypeReference
public S visitTypeReference(TypeReferenceExpression node, T data)
- Specified by:
visitTypeReference
in interfaceIAstVisitor<T,S>
-
visitJavaTokenNode
public S visitJavaTokenNode(JavaTokenNode node, T data)
- Specified by:
visitJavaTokenNode
in interfaceIAstVisitor<T,S>
-
visitMemberReferenceExpression
public S visitMemberReferenceExpression(MemberReferenceExpression node, T data)
- Specified by:
visitMemberReferenceExpression
in interfaceIAstVisitor<T,S>
-
visitIdentifier
public S visitIdentifier(Identifier node, T data)
- Specified by:
visitIdentifier
in interfaceIAstVisitor<T,S>
-
visitNullReferenceExpression
public S visitNullReferenceExpression(NullReferenceExpression node, T data)
- Specified by:
visitNullReferenceExpression
in interfaceIAstVisitor<T,S>
-
visitThisReferenceExpression
public S visitThisReferenceExpression(ThisReferenceExpression node, T data)
- Specified by:
visitThisReferenceExpression
in interfaceIAstVisitor<T,S>
-
visitSuperReferenceExpression
public S visitSuperReferenceExpression(SuperReferenceExpression node, T data)
- Specified by:
visitSuperReferenceExpression
in interfaceIAstVisitor<T,S>
-
visitClassOfExpression
public S visitClassOfExpression(ClassOfExpression node, T data)
- Specified by:
visitClassOfExpression
in interfaceIAstVisitor<T,S>
-
visitBlockStatement
public S visitBlockStatement(BlockStatement node, T data)
- Specified by:
visitBlockStatement
in interfaceIAstVisitor<T,S>
-
visitExpressionStatement
public S visitExpressionStatement(ExpressionStatement node, T data)
- Specified by:
visitExpressionStatement
in interfaceIAstVisitor<T,S>
-
visitBreakStatement
public S visitBreakStatement(BreakStatement node, T data)
- Specified by:
visitBreakStatement
in interfaceIAstVisitor<T,S>
-
visitContinueStatement
public S visitContinueStatement(ContinueStatement node, T data)
- Specified by:
visitContinueStatement
in interfaceIAstVisitor<T,S>
-
visitDoWhileStatement
public S visitDoWhileStatement(DoWhileStatement node, T data)
- Specified by:
visitDoWhileStatement
in interfaceIAstVisitor<T,S>
-
visitEmptyStatement
public S visitEmptyStatement(EmptyStatement node, T data)
- Specified by:
visitEmptyStatement
in interfaceIAstVisitor<T,S>
-
visitIfElseStatement
public S visitIfElseStatement(IfElseStatement node, T data)
- Specified by:
visitIfElseStatement
in interfaceIAstVisitor<T,S>
-
visitLabelStatement
public S visitLabelStatement(LabelStatement node, T data)
- Specified by:
visitLabelStatement
in interfaceIAstVisitor<T,S>
-
visitLabeledStatement
public S visitLabeledStatement(LabeledStatement node, T data)
- Specified by:
visitLabeledStatement
in interfaceIAstVisitor<T,S>
-
visitReturnStatement
public S visitReturnStatement(ReturnStatement node, T data)
- Specified by:
visitReturnStatement
in interfaceIAstVisitor<T,S>
-
visitSwitchStatement
public S visitSwitchStatement(SwitchStatement node, T data)
- Specified by:
visitSwitchStatement
in interfaceIAstVisitor<T,S>
-
visitSwitchSection
public S visitSwitchSection(SwitchSection node, T data)
- Specified by:
visitSwitchSection
in interfaceIAstVisitor<T,S>
-
visitSwitchExpression
public S visitSwitchExpression(SwitchExpression node, T data)
- Specified by:
visitSwitchExpression
in interfaceIAstVisitor<T,S>
-
visitSwitchExpressionArm
public S visitSwitchExpressionArm(SwitchExpressionArm node, T data)
- Specified by:
visitSwitchExpressionArm
in interfaceIAstVisitor<T,S>
-
visitCaseLabel
public S visitCaseLabel(CaseLabel node, T data)
- Specified by:
visitCaseLabel
in interfaceIAstVisitor<T,S>
-
visitThrowStatement
public S visitThrowStatement(ThrowStatement node, T data)
- Specified by:
visitThrowStatement
in interfaceIAstVisitor<T,S>
-
visitCatchClause
public S visitCatchClause(CatchClause node, T data)
- Specified by:
visitCatchClause
in interfaceIAstVisitor<T,S>
-
visitAnnotation
public S visitAnnotation(Annotation node, T data)
- Specified by:
visitAnnotation
in interfaceIAstVisitor<T,S>
-
visitNewLine
public S visitNewLine(NewLineNode node, T data)
- Specified by:
visitNewLine
in interfaceIAstVisitor<T,S>
-
visitVariableDeclaration
public S visitVariableDeclaration(VariableDeclarationStatement node, T data)
- Specified by:
visitVariableDeclaration
in interfaceIAstVisitor<T,S>
-
visitVariableInitializer
public S visitVariableInitializer(VariableInitializer node, T data)
- Specified by:
visitVariableInitializer
in interfaceIAstVisitor<T,S>
-
visitText
public S visitText(TextNode node, T data)
- Specified by:
visitText
in interfaceIAstVisitor<T,S>
-
visitImportDeclaration
public S visitImportDeclaration(ImportDeclaration node, T data)
- Specified by:
visitImportDeclaration
in interfaceIAstVisitor<T,S>
-
visitSimpleType
public S visitSimpleType(SimpleType node, T data)
- Specified by:
visitSimpleType
in interfaceIAstVisitor<T,S>
-
visitIntersectionType
public S visitIntersectionType(IntersectionType node, T data)
- Specified by:
visitIntersectionType
in interfaceIAstVisitor<T,S>
-
visitUnionType
public S visitUnionType(UnionType node, T data)
- Specified by:
visitUnionType
in interfaceIAstVisitor<T,S>
-
visitMethodDeclaration
public S visitMethodDeclaration(MethodDeclaration node, T data)
- Specified by:
visitMethodDeclaration
in interfaceIAstVisitor<T,S>
-
visitInitializerBlock
public S visitInitializerBlock(InstanceInitializer node, T data)
- Specified by:
visitInitializerBlock
in interfaceIAstVisitor<T,S>
-
visitConstructorDeclaration
public S visitConstructorDeclaration(ConstructorDeclaration node, T data)
- Specified by:
visitConstructorDeclaration
in interfaceIAstVisitor<T,S>
-
visitTypeParameterDeclaration
public S visitTypeParameterDeclaration(TypeParameterDeclaration node, T data)
- Specified by:
visitTypeParameterDeclaration
in interfaceIAstVisitor<T,S>
-
visitParameterDeclaration
public S visitParameterDeclaration(ParameterDeclaration node, T data)
- Specified by:
visitParameterDeclaration
in interfaceIAstVisitor<T,S>
-
visitFieldDeclaration
public S visitFieldDeclaration(FieldDeclaration node, T data)
- Specified by:
visitFieldDeclaration
in interfaceIAstVisitor<T,S>
-
visitTypeDeclaration
public S visitTypeDeclaration(TypeDeclaration node, T data)
- Specified by:
visitTypeDeclaration
in interfaceIAstVisitor<T,S>
-
visitModuleDeclaration
public S visitModuleDeclaration(ModuleDeclaration node, T data)
- Specified by:
visitModuleDeclaration
in interfaceIAstVisitor<T,S>
-
visitCompilationUnit
public S visitCompilationUnit(CompilationUnit node, T data)
- Specified by:
visitCompilationUnit
in interfaceIAstVisitor<T,S>
-
visitPackageDeclaration
public S visitPackageDeclaration(PackageDeclaration node, T data)
- Specified by:
visitPackageDeclaration
in interfaceIAstVisitor<T,S>
-
visitArraySpecifier
public S visitArraySpecifier(ArraySpecifier node, T data)
- Specified by:
visitArraySpecifier
in interfaceIAstVisitor<T,S>
-
visitComposedType
public S visitComposedType(ComposedType node, T data)
- Specified by:
visitComposedType
in interfaceIAstVisitor<T,S>
-
visitWhileStatement
public S visitWhileStatement(WhileStatement node, T data)
- Specified by:
visitWhileStatement
in interfaceIAstVisitor<T,S>
-
visitPrimitiveExpression
public S visitPrimitiveExpression(PrimitiveExpression node, T data)
- Specified by:
visitPrimitiveExpression
in interfaceIAstVisitor<T,S>
-
visitCastExpression
public S visitCastExpression(CastExpression node, T data)
- Specified by:
visitCastExpression
in interfaceIAstVisitor<T,S>
-
visitBinaryOperatorExpression
public S visitBinaryOperatorExpression(BinaryOperatorExpression node, T data)
- Specified by:
visitBinaryOperatorExpression
in interfaceIAstVisitor<T,S>
-
visitInstanceOfExpression
public S visitInstanceOfExpression(InstanceOfExpression node, T data)
- Specified by:
visitInstanceOfExpression
in interfaceIAstVisitor<T,S>
-
visitIndexerExpression
public S visitIndexerExpression(IndexerExpression node, T data)
- Specified by:
visitIndexerExpression
in interfaceIAstVisitor<T,S>
-
visitIdentifierExpression
public S visitIdentifierExpression(IdentifierExpression node, T data)
- Specified by:
visitIdentifierExpression
in interfaceIAstVisitor<T,S>
-
visitUnaryOperatorExpression
public S visitUnaryOperatorExpression(UnaryOperatorExpression node, T data)
- Specified by:
visitUnaryOperatorExpression
in interfaceIAstVisitor<T,S>
-
visitConditionalExpression
public S visitConditionalExpression(ConditionalExpression node, T data)
- Specified by:
visitConditionalExpression
in interfaceIAstVisitor<T,S>
-
visitArrayInitializerExpression
public S visitArrayInitializerExpression(ArrayInitializerExpression node, T data)
- Specified by:
visitArrayInitializerExpression
in interfaceIAstVisitor<T,S>
-
visitObjectCreationExpression
public S visitObjectCreationExpression(ObjectCreationExpression node, T data)
- Specified by:
visitObjectCreationExpression
in interfaceIAstVisitor<T,S>
-
visitArrayCreationExpression
public S visitArrayCreationExpression(ArrayCreationExpression node, T data)
- Specified by:
visitArrayCreationExpression
in interfaceIAstVisitor<T,S>
-
visitAssignmentExpression
public S visitAssignmentExpression(AssignmentExpression node, T data)
- Specified by:
visitAssignmentExpression
in interfaceIAstVisitor<T,S>
-
visitForStatement
public S visitForStatement(ForStatement node, T data)
- Specified by:
visitForStatement
in interfaceIAstVisitor<T,S>
-
visitForEachStatement
public S visitForEachStatement(ForEachStatement node, T data)
- Specified by:
visitForEachStatement
in interfaceIAstVisitor<T,S>
-
visitGotoStatement
public S visitGotoStatement(GotoStatement node, T data)
- Specified by:
visitGotoStatement
in interfaceIAstVisitor<T,S>
-
visitParenthesizedExpression
public S visitParenthesizedExpression(ParenthesizedExpression node, T data)
- Specified by:
visitParenthesizedExpression
in interfaceIAstVisitor<T,S>
-
visitSynchronizedStatement
public S visitSynchronizedStatement(SynchronizedStatement node, T data)
- Specified by:
visitSynchronizedStatement
in interfaceIAstVisitor<T,S>
-
visitAnonymousObjectCreationExpression
public S visitAnonymousObjectCreationExpression(AnonymousObjectCreationExpression node, T data)
- Specified by:
visitAnonymousObjectCreationExpression
in interfaceIAstVisitor<T,S>
-
visitWildcardType
public S visitWildcardType(WildcardType node, T data)
- Specified by:
visitWildcardType
in interfaceIAstVisitor<T,S>
-
visitMethodGroupExpression
public S visitMethodGroupExpression(MethodGroupExpression node, T data)
- Specified by:
visitMethodGroupExpression
in interfaceIAstVisitor<T,S>
-
visitEnumValueDeclaration
public S visitEnumValueDeclaration(EnumValueDeclaration node, T data)
- Specified by:
visitEnumValueDeclaration
in interfaceIAstVisitor<T,S>
-
visitAssertStatement
public S visitAssertStatement(AssertStatement node, T data)
- Specified by:
visitAssertStatement
in interfaceIAstVisitor<T,S>
-
visitLambdaExpression
public S visitLambdaExpression(LambdaExpression node, T data)
- Specified by:
visitLambdaExpression
in interfaceIAstVisitor<T,S>
-
visitLocalTypeDeclarationStatement
public S visitLocalTypeDeclarationStatement(LocalTypeDeclarationStatement node, T data)
- Specified by:
visitLocalTypeDeclarationStatement
in interfaceIAstVisitor<T,S>
-
visitTryCatchStatement
public S visitTryCatchStatement(TryCatchStatement node, T data)
- Specified by:
visitTryCatchStatement
in interfaceIAstVisitor<T,S>
-
visitInlinedBytecode
public S visitInlinedBytecode(InlinedBytecodeExpression node, T data)
- Specified by:
visitInlinedBytecode
in interfaceIAstVisitor<T,S>
-
visitBytecodeConstant
public S visitBytecodeConstant(BytecodeConstant node, T data)
- Specified by:
visitBytecodeConstant
in interfaceIAstVisitor<T,S>
-
-