Interface PointsToSet

All Known Implementing Classes:
UnmodifiablePointsToSet

public interface PointsToSet
A generic interface to some set of runtime objects computed by a pointer analysis.
Author:
Ondrej Lhotak
  • Method Details

    • isEmpty

      boolean isEmpty()
      Returns true if this set contains no run-time objects.
    • contains

      boolean contains(AllocNode n)
      Returns true iff the set contains n.
    • hasNonEmptyIntersection

      boolean hasNonEmptyIntersection(PointsToSet other)
      Returns true if this set shares some objects with other.
    • possibleTypes

      Set<Type> possibleTypes()
      Set of all possible run-time types of objects in the set.
    • possibleStringConstants

      Set<String> possibleStringConstants()
      If this points-to set consists entirely of string constants, returns a set of these constant strings. If this point-to set may contain something other than constant strings, returns null.
    • possibleClassConstants

      Set<ClassConstant> possibleClassConstants()
      If this points-to set consists entirely of objects of type java.lang.Class of a known class, returns a set of ClassConstant's that are these classes. If this point-to set may contain something else, returns null.
    • size

      int size()
      Size of objects in this set.
    • clear

      void clear()
    • pointsToSetHashCode

      int pointsToSetHashCode()
      Computes a hash code based on the contents of the points-to set. Note that hashCode() is not overwritten on purpose. This is because Spark relies on comparison by object identity.
    • pointsToSetEquals

      boolean pointsToSetEquals(Object other)
      Returns true if and only if other holds the same alloc nodes as this. Note that equals() is not overwritten on purpose. This is because Spark relies on comparison by object identity.
    • toCIPointsToSet

      PointsToSet toCIPointsToSet()
    • toCollection

      Collection<AllocNode> toCollection()
    • iterator

      Iterator<AllocNode> iterator()