org.aspectj.ajdt.internal.compiler.ast
Class AccessForInlineVisitor

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.compiler.ASTVisitor
      extended by org.aspectj.ajdt.internal.compiler.ast.AccessForInlineVisitor

public class AccessForInlineVisitor
extends ASTVisitor

Walks the body of around advice Makes sure that all member accesses are to public members. Will convert to use access methods when needed to ensure that. This makes it much simpler (and more modular) to inline the body of an around. ??? constructors are handled different and require access to the target type. changes to org.eclipse.jdt.internal.compiler.ast.AllocationExpression would be required to fix this issue.


Field Summary
 boolean isInlinable
           
 
Constructor Summary
AccessForInlineVisitor(AspectDeclaration inAspect, PrivilegedHandler handler)
           
 
Method Summary
 void endVisit(AllocationExpression send, BlockScope scope)
           
 void endVisit(AssertStatement assertStatement, BlockScope scope)
           
 void endVisit(ClassLiteralAccess classLiteral, BlockScope scope)
           
 void endVisit(FieldReference ref, BlockScope scope)
           
 void endVisit(MessageSend send, BlockScope scope)
           
 void endVisit(QualifiedNameReference ref, BlockScope scope)
           
 void endVisit(QualifiedTypeReference ref, BlockScope scope)
           
 void endVisit(SingleNameReference ref, BlockScope scope)
           
 void endVisit(SingleTypeReference ref, BlockScope scope)
           
 boolean visit(TypeDeclaration localTypeDeclaration, BlockScope scope)
           
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ASTVisitor
acceptProblem, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

isInlinable

public boolean isInlinable
Constructor Detail

AccessForInlineVisitor

public AccessForInlineVisitor(AspectDeclaration inAspect,
                              PrivilegedHandler handler)
Method Detail

endVisit

public void endVisit(SingleNameReference ref,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(QualifiedNameReference ref,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(FieldReference ref,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(MessageSend send,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(AllocationExpression send,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(QualifiedTypeReference ref,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(SingleTypeReference ref,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(AssertStatement assertStatement,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(ClassLiteralAccess classLiteral,
                     BlockScope scope)
Overrides:
endVisit in class ASTVisitor

visit

public boolean visit(TypeDeclaration localTypeDeclaration,
                     BlockScope scope)
Overrides:
visit in class ASTVisitor