Class UnmodifiablePointsToSet

java.lang.Object
qilin.core.sets.UnmodifiablePointsToSet
All Implemented Interfaces:
PointsToSet

public class UnmodifiablePointsToSet extends Object implements PointsToSet
  • Constructor Details

  • Method Details

    • isEmpty

      public boolean isEmpty()
      Description copied from interface: PointsToSet
      Returns true if this set contains no run-time objects.
      Specified by:
      isEmpty in interface PointsToSet
    • contains

      public boolean contains(AllocNode n)
      Description copied from interface: PointsToSet
      Returns true iff the set contains n.
      Specified by:
      contains in interface PointsToSet
    • hasNonEmptyIntersection

      public boolean hasNonEmptyIntersection(PointsToSet other)
      Description copied from interface: PointsToSet
      Returns true if this set shares some objects with other.
      Specified by:
      hasNonEmptyIntersection in interface PointsToSet
    • possibleTypes

      public Set<Type> possibleTypes()
      Description copied from interface: PointsToSet
      Set of all possible run-time types of objects in the set.
      Specified by:
      possibleTypes in interface PointsToSet
    • possibleStringConstants

      public Set<String> possibleStringConstants()
      Description copied from interface: PointsToSet
      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.
      Specified by:
      possibleStringConstants in interface PointsToSet
    • possibleClassConstants

      public Set<ClassConstant> possibleClassConstants()
      Description copied from interface: PointsToSet
      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.
      Specified by:
      possibleClassConstants in interface PointsToSet
    • size

      public int size()
      Description copied from interface: PointsToSet
      Size of objects in this set.
      Specified by:
      size in interface PointsToSet
    • clear

      public void clear()
      Specified by:
      clear in interface PointsToSet
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • pointsToSetHashCode

      public int pointsToSetHashCode()
      Description copied from interface: PointsToSet
      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.
      Specified by:
      pointsToSetHashCode in interface PointsToSet
    • pointsToSetEquals

      public boolean pointsToSetEquals(Object other)
      Description copied from interface: PointsToSet
      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.
      Specified by:
      pointsToSetEquals in interface PointsToSet
    • toCIPointsToSet

      public PointsToSet toCIPointsToSet()
      Specified by:
      toCIPointsToSet in interface PointsToSet
    • toCollection

      public Collection<AllocNode> toCollection()
      Specified by:
      toCollection in interface PointsToSet
    • iterator

      public Iterator<AllocNode> iterator()
      Specified by:
      iterator in interface PointsToSet
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object