abc.aspectj.ast
Class PCName_c

java.lang.Object
  extended by Node_c
      extended by abc.aspectj.ast.Pointcut_c
          extended by abc.aspectj.ast.PCName_c
All Implemented Interfaces:
PCName, Pointcut, DependsCheck

public class PCName_c
extends Pointcut_c
implements PCName, DependsCheck

A reference to a named pointcut.

Author:
Oege de Moor, Aske Simon Christensen

Field Summary
protected  java.util.List args
           
protected  MethodInstance mi
           
protected  java.lang.String name
           
protected  Receiver target
           
 
Fields inherited from class abc.aspectj.ast.Pointcut_c
initialised
 
Constructor Summary
PCName_c(Position pos, Receiver target, java.lang.String name, java.util.List args)
           
 
Method Summary
 java.util.List arguments()
          Get the actual arguments of the reference.
 PCName arguments(java.util.List arguments)
          Set the actual arguments of the reference.
 Node buildTypes(TypeBuilder tb)
          build the types
 Node checkDepends(DependsChecker dc)
           
 boolean isDynamic()
           
 Pointcut makeAIPointcut()
           
 java.util.Collection mayBind()
           
 java.util.Collection mustBind()
           
 java.lang.String name()
          Get the name of the pointcut reference.
 PCName name(java.lang.String name)
          Set the name of the pointcut reference.
 java.util.Set pcRefs()
           
 MethodInstance pointcutInstance()
          Get the pointcut instance of the reference.
 PCName pointcutInstance(MethodInstance mi)
          Set the pointcut instance of the reference.
 Precedence precedence()
          Get the precedence of the expression.
 void prettyPrint(CodeWriter w, PrettyPrinter tr)
           
 ProcedureInstance procedureInstance()
           
protected  PCName_c reconstruct(Receiver target, java.util.List args)
          Reconstruct the pointcut call.
 Receiver target()
          Get the target type of the pointcut reference.
 PCName target(Receiver target)
          Set the target object of the pointcut reference.
 Node typeCheck(TypeChecker tc)
          type check the pointcut reference
 Node visitChildren(NodeVisitor v)
          Visit the children of the pointcut call.
 
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.Pointcut
checkFormals, printSubExpr
 

Field Detail

target

protected Receiver target

name

protected java.lang.String name

args

protected java.util.List args

mi

protected MethodInstance mi
Constructor Detail

PCName_c

public PCName_c(Position pos,
                Receiver target,
                java.lang.String name,
                java.util.List args)
Method Detail

precedence

public Precedence precedence()
Description copied from interface: Pointcut
Get the precedence of the expression.

Specified by:
precedence in interface Pointcut
Overrides:
precedence in class Pointcut_c

pcRefs

public java.util.Set pcRefs()
Specified by:
pcRefs in interface Pointcut

isDynamic

public boolean isDynamic()
Specified by:
isDynamic in interface Pointcut

target

public Receiver target()
Get the target type of the pointcut reference.


target

public PCName target(Receiver target)
Set the target object of the pointcut reference.


name

public java.lang.String name()
Get the name of the pointcut reference.


name

public PCName name(java.lang.String name)
Set the name of the pointcut reference.


procedureInstance

public ProcedureInstance procedureInstance()

pointcutInstance

public MethodInstance pointcutInstance()
Get the pointcut instance of the reference.


pointcutInstance

public PCName pointcutInstance(MethodInstance mi)
Set the pointcut instance of the reference.


arguments

public java.util.List arguments()
Get the actual arguments of the reference.


arguments

public PCName arguments(java.util.List arguments)
Set the actual arguments of the reference.


reconstruct

protected PCName_c reconstruct(Receiver target,
                               java.util.List args)
Reconstruct the pointcut call.


visitChildren

public Node visitChildren(NodeVisitor v)
Visit the children of the pointcut call.


buildTypes

public Node buildTypes(TypeBuilder tb)
                throws SemanticException
build the types

Throws:
SemanticException

typeCheck

public Node typeCheck(TypeChecker tc)
               throws SemanticException
type check the pointcut reference

Throws:
SemanticException

checkDepends

public Node checkDepends(DependsChecker dc)
                  throws SemanticException
Specified by:
checkDepends in interface DependsCheck
Throws:
SemanticException

prettyPrint

public void prettyPrint(CodeWriter w,
                        PrettyPrinter tr)

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

makeAIPointcut

public Pointcut makeAIPointcut()
Specified by:
makeAIPointcut in interface Pointcut