|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectabc.weaving.residues.Residue
public abstract class Residue
The base class defining dynamic residues of pointcuts
| Nested Class Summary | |
|---|---|
static class |
Residue.Bindings
|
| Constructor Summary | |
|---|---|
Residue()
|
|
| Method Summary | |
|---|---|
abstract Stmt |
codeGen(SootMethod method,
LocalGeneratorEx localgen,
Chain units,
Stmt begin,
Stmt fail,
boolean sense,
WeavingContext wc)
Generate the code for this dynamic residue. |
void |
getAdviceFormalBindings(Residue.Bindings bindings,
AndResidue andRoot)
Fills the Bindings object with information of possible advice-formal bindings. |
java.util.List |
getResidueBoxes()
|
abstract Residue |
inline(ConstructorInliningMap cim)
Make a copy of the residue applying to an inlined version of the code. |
abstract Residue |
optimize()
Optimize the residue by rebuilding it, invoking the smart constructors along the way. |
Residue |
resetForReweaving()
|
Residue |
restructureToCreateBindingsMask(Local bindingsMaskLocal,
Residue.Bindings bindings)
Returns residue that replaces the old residue. |
protected static Stmt |
succeed(Chain units,
Stmt begin,
Stmt fail,
boolean sense)
This is a helper method for codeGen; it is called when an implementation of codeGen considers that the residue has succeeded, but hasn't yet considered the sense parameter. |
abstract java.lang.String |
toString()
Must provide a toString method |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public Residue()
| Method Detail |
|---|
public abstract Residue inline(ConstructorInliningMap cim)
public abstract Residue optimize()
public abstract Stmt codeGen(SootMethod method,
LocalGeneratorEx localgen,
Chain units,
Stmt begin,
Stmt fail,
boolean sense,
WeavingContext wc)
method - The method the code is being inserted intolocalgen - A local generator for the methodunits - The chain the code is being inserted intobegin - Code will be inserted just after this statementsense - If this is false, inverts the meaning of failure and success for the residuefail - If the residue "fails", the inserted code will jump to this point;
otherwise it will fall throughwc - The weaving context
protected static Stmt succeed(Chain units,
Stmt begin,
Stmt fail,
boolean sense)
units - The chain the code is being inserted intobegin - Any extra code will be inserted just after this statementfail - The place to jump if sense is falsesense - Indicates the sense of the residuepublic abstract java.lang.String toString()
toString in class java.lang.Objectpublic Residue resetForReweaving()
public void getAdviceFormalBindings(Residue.Bindings bindings,
AndResidue andRoot)
public Residue restructureToCreateBindingsMask(Local bindingsMaskLocal,
Residue.Bindings bindings)
public java.util.List getResidueBoxes()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||