Class TypeBasedPointerAnalysis
- java.lang.Object
-
- com.ibm.wala.ipa.callgraph.propagation.AbstractPointerAnalysis
-
- com.ibm.wala.ipa.callgraph.propagation.rta.TypeBasedPointerAnalysis
-
- All Implemented Interfaces:
PointerAnalysis<InstanceKey>
public class TypeBasedPointerAnalysis extends AbstractPointerAnalysis
A trivial field-based pointer analysis solution, which only uses the information of which types (classes) are live.
-
-
Field Summary
-
Fields inherited from class com.ibm.wala.ipa.callgraph.propagation.AbstractPointerAnalysis
instanceKeys
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description IClassHierarchy
getClassHierarchy()
HeapModel
getHeapModel()
Collection<PointerKey>
getPointerKeys()
OrdinalSet<InstanceKey>
getPointsToSet(PointerKey key)
boolean
isFiltered(PointerKey pk)
did the pointer analysis use a type filter for a given points-to set? (this is ugly).static TypeBasedPointerAnalysis
make(AnalysisOptions options, Collection<IClass> klasses, CallGraph cg)
-
Methods inherited from class com.ibm.wala.ipa.callgraph.propagation.AbstractPointerAnalysis
getCallGraph, getHeapGraph, getInstanceKeyMapping, getInstanceKeys
-
-
-
-
Method Detail
-
make
public static TypeBasedPointerAnalysis make(AnalysisOptions options, Collection<IClass> klasses, CallGraph cg) throws AssertionError
- Throws:
AssertionError
-
getPointsToSet
public OrdinalSet<InstanceKey> getPointsToSet(PointerKey key) throws IllegalArgumentException
- Parameters:
key
- representative of an equivalence class of pointers- Returns:
- Set of InstanceKey, representing the instance abstractions that define the points-to set computed for the pointer key
- Throws:
IllegalArgumentException
-
getHeapModel
public HeapModel getHeapModel()
- Returns:
- an Object that determines how to model abstract locations in the heap.
-
getPointerKeys
public Collection<PointerKey> getPointerKeys()
- Returns:
- all pointer keys known
-
isFiltered
public boolean isFiltered(PointerKey pk)
Description copied from interface:PointerAnalysis
did the pointer analysis use a type filter for a given points-to set? (this is ugly).
-
getClassHierarchy
public IClassHierarchy getClassHierarchy()
-
-