abc.ra.ast
Class RelTMDecl_c
java.lang.Object
MethodDecl_c
abc.aspectj.extension.AJMethodDecl_c
abc.aspectj.ast.AdviceBody_c
abc.tm.ast.TMDecl_c
abc.ra.ast.RelTMDecl_c
- All Implemented Interfaces:
- AdviceDecl, MakesAspectMethods, ContainsAspectInfo, TransformsAspectReflection, RelTMDecl, TMDecl
- Direct Known Subclasses:
- RelAdviceTMDecl_c
public class RelTMDecl_c
- extends TMDecl_c
- implements RelTMDecl
Declaration of a relational tracematch.
Such a tracematch has access to relational aspect formals.
- Author:
- Eric Bodden
| Fields inherited from class abc.tm.ast.TMDecl_c |
after_pc, after_spec, before_around_pc, before_around_spec, frequent_symbols, isAround, isPerThread, regex, some_advice, sym_to_advice_name, sym_to_vars, symbols, synch_advice, tracematch_name |
|
Constructor Summary |
RelTMDecl_c(Position pos,
Position body_pos,
TMModsAndType mods_and_type,
java.lang.String tracematch_name,
java.util.List formals,
java.util.List throwTypes,
java.util.List symbols,
java.util.List frequent_symbols,
Regex regex,
Block body)
|
| Methods inherited from class abc.tm.ast.TMDecl_c |
acceptCFG, adviceSignature, aroundTypes, aroundVars, aspectMethodsEnter, bodyAdviceFormals, checkAroundSymbols, checkAroundVars, checkBinding, checkForEmptyTrace, disambiguateEnter, enterScope, formalFor, generateImplementationAdvice, makeEventAdvice, makeSymbolAdvice, mustBind, orderedSymToVars, orPC, prettyPrint, proceedDecl, reconstruct, thisJoinPointVariables, update, visitChildren, weavingFormals |
| Methods inherited from class abc.aspectj.ast.AdviceBody_c |
addExtraFormals, aspectMethodsLeave, buildTypes, dummyVal, enterAspectReflectionInspect, enterAspectReflectionRewrite, enterScope, entry, 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 |
RelTMDecl_c
public RelTMDecl_c(Position pos,
Position body_pos,
TMModsAndType mods_and_type,
java.lang.String tracematch_name,
java.util.List formals,
java.util.List throwTypes,
java.util.List symbols,
java.util.List frequent_symbols,
Regex regex,
Block body)
genNormalTraceMatch
public TMDecl genNormalTraceMatch(RelAspectDecl container,
RANodeFactory nf,
TypeSystem ts)
- Generates a
TMFromRelTMDecl_c tracematch from this relational tracematch.
- Specified by:
genNormalTraceMatch in interface RelTMDecl
typeCheck
public Node typeCheck(TypeChecker tc)
throws SemanticException
- Typechecks this relational advice.
The tracematch may only be contained in a relational aspect.
Also, it may not declare any tracematch formals that have the same name as any
of the relational aspect formals.
- Overrides:
typeCheck in class TMDecl_c
- Throws:
SemanticException