abc.ra.ast
Class TMFromRelTMDecl_c
java.lang.Object
MethodDecl_c
abc.aspectj.extension.AJMethodDecl_c
abc.aspectj.ast.AdviceBody_c
abc.tm.ast.TMDecl_c
abc.ra.ast.TMFromRelTMDecl_c
- All Implemented Interfaces:
- AdviceDecl, MakesAspectMethods, ContainsAspectInfo, TransformsAspectReflection, TMDecl
public class TMFromRelTMDecl_c
- extends TMDecl_c
- implements TMDecl
A tracematch generated from a relational tracematch.
This adds associate and release symbols and rewrites the pattern.
A regular expression r becomes transformed to associate r.
Also, formals of the relational aspect are added and a state variable is generated.
- 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 |
TMFromRelTMDecl_c(Position 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,
RelAspectDecl container,
RelTMDecl_c originator,
RANodeFactory nf)
|
| 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, typeCheck, 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 |
INTERNAL_STATE_VAR_SUFFIX
public static final java.lang.String INTERNAL_STATE_VAR_SUFFIX
- Suffix for internal state variables.
- See Also:
- Constant Field Values
TMFromRelTMDecl_c
public TMFromRelTMDecl_c(Position 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,
RelAspectDecl container,
RelTMDecl_c originator,
RANodeFactory nf)
stateVariableName
public static java.lang.String stateVariableName(java.lang.String tracematch_name)
- Generates the unique state variable name for a tracematch.
update
public void update(GlobalAspectInfo gai,
Aspect current_aspect)
- Mostly copied from
TMDeclupdate(GlobalAspectInfo, Aspect).
Just returns a RATraceMatch instead of a TraceMatch.
- Specified by:
update in interface ContainsAspectInfo- Overrides:
update in class TMDecl_c
- Parameters:
gai - the target of the information.current_aspect - the aspect currently being traversed.