abc.weaving.aspectinfo
Class DynamicValuePointcut
java.lang.Object
abc.weaving.aspectinfo.Syntax
abc.weaving.aspectinfo.Pointcut
abc.weaving.aspectinfo.DynamicValuePointcut
- Direct Known Subclasses:
- Args, TargetAny, ThisAny
public abstract class DynamicValuePointcut
- extends Pointcut
A pointcut designator that inspects a dynamic value
(this,target,args)
- Author:
- Ganesh Sittampalam
Method Summary |
protected Pointcut |
inline(java.util.Hashtable renameEnv,
java.util.Hashtable typeEnv,
Aspect context,
int cflowdepth)
Inlining should remove all PointcutRefs, and return a pointcut
that is alpha-renamed |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
DynamicValuePointcut
public DynamicValuePointcut(Position pos)
inline
protected Pointcut inline(java.util.Hashtable renameEnv,
java.util.Hashtable typeEnv,
Aspect context,
int cflowdepth)
- Description copied from class:
Pointcut
- Inlining should remove all PointcutRefs, and return a pointcut
that is alpha-renamed
- Specified by:
inline
in class Pointcut
- Parameters:
renameEnv
- A mapping from pointcut names to the Var
s
they should be renamed to. If a name isn't in the
map, it doesn't need to be renamed.typeEnv
- A mapping from pointcut names to AbcType
s.
Every variable that can appear free in the pointcut
must be listed. The names are those before any
renaming takes place.context
- The Aspect
in which the root pointcut is
defined. This is required because references to
abstract pointcuts must be resolved to the concrete
pointcut using this aspect.cflowdepth
- The number of surrounding cflow
s.
This is required
to determine the correct precedence for the
synthetic advice used to implement
cflow
.
- Returns:
- The inlined pointcut