|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectabc.main.AbcExtension
abc.eaj.AbcExtension
abc.tm.AbcExtension
public class AbcExtension
| Constructor Summary | |
|---|---|
AbcExtension()
|
|
| Method Summary | |
|---|---|
void |
addBasicClassesToSoot()
Call Scene.v().addBasicClass for each runtime class that the backend might generate code for. |
protected void |
collectVersions(java.lang.StringBuffer versions)
Override this method to add the version information for this extension, calling the same method in the super-class to ensure that all extensions are reported. |
CompileSequence |
createCompileSequence()
Creates the unique compile sequence for this extension. |
protected GlobalAspectInfo |
createGlobalAspectInfo()
Override this to create a custom global aspect info. |
protected void |
createReweavingPasses(java.util.List passes)
Adds a new reweaving passes to the pass list. |
Weaver |
createWeaver()
Override this to create a custom weaver. |
protected int |
getPrec(AdviceDecl a,
AdviceDecl b)
|
int |
getPrecedence(AbstractAdviceDecl a,
AbstractAdviceDecl b)
amended for tracematches |
void |
initLexerKeywords(AbcLexer lexer)
Initialise the HashMaps that define how keywords are handled in the different lexer states. |
ExtensionInfo |
makeExtensionInfo(java.util.Collection jar_classes,
java.util.Collection aspect_sources)
Creates an instance of the ExtensionInfo structure
used for extending the Polyglot-based frontend. |
int |
tmGetPrec(TMAdviceDecl tma,
TMAdviceDecl tmb)
within a single tracematch, normal precedence rules apply for recognition of symbols. |
| Methods inherited from class abc.eaj.AbcExtension |
|---|
createSJPInfo, doMethodRestructuring, listShadowTypes, makeAdviceInliner, runtimeSJPFactoryClass |
| Methods inherited from class abc.main.AbcExtension |
|---|
addJimplePacks, findMethodShadows, forceReportError, getCompileSequence, getErrorQueue, getGlobalAspectInfo, getPrecNum, getReweavingPasses, getWeaver, reportError, reportError, residueConjuncts, resumeErrorReporting, setErrorQueue, shadowTypes, suspendErrorReporting, versions |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public AbcExtension()
| Method Detail |
|---|
protected void collectVersions(java.lang.StringBuffer versions)
AbcExtension
collectVersions in class AbcExtension
public ExtensionInfo makeExtensionInfo(java.util.Collection jar_classes,
java.util.Collection aspect_sources)
AbcExtensionExtensionInfo structure
used for extending the Polyglot-based frontend.
makeExtensionInfo in class AbcExtensionprotected GlobalAspectInfo createGlobalAspectInfo()
AbcExtension
createGlobalAspectInfo in class AbcExtensionpublic Weaver createWeaver()
AbcExtension
createWeaver in class AbcExtensionpublic void initLexerKeywords(AbcLexer lexer)
AbcExtension
initLexerKeywords in class AbcExtensionpublic void addBasicClassesToSoot()
AbcExtension
addBasicClassesToSoot in class AbcExtensionprotected void createReweavingPasses(java.util.List passes)
createReweavingPasses in class AbcExtensionpasses - the current list of reweaving passes; add your analysis passes
here as needed; do not forget to call super
public int tmGetPrec(TMAdviceDecl tma,
TMAdviceDecl tmb)
protected int getPrec(AdviceDecl a,
AdviceDecl b)
public int getPrecedence(AbstractAdviceDecl a,
AbstractAdviceDecl b)
getPrecedence in class AbcExtensiona - the first advice decl.b - the second advice decl.
GlobalAspectInfo.PRECEDENCE_NONE if none of the advice decls have precedence,
GlobalAspectInfo.PRECEDENCE_FIRST if the first advice decl has precedence,
GlobalAspectInfo.PRECEDENCE_SECOND if the second advice decl has precedence, or
GlobalAspectInfo.PRECEDENCE_CONFLICT if there is a precedence
conflict between the two advice decls.public CompileSequence createCompileSequence()
createCompileSequence in class AbcExtension
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||