public class DoublePointsToSet extends PointsToSetInternal
PointsToSetInternal.P2SetVisitorDefaultTrue, PointsToSetInternal.P2SetVisitorInt
Modifier and Type | Field and Description |
---|---|
protected PointsToSetInternal |
newSet |
protected PointsToSetInternal |
oldSet |
type
Constructor and Description |
---|
DoublePointsToSet(Type type,
PAG pag) |
Modifier and Type | Method and Description |
---|---|
boolean |
add(Node n)
Adds n to this set, returns true if n was not already in this set.
|
boolean |
addAll(PointsToSetInternal other,
PointsToSetInternal exclude)
Adds contents of other into this set, returns true if this set
changed.
|
boolean |
contains(Node n)
Returns true iff the set contains n.
|
void |
flushNew()
Sets all newly-added nodes to old nodes.
|
boolean |
forall(P2SetVisitor v)
Calls v's visit method on all nodes in this set.
|
static P2SetFactory |
getFactory(P2SetFactory newFactory,
P2SetFactory oldFactory) |
PointsToSetInternal |
getNewSet()
Returns set of newly-added nodes since last call to flushNew.
|
PointsToSetInternal |
getOldSet()
Returns set of nodes already present before last call to flushNew.
|
boolean |
hasNonEmptyIntersection(PointsToSet other)
Returns true if this set shares some objects with other.
|
boolean |
isEmpty()
Returns true if this set contains no run-time objects.
|
void |
mergeWith(PointsToSetInternal other)
Merges other into this set.
|
java.util.Set<Type> |
possibleTypes()
Set of all possible run-time types of objects in the set.
|
void |
unFlushNew()
Sets all nodes to newly-added nodes.
|
getBitMask, getType, pointsToSetEquals, pointsToSetHashCode, possibleClassConstants, possibleStringConstants, setType, size, toString
protected PointsToSetInternal newSet
protected PointsToSetInternal oldSet
public boolean isEmpty()
public boolean hasNonEmptyIntersection(PointsToSet other)
hasNonEmptyIntersection
in interface PointsToSet
hasNonEmptyIntersection
in class PointsToSetInternal
public java.util.Set<Type> possibleTypes()
possibleTypes
in interface PointsToSet
possibleTypes
in class PointsToSetInternal
public boolean addAll(PointsToSetInternal other, PointsToSetInternal exclude)
addAll
in class PointsToSetInternal
public boolean forall(P2SetVisitor v)
forall
in class PointsToSetInternal
public boolean add(Node n)
add
in class PointsToSetInternal
public PointsToSetInternal getOldSet()
getOldSet
in class PointsToSetInternal
public PointsToSetInternal getNewSet()
getNewSet
in class PointsToSetInternal
public void flushNew()
flushNew
in class PointsToSetInternal
public void unFlushNew()
unFlushNew
in class PointsToSetInternal
public void mergeWith(PointsToSetInternal other)
mergeWith
in class PointsToSetInternal
public boolean contains(Node n)
contains
in class PointsToSetInternal
public static P2SetFactory getFactory(P2SetFactory newFactory, P2SetFactory oldFactory)