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 Vars
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 AbcTypes.
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 cflows.
This is required
to determine the correct precedence for the
synthetic advice used to implement
cflow.
- Returns:
- The inlined pointcut