Class BitVectorIntSet
java.lang.Object
com.ibm.wala.util.intset.BitVectorIntSet
- All Implemented Interfaces:
IntSet, MutableIntSet, Serializable
A
BitVector implementation of MutableIntSet.
Note that this is NOT a value with regard to hashCode and equals.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanadd(int i) Add an integer value to this set.booleanAdd all members of set to this.booleanaddAllInIntersection(IntSet other, IntSet filter) voidaddAllOblivious(IntSet set) this version of add all will likely be faster if the client doesn't care about the change or the population count.voidclear()remove all elements from this setbooleancontains(int i) booleancontainsAll(BitVectorIntSet other) booleancontainsAny(IntSet set) voidSet the value of this to be the same as the value of setvoidforeach(IntSetAction action) Invoke an action on each element of the SetvoidforeachExcluding(IntSet X, IntSetAction action) Invoke an action on each element of the Set, excluding elements of Set Xintersection(IntSet that) This implementation must not despoil the original value of "this"voidintersectWith(IntSet set) Intersect this with another set.Use with extreme care; doesn't detect ConcurrentModificationExceptionsbooleanisEmpty()booleanintmax()intnextSetBit(int n) booleanremove(int i) Remove an integer from this set.booleanremoveAll(BitVectorIntSet set) booleanintsize()TODO: optimizetoString()This implementation must not despoil the original value of "this"
-
Constructor Details
-
BitVectorIntSet
public BitVectorIntSet() -
BitVectorIntSet
-
BitVectorIntSet
- Throws:
IllegalArgumentException
-
-
Method Details
-
clear
public void clear()Description copied from interface:MutableIntSetremove all elements from this set- Specified by:
clearin interfaceMutableIntSet
-
copySet
Description copied from interface:MutableIntSetSet the value of this to be the same as the value of set- Specified by:
copySetin interfaceMutableIntSet- Throws:
IllegalArgumentException
-
addAll
Description copied from interface:MutableIntSetAdd all members of set to this.- Specified by:
addAllin interfaceMutableIntSet- Returns:
- true iff the value of this changes.
-
addAllOblivious
this version of add all will likely be faster if the client doesn't care about the change or the population count.- Throws:
IllegalArgumentException- if set == null
-
add
public boolean add(int i) Description copied from interface:MutableIntSetAdd an integer value to this set.- Specified by:
addin interfaceMutableIntSet- Parameters:
i- integer to add- Returns:
- true iff the value of this changes.
-
remove
public boolean remove(int i) Description copied from interface:MutableIntSetRemove an integer from this set.- Specified by:
removein interfaceMutableIntSet- Parameters:
i- integer to remove- Returns:
- true iff the value of this changes.
-
intersectWith
Description copied from interface:MutableIntSetIntersect this with another set.- Specified by:
intersectWithin interfaceMutableIntSet
-
intersection
Description copied from interface:IntSetThis implementation must not despoil the original value of "this"- Specified by:
intersectionin interfaceIntSet- Returns:
- a new IntSet which is the intersection of this and that
- See Also:
-
union
-
isEmpty
-
size
-
intIterator
Use with extreme care; doesn't detect ConcurrentModificationExceptions- Specified by:
intIteratorin interfaceIntSet- Returns:
- a perhaps more efficient iterator
-
foreach
Description copied from interface:IntSetInvoke an action on each element of the Set -
makeSparseCopy
-
foreachExcluding
Description copied from interface:IntSetInvoke an action on each element of the Set, excluding elements of Set X- Specified by:
foreachExcludingin interfaceIntSet- See Also:
-
contains
-
max
-
toString
-
nextSetBit
public int nextSetBit(int n) - Returns:
- min j >= n s.t get(j)
-
sameValue
- Specified by:
sameValuein interfaceIntSet- Returns:
- true iff
thishas the same value asthat. - Throws:
IllegalArgumentExceptionUnimplementedError- See Also:
-
isSubset
-
getBitVector
-
toSparseIntSet
TODO: optimize -
removeAll
- Throws:
IllegalArgumentException- if set is null
-
containsAny
- Specified by:
containsAnyin interfaceIntSet- Returns:
- true iff this set contains integer i
- Throws:
IllegalArgumentException- See Also:
-
addAllInIntersection
- Specified by:
addAllInIntersectionin interfaceMutableIntSet- Throws:
IllegalArgumentException
-
containsAll
-