abc.eaj.ast
Class PCLet_c

java.lang.Object
  extended by Node_c
      extended by abc.aspectj.ast.Pointcut_c
          extended by abc.aspectj.ast.PCIf_c
              extended by abc.eaj.ast.PCLet_c
All Implemented Interfaces:
MakesAspectMethods, PCIf, Pointcut, TransformsAspectReflection, PCLet

public class PCLet_c
extends PCIf_c
implements PCLet

Author:
Julian Tibble

Field Summary
protected  Local var
           
 
Fields inherited from class abc.aspectj.ast.PCIf_c
canRewriteThisJoinPoint, expr, hasEnclosingJoinPointStaticPart, hasJoinPoint, hasJoinPointStaticPart, methodDecl, methodName, thisEnclosingJoinPointStaticPartInstance, thisJoinPointInstance, thisJoinPointStaticPartInstance
 
Fields inherited from class abc.aspectj.ast.Pointcut_c
initialised
 
Constructor Summary
PCLet_c(Position pos, Local var, Expr expr)
           
 
Method Summary
protected  java.util.List calculateMethodParameters(AspectMethods visitor, AJNodeFactory nf, AJTypeSystem ts)
           
 Type childExpectedType(Expr child, AscriptionVisitor av)
           
 MethodDecl exprMethod(AJNodeFactory nf, AJTypeSystem ts, java.util.List formals, ParsedClassType container)
           
 Pointcut makeAIPointcut()
           
 java.util.Collection mayBind()
           
 java.util.Collection mustBind()
           
 void prettyPrint(CodeWriter w, PrettyPrinter tr)
           
 Node typeCheck(TypeChecker tc)
          Type check the pointcut.
 Node visitChildren(NodeVisitor v)
          visit the children of the let
 
Methods inherited from class abc.aspectj.ast.PCIf_c
addJoinPointFormal, addJoinPointFormals, aspectMethodsEnter, aspectMethodsLeave, enterAspectReflectionInspect, enterAspectReflectionRewrite, enterScope, hasEnclosingJoinPointStaticPart, hasJoinPoint, hasJoinPointStaticPart, isDynamic, joinpointFormals, leaveAspectReflectionInspect, leaveAspectReflectionRewrite, liftMethod, pcRefs, precedence, reconstruct
 
Methods inherited from class abc.aspectj.ast.Pointcut_c
checkFormals, printSubExpr
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface abc.aspectj.ast.PCIf
joinpointFormals, liftMethod
 
Methods inherited from interface abc.aspectj.ast.Pointcut
checkFormals, isDynamic, pcRefs, precedence, printSubExpr
 
Methods inherited from interface abc.aspectj.ast.MakesAspectMethods
aspectMethodsEnter, aspectMethodsLeave
 
Methods inherited from interface abc.aspectj.visit.TransformsAspectReflection
enterAspectReflectionInspect, enterAspectReflectionRewrite, leaveAspectReflectionInspect, leaveAspectReflectionRewrite
 

Field Detail

var

protected Local var
Constructor Detail

PCLet_c

public PCLet_c(Position pos,
               Local var,
               Expr expr)
Method Detail

visitChildren

public Node visitChildren(NodeVisitor v)
visit the children of the let

Overrides:
visitChildren in class PCIf_c

prettyPrint

public void prettyPrint(CodeWriter w,
                        PrettyPrinter tr)
Overrides:
prettyPrint in class PCIf_c

mayBind

public java.util.Collection mayBind()
                             throws SemanticException
Specified by:
mayBind in interface Pointcut
Overrides:
mayBind in class Pointcut_c
Throws:
SemanticException

mustBind

public java.util.Collection mustBind()
Specified by:
mustBind in interface Pointcut
Overrides:
mustBind in class Pointcut_c

typeCheck

public Node typeCheck(TypeChecker tc)
               throws SemanticException
Description copied from class: PCIf_c
Type check the pointcut.

Overrides:
typeCheck in class PCIf_c
Throws:
SemanticException

childExpectedType

public Type childExpectedType(Expr child,
                              AscriptionVisitor av)
Overrides:
childExpectedType in class PCIf_c

exprMethod

public MethodDecl exprMethod(AJNodeFactory nf,
                             AJTypeSystem ts,
                             java.util.List formals,
                             ParsedClassType container)
Specified by:
exprMethod in interface PCIf
Overrides:
exprMethod in class PCIf_c

calculateMethodParameters

protected java.util.List calculateMethodParameters(AspectMethods visitor,
                                                   AJNodeFactory nf,
                                                   AJTypeSystem ts)
Overrides:
calculateMethodParameters in class PCIf_c

makeAIPointcut

public Pointcut makeAIPointcut()
Specified by:
makeAIPointcut in interface Pointcut
Overrides:
makeAIPointcut in class PCIf_c