public class SmartMethodInfoFlowAnalysis
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
static int |
counter |
Constructor and Description |
---|
SmartMethodInfoFlowAnalysis(UnitGraph g,
InfoFlowAnalysis dfa) |
Modifier and Type | Method and Description |
---|---|
protected void |
addFlowToCdfg(Stmt stmt) |
void |
generateAbbreviatedInfoFlowGraph() |
void |
generateInfoFlowSummary() |
HashMutableDirectedGraph<EquivalentValue> |
getMethodAbbreviatedInfoFlowGraph() |
HashMutableDirectedGraph<EquivalentValue> |
getMethodInfoFlowSummary() |
Value |
getThisLocal() |
protected void |
handleFlowsToDataStructure(Value base,
Value source) |
protected void |
handleFlowsToValue(Value sink,
Value source) |
protected void |
handleInnerField(Value innerFieldRef) |
protected java.util.List<Value> |
handleInvokeExpr(InvokeExpr ie,
Stmt is) |
protected boolean |
ignoreThisDataType(Type type) |
protected boolean |
isNonRefType(Type type) |
java.util.List<EquivalentValue> |
sinksOf(EquivalentValue node) |
java.util.List<EquivalentValue> |
sourcesOf(EquivalentValue node) |
public SmartMethodInfoFlowAnalysis(UnitGraph g, InfoFlowAnalysis dfa)
public void generateAbbreviatedInfoFlowGraph()
public void generateInfoFlowSummary()
public java.util.List<EquivalentValue> sourcesOf(EquivalentValue node)
public java.util.List<EquivalentValue> sinksOf(EquivalentValue node)
public HashMutableDirectedGraph<EquivalentValue> getMethodInfoFlowSummary()
public HashMutableDirectedGraph<EquivalentValue> getMethodAbbreviatedInfoFlowGraph()
protected boolean isNonRefType(Type type)
protected boolean ignoreThisDataType(Type type)
protected void handleInnerField(Value innerFieldRef)
protected java.util.List<Value> handleInvokeExpr(InvokeExpr ie, Stmt is)
protected void addFlowToCdfg(Stmt stmt)
public Value getThisLocal()