|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||
java.lang.Objectsoot.toolkits.scalar.AbstractFlowAnalysis
soot.toolkits.scalar.FlowAnalysis
soot.toolkits.scalar.ForwardFlowAnalysis
soot.jimple.toolkits.annotation.purity.PurityIntraproceduralAnalysis
Intra-procedural purity-graph analysis. You must pass an AbstractInterproceduralAnalysis object so that the intraprocedural part can resolve the effect of method calls. This manipulates PurityGraphBox.
| Field Summary |
| Fields inherited from class soot.toolkits.scalar.FlowAnalysis |
filterUnitToAfterFlow, unitToAfterFlow |
| Fields inherited from class soot.toolkits.scalar.AbstractFlowAnalysis |
filterUnitToBeforeFlow, graph, unitToBeforeFlow |
| Method Summary | |
protected void |
copy(Object source,
Object dest)
Creates a copy of the source flow object in dest. |
void |
copyResult(Object dst)
Put into dst the purity graph obtained by merging all purity graphs at the method return. |
void |
drawAsOneDot(String prefix,
String name)
Draw the result of the intra-procedural analysis as one big dot file, named className.methodName.dot, containing one purity graph for each statment in the method. |
protected Object |
entryInitialFlow()
Returns the initial flow value for entry/exit graph nodes. |
protected void |
flowThrough(Object inValue,
Object unit,
Object outValue)
Given the merge of the out sets, compute the in set for s (or in to out, depending on direction). |
protected void |
merge(Object in1,
Object in2,
Object out)
Compute the merge of the in1 and in2 sets, putting the result into out. |
protected Object |
newInitialFlow()
Returns the flow object corresponding to the initial values for each graph node. |
| Methods inherited from class soot.toolkits.scalar.ForwardFlowAnalysis |
doAnalysis, isForward |
| Methods inherited from class soot.toolkits.scalar.FlowAnalysis |
getFlowAfter |
| Methods inherited from class soot.toolkits.scalar.AbstractFlowAnalysis |
customizeInitialFlowGraph, getFlowBefore, merge, treatTrapHandlersAsEntries |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Method Detail |
protected Object newInitialFlow()
AbstractFlowAnalysis
newInitialFlow in class AbstractFlowAnalysisprotected Object entryInitialFlow()
AbstractFlowAnalysis
entryInitialFlow in class AbstractFlowAnalysis
protected void merge(Object in1,
Object in2,
Object out)
AbstractFlowAnalysisin1 and in2 sets, putting the result into out.
The behavior of this function depends on the implementation ( it may be necessary to check whether
in1 and in2 are equal or aliased ).
Used by the doAnalysis method.
merge in class AbstractFlowAnalysis
protected void copy(Object source,
Object dest)
AbstractFlowAnalysissource flow object in dest.
copy in class AbstractFlowAnalysis
protected void flowThrough(Object inValue,
Object unit,
Object outValue)
FlowAnalysisout sets, compute the in set for s (or in to out, depending on direction).
flowThrough in class FlowAnalysis
public void drawAsOneDot(String prefix,
String name)
public void copyResult(Object dst)
|
|||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||||