soot.jimple.spark.sets
Class HybridPointsToSet
java.lang.Object
soot.jimple.spark.sets.PointsToSetInternal
soot.jimple.spark.sets.HybridPointsToSet
- All Implemented Interfaces:
- EqualsSupportingPointsToSet, PointsToSet
public final class HybridPointsToSet
- extends PointsToSetInternal
Hybrid implementation of points-to set, which uses an explicit array for
small sets, and a bit vector for large sets.
- Author:
- Ondrej Lhotak
Methods inherited from class soot.jimple.spark.sets.PointsToSetInternal |
flushNew, getBitMask, getNewSet, getOldSet, getType, hasNonEmptyIntersection, mergeWith, pointsToSetEquals, pointsToSetHashCode, possibleClassConstants, possibleStringConstants, possibleTypes, setType, size, toString, unFlushNew |
HybridPointsToSet
public HybridPointsToSet(Type type,
PAG pag)
isEmpty
public final boolean isEmpty()
- Returns true if this set contains no run-time objects.
addAll
public final boolean addAll(PointsToSetInternal other,
PointsToSetInternal exclude)
- Adds contents of other into this set, returns true if this set
changed.
- Overrides:
addAll
in class PointsToSetInternal
forall
public final boolean forall(P2SetVisitor v)
- Calls v's visit method on all nodes in this set.
- Specified by:
forall
in class PointsToSetInternal
add
public final boolean add(Node n)
- Adds n to this set, returns true if n was not already in this set.
- Specified by:
add
in class PointsToSetInternal
contains
public final boolean contains(Node n)
- Returns true iff the set contains n.
- Specified by:
contains
in class PointsToSetInternal
getFactory
public static final P2SetFactory getFactory()
fastAdd
protected final boolean fastAdd(Node n)
convertToBits
protected final void convertToBits()
intersection
public static HybridPointsToSet intersection(HybridPointsToSet set1,
HybridPointsToSet set2,
PAG pag)