Class AddReferenceQualifiersTransform
- 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.AddReferenceQualifiersTransform
-
- All Implemented Interfaces:
IAstVisitor<java.lang.Void,java.lang.Void>,IAstTransform
public class AddReferenceQualifiersTransform extends ContextTrackingVisitor<java.lang.Void>
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<AstNode>_addQualifierCandidatesprivate java.util.Set<AstNode>_removeQualifierCandidatesprivate boolean_simplifyMemberReferences-
Fields inherited from class com.strobel.decompiler.languages.java.ast.ContextTrackingVisitor
context
-
-
Constructor Summary
Constructors Constructor Description AddReferenceQualifiersTransform(DecompilerContext context)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddQualifiersWhereNecessary()private static NameResolveModemodeForType(AstNode type)private java.lang.StringqualifyReference(AstNode node, TypeReference type)private voidremoveQualifiersWherePossible()protected java.lang.ObjectresolveName(AstNode location, java.lang.String name, NameResolveMode mode)voidrun(AstNode compilationUnit)java.lang.VoidvisitCompilationUnit(CompilationUnit node, java.lang.Void data)java.lang.VoidvisitMemberReferenceExpression(MemberReferenceExpression node, java.lang.Void data)java.lang.VoidvisitSimpleType(SimpleType 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, 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, visitMethodGroupExpression, visitModuleDeclaration, visitNewLine, visitNullReferenceExpression, visitObjectCreationExpression, visitPackageDeclaration, visitParameterDeclaration, visitParenthesizedExpression, visitPatternPlaceholder, visitPrimitiveExpression, visitReturnStatement, visitSuperReferenceExpression, visitSwitchExpression, visitSwitchExpressionArm, visitSwitchSection, visitSwitchStatement, visitSynchronizedStatement, visitText, visitThisReferenceExpression, visitThrowStatement, visitTryCatchStatement, visitTypeParameterDeclaration, visitTypeReference, visitUnaryOperatorExpression, visitUnionType, visitVariableDeclaration, visitVariableInitializer, visitWhileStatement, visitWildcardType
-
-
-
-
Constructor Detail
-
AddReferenceQualifiersTransform
public AddReferenceQualifiersTransform(DecompilerContext context)
-
-
Method Detail
-
run
public void run(AstNode compilationUnit)
- Specified by:
runin interfaceIAstTransform- Overrides:
runin classContextTrackingVisitor<java.lang.Void>
-
addQualifiersWhereNecessary
private void addQualifiersWhereNecessary()
-
removeQualifiersWherePossible
private void removeQualifiersWherePossible()
-
modeForType
private static NameResolveMode modeForType(AstNode type)
-
qualifyReference
private java.lang.String qualifyReference(AstNode node, TypeReference type)
-
visitSimpleType
public java.lang.Void visitSimpleType(SimpleType node, java.lang.Void data)
- Specified by:
visitSimpleTypein interfaceIAstVisitor<java.lang.Void,java.lang.Void>- Overrides:
visitSimpleTypein classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
visitCompilationUnit
public java.lang.Void visitCompilationUnit(CompilationUnit node, java.lang.Void data)
- Specified by:
visitCompilationUnitin interfaceIAstVisitor<java.lang.Void,java.lang.Void>- Overrides:
visitCompilationUnitin classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
visitMemberReferenceExpression
public java.lang.Void visitMemberReferenceExpression(MemberReferenceExpression node, java.lang.Void data)
- Specified by:
visitMemberReferenceExpressionin interfaceIAstVisitor<java.lang.Void,java.lang.Void>- Overrides:
visitMemberReferenceExpressionin classDepthFirstAstVisitor<java.lang.Void,java.lang.Void>
-
resolveName
protected java.lang.Object resolveName(AstNode location, java.lang.String name, NameResolveMode mode)
-
-