Package com.ibm.wala.demandpa.alg
Class AbstractDemandPointsTo
- java.lang.Object
-
- com.ibm.wala.demandpa.alg.AbstractDemandPointsTo
-
- All Implemented Interfaces:
IDemandPointerAnalysis
- Direct Known Subclasses:
DemandRefinementPointsTo
,SimpleDemandPointsTo
public abstract class AbstractDemandPointsTo extends Object implements IDemandPointerAnalysis
Abstract super class for demand points-to analysis. Implements basic methods for tracking how much traversal has been done.
-
-
Field Summary
Fields Modifier and Type Field Description protected CallGraph
cg
protected IClassHierarchy
cha
protected HeapModel
heapModel
protected MemoryAccessMap
mam
protected int
numNodesTraversed
protected AnalysisOptions
options
-
Constructor Summary
Constructors Constructor Description AbstractDemandPointsTo(CallGraph cg, HeapModel model, MemoryAccessMap mam, IClassHierarchy cha, AnalysisOptions options)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CallGraph
getBaseCallGraph()
IClassHierarchy
getClassHierarchy()
HeapModel
getHeapModel()
int
getNumNodesTraversed()
int
getTraversalBudget()
protected void
incrementNumNodesTraversed()
protected void
setNumNodesTraversed(int traversed)
protected void
setTraversalBudget(int traversalBudget)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.ibm.wala.demandpa.alg.IDemandPointerAnalysis
getPointsTo
-
-
-
-
Field Detail
-
cg
protected final CallGraph cg
-
heapModel
protected final HeapModel heapModel
-
mam
protected final MemoryAccessMap mam
-
cha
protected final IClassHierarchy cha
-
options
protected final AnalysisOptions options
-
numNodesTraversed
protected int numNodesTraversed
-
-
Constructor Detail
-
AbstractDemandPointsTo
public AbstractDemandPointsTo(CallGraph cg, HeapModel model, MemoryAccessMap mam, IClassHierarchy cha, AnalysisOptions options)
-
-
Method Detail
-
getTraversalBudget
public int getTraversalBudget()
-
setTraversalBudget
protected void setTraversalBudget(int traversalBudget)
-
getHeapModel
public HeapModel getHeapModel()
- Specified by:
getHeapModel
in interfaceIDemandPointerAnalysis
-
incrementNumNodesTraversed
protected void incrementNumNodesTraversed()
-
setNumNodesTraversed
protected void setNumNodesTraversed(int traversed)
-
getNumNodesTraversed
public int getNumNodesTraversed()
-
getBaseCallGraph
public CallGraph getBaseCallGraph()
- Specified by:
getBaseCallGraph
in interfaceIDemandPointerAnalysis
-
getClassHierarchy
public IClassHierarchy getClassHierarchy()
- Specified by:
getClassHierarchy
in interfaceIDemandPointerAnalysis
-
-