Interface PointerAnalysis<T extends InstanceKey>

All Known Implementing Classes:
AbstractPointerAnalysis, AstSSAPropagationCallGraphBuilder.AstPointerAnalysisImpl, CrossLanguageSSAPropagationCallGraphBuilder.CrossLanguagePointerAnalysisImpl, JSSSAPropagationCallGraphBuilder.JSPointerAnalysisImpl, PointerAnalysisImpl, TypeBasedPointerAnalysis

public interface PointerAnalysis<T extends InstanceKey>
Abstract definition of pointer analysis
  • Method Details

    • getPointsToSet

      OrdinalSet<T> getPointsToSet(PointerKey key)
      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
    • getHeapModel

      HeapModel getHeapModel()
      Returns:
      an Object that determines how to model abstract locations in the heap.
    • getHeapGraph

      HeapGraph<T> getHeapGraph()
      Returns:
      a graph view of the pointer analysis solution
    • getInstanceKeyMapping

      OrdinalSetMapping<T> getInstanceKeyMapping()
      Returns:
      the bijection between InstanceKey <=> Integer that defines the interpretation of points-to-sets.
    • getPointerKeys

      Iterable<PointerKey> getPointerKeys()
      Returns:
      all pointer keys known
    • getInstanceKeys

      Collection<T> getInstanceKeys()
      Returns:
      all instance keys known
    • isFiltered

      boolean isFiltered(PointerKey pk)
      did the pointer analysis use a type filter for a given points-to set? (this is ugly).
    • getClassHierarchy

      IClassHierarchy getClassHierarchy()