abc.weaving.aspectinfo
Class ArgType
java.lang.Object
abc.weaving.aspectinfo.Syntax
abc.weaving.aspectinfo.ArgPattern
abc.weaving.aspectinfo.ArgAny
abc.weaving.aspectinfo.ArgType
public class ArgType
- extends ArgAny
An argument pattern denoting a specific type.
- Author:
- Aske Simon Christensen, Ganesh Sittampalam, Damien Sereni
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ArgType
public ArgType(AbcType type,
Position pos)
toString
public java.lang.String toString()
- Overrides:
toString
in class ArgAny
getType
public AbcType getType()
matchesAt
public Residue matchesAt(WeavingEnv we,
ContextValue cv)
- Description copied from class:
ArgPattern
- For use when being used in an args pattern
- Overrides:
matchesAt
in class ArgAny
unify
public boolean unify(ArgPattern other,
Unification unification)
- Description copied from class:
ArgPattern
- Attempts to unify two pointcuts, creating another pointcut that has enough variables
to encompass both if possible. Variables are only unified if they have the same type,
as stored in the unification typemaps. If unification.unifyWithFirst(), then restricted
unification is attempted, which succeeds only if both pointcuts can be unified with result
the first pointcut (ie the first pointcut has no less free variables than the second).
- Overrides:
unify
in class ArgAny
- Parameters:
other
- The other pointcut to unify withunification
- The unification. This should be initialized (determining
whether we attempt proper or restricted unification) and the typemaps should
be set.
- Returns:
- True iff the unification was successful. In this case, unification contains
the resulting pointcut and the substitutions taking it to THIS and OTHER. Otherwise,
unification is left in any old state.