Package qilin.core.sets
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 Summary
Modifier and TypeMethodDescriptionvoidclear()booleanReturns true iff the set contains n.booleanReturns true if this set shares some objects with other.booleanisEmpty()Returns true if this set contains no run-time objects.iterator()booleanpointsToSetEquals(Object other) Returnstrueif and only if other holds the same alloc nodes as this.intComputes a hash code based on the contents of the points-to set.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 points-to set consists entirely of string constants, returns a set of these constant strings.Set of all possible run-time types of objects in the set.intsize()Size of objects in this set.
-
Method Details
-
isEmpty
boolean isEmpty()Returns true if this set contains no run-time objects. -
contains
Returns true iff the set contains n. -
hasNonEmptyIntersection
Returns true if this set shares some objects with other. -
possibleTypes
Set of all possible run-time types of objects in the set. -
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
Returnstrueif 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
-