Class LocalClassHelper.ClosureRewriterPhaseOneVisitor
- 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.LocalClassHelper.ClosureRewriterPhaseOneVisitor
-
- All Implemented Interfaces:
IAstVisitor<java.lang.Void,java.lang.Void>
,IAstTransform
- Enclosing class:
- LocalClassHelper
private static final class LocalClassHelper.ClosureRewriterPhaseOneVisitor extends ContextTrackingVisitor<java.lang.Void>
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
_baseConstructorCalled
private java.util.Map<java.lang.String,Expression>
_initializers
private java.util.List<AstNode>
_nodesToRemove
private java.util.List<Expression>
_originalArguments
private java.util.List<ParameterDefinition>
_parametersToRemove
private java.util.Map<java.lang.String,Expression>
_replacements
-
Fields inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
context
-
-
Constructor Summary
Constructors Constructor Description ClosureRewriterPhaseOneVisitor(DecompilerContext context, java.util.List<Expression> originalArguments, java.util.Map<java.lang.String,Expression> replacements, java.util.Map<java.lang.String,Expression> initializers, java.util.List<ParameterDefinition> parametersToRemove, java.util.List<AstNode> nodesToRemove)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
markConstructorParameterForRemoval(AssignmentExpression node, ParameterDefinition parameter)
java.lang.Void
visitAssignmentExpression(AssignmentExpression node, java.lang.Void p)
protected java.lang.Void
visitChildren(AstNode node, java.lang.Void p)
java.lang.Void
visitConstructorDeclaration(ConstructorDeclaration node, java.lang.Void p)
java.lang.Void
visitSuperReferenceExpression(SuperReferenceExpression node, java.lang.Void p)
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
inConstructor, inMethod, inStaticInitializer, makeType, makeType, resolver, run, visitMethodDeclaration, visitMethodDeclarationOverride, visitTypeDeclaration, visitTypeDeclarationOverride
-
Methods inherited from class com.strobel.decompiler.languages.java.ast.DepthFirstAstVisitor
shouldContinue, visitAnnotation, visitAnonymousObjectCreationExpression, visitArrayCreationExpression, visitArrayInitializerExpression, visitArraySpecifier, visitAssertStatement, visitBinaryOperatorExpression, visitBlockStatement, visitBreakStatement, visitBytecodeConstant, visitCaseLabel, visitCastExpression, visitCatchClause, 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, visitSwitchExpression, visitSwitchExpressionArm, visitSwitchSection, visitSwitchStatement, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTryCatchStatement, visitTypeParameterDeclaration, visitTypeReference, visitUnaryOperatorExpression, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWhileStatement, visitWildcardType
-
-
-
-
Field Detail
-
_replacements
private final java.util.Map<java.lang.String,Expression> _replacements
-
_originalArguments
private final java.util.List<Expression> _originalArguments
-
_parametersToRemove
private final java.util.List<ParameterDefinition> _parametersToRemove
-
_initializers
private final java.util.Map<java.lang.String,Expression> _initializers
-
_nodesToRemove
private final java.util.List<AstNode> _nodesToRemove
-
_baseConstructorCalled
private boolean _baseConstructorCalled
-
-
Constructor Detail
-
ClosureRewriterPhaseOneVisitor
public ClosureRewriterPhaseOneVisitor(DecompilerContext context, java.util.List<Expression> originalArguments, java.util.Map<java.lang.String,Expression> replacements, java.util.Map<java.lang.String,Expression> initializers, java.util.List<ParameterDefinition> parametersToRemove, java.util.List<AstNode> nodesToRemove)
-
-
Method Detail
-
visitConstructorDeclaration
public java.lang.Void visitConstructorDeclaration(ConstructorDeclaration node, java.lang.Void p)
- Specified by:
visitConstructorDeclaration
in interfaceIAstVisitor<java.lang.Void,java.lang.Void>
- Overrides:
visitConstructorDeclaration
in classContextTrackingVisitor<java.lang.Void>
-
visitChildren
protected java.lang.Void visitChildren(AstNode node, java.lang.Void p)
- Overrides:
visitChildren
in classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
visitSuperReferenceExpression
public java.lang.Void visitSuperReferenceExpression(SuperReferenceExpression node, java.lang.Void p)
- Specified by:
visitSuperReferenceExpression
in interfaceIAstVisitor<java.lang.Void,java.lang.Void>
- Overrides:
visitSuperReferenceExpression
in classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
visitAssignmentExpression
public java.lang.Void visitAssignmentExpression(AssignmentExpression node, java.lang.Void p)
- Specified by:
visitAssignmentExpression
in interfaceIAstVisitor<java.lang.Void,java.lang.Void>
- Overrides:
visitAssignmentExpression
in classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
markConstructorParameterForRemoval
private void markConstructorParameterForRemoval(AssignmentExpression node, ParameterDefinition parameter)
-
-