|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectabc.main.AbcExtension
public class AbcExtension
This class should be sub-classed to extend the behaviour of abc
A sub-class, with overriden methods to effect some new behaviour, can be loaded at runtime by using the "-ext" switch to abc.
Constructor Summary | |
---|---|
AbcExtension()
|
Method Summary | |
---|---|
void |
addBasicClassesToSoot()
Call Scene.v().addBasicClass for each runtime class that the backend might generate code for. |
void |
addJimplePacks()
This method adds optimisation passes specificially required for abc. |
protected void |
collectVersions(java.lang.StringBuffer versions)
|
SJPInfo |
createSJPInfo(java.lang.String kind,
java.lang.String signatureTypeClass,
java.lang.String signatureType,
java.lang.String signature,
Host host)
Create a (compile-time) static join point information object that generates code to initialize static join point fields with reflective information about a join point. |
void |
findMethodShadows(GlobalAspectInfo info,
MethodAdviceList mal,
SootClass cls,
SootMethod method)
This method is responsible for taking a method and calling AdviceApplication.doShadows for each "position" in the method that might have a join point associated with it. |
void |
initLexerKeywords(AbcLexer lexer)
Initialise the HashMaps that define how keywords are handled in the different lexer states. |
protected java.util.List |
listShadowTypes()
Override this method to add new joinpoints to the abc. |
ExtensionInfo |
makeExtensionInfo(java.util.Collection jar_classes,
java.util.Collection aspect_sources)
|
java.lang.String |
runtimeSJPFactoryClass()
Specify the class that will be used at runtime to generate StaticJoinPoint objects. |
java.util.Iterator |
shadowTypes()
Get all the shadow joinpoints that are matched in this extension of AspectJ |
java.lang.String |
versions()
Constructs a version string for all loaded extensions |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public AbcExtension()
Method Detail |
---|
public final java.lang.String versions()
protected void collectVersions(java.lang.StringBuffer versions)
public ExtensionInfo makeExtensionInfo(java.util.Collection jar_classes, java.util.Collection aspect_sources)
public final java.util.Iterator shadowTypes()
protected java.util.List listShadowTypes()
public void addJimplePacks()
public void addBasicClassesToSoot()
public java.lang.String runtimeSJPFactoryClass()
public SJPInfo createSJPInfo(java.lang.String kind, java.lang.String signatureTypeClass, java.lang.String signatureType, java.lang.String signature, Host host)
public void initLexerKeywords(AbcLexer lexer)
public void findMethodShadows(GlobalAspectInfo info, MethodAdviceList mal, SootClass cls, SootMethod method) throws polyglot.types.SemanticException
polyglot.types.SemanticException
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |