abc.tm.ast
Class PerSymbolAdviceDecl_c
java.lang.Object
MethodDecl_c
abc.aspectj.extension.AJMethodDecl_c
abc.aspectj.ast.AdviceBody_c
abc.aspectj.ast.AdviceDecl_c
abc.tm.ast.PerSymbolAdviceDecl_c
- All Implemented Interfaces:
- AdviceDecl, MakesAspectMethods, ContainsAspectInfo, TransformsAspectReflection, TMAdviceDecl
- Direct Known Subclasses:
- CustomWarningPerSymbolAdviceDecl_c
public class PerSymbolAdviceDecl_c
- extends AdviceDecl_c
- implements TMAdviceDecl
- Author:
- Julian Tibble, Eric Bodden
This class is for compiler-generated advice for implementing
TraceMatches. This advice requires different type-checking and
precedence rules to normal advice.
| Methods inherited from class abc.aspectj.ast.AdviceBody_c |
aspectMethodsEnter, aspectMethodsLeave, buildTypes, dummyVal, enterAspectReflectionInspect, enterAspectReflectionRewrite, enterScope, hasEnclosingJoinPointStaticPart, hasJoinPoint, hasJoinPointStaticPart, joinpointFormals, leaveAspectReflectionInspect, leaveAspectReflectionRewrite, localMethod, makeMethodInstance, methodDecl |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
tm_id
protected java.lang.String tm_id
tm_pos
protected Position tm_pos
sym
protected SymbolDecl sym
PerSymbolAdviceDecl_c
public PerSymbolAdviceDecl_c(Position pos,
Flags flags,
AdviceSpec spec,
java.util.List throwTypes,
Pointcut pc,
Block body,
java.lang.String tm_id,
SymbolDecl sym,
Position tm_pos)
typeCheck
public Node typeCheck(TypeChecker tc)
throws SemanticException
- Description copied from class:
AdviceDecl_c
- Type check the advice: first the usual method checks, then whether the "throwing" result is
actually throwable
- Overrides:
typeCheck in class AdviceDecl_c
- Throws:
SemanticException
update
public void update(GlobalAspectInfo gai,
Aspect current_aspect)
- Description copied from interface:
ContainsAspectInfo
- Called by the
AspectInfoHarvester to tell the node to
put all relevant information into the GlobalAspectInfo.
- Specified by:
update in interface ContainsAspectInfo- Overrides:
update in class AdviceDecl_c
- Parameters:
gai - the target of the information.current_aspect - the aspect currently being traversed.