com.ibm.wala.util.intset
Class MutableSparseLongSet

java.lang.Object
  extended by com.ibm.wala.util.intset.SparseLongSet
      extended by com.ibm.wala.util.intset.MutableSparseLongSet
All Implemented Interfaces:
LongSet, MutableLongSet

public final class MutableSparseLongSet
extends SparseLongSet
implements MutableLongSet

A sparse ordered, mutable duplicate-free, fully-encapsulated set of longs. Instances are not canonical, except for EMPTY. This implementation will be inefficient if these sets get large. TODO: even for small sets, we probably want to work on this to reduce the allocation activity.


Field Summary
 
Fields inherited from class com.ibm.wala.util.intset.SparseLongSet
elements, size
 
Constructor Summary
MutableSparseLongSet()
           
MutableSparseLongSet(int initialCapacity)
          Create an empty set with a non-zero capacity
MutableSparseLongSet(long[] backingStore)
           
MutableSparseLongSet(LongSet set)
           
 
Method Summary
 boolean add(long value)
          Add an integer value to this set.
 boolean addAll(LongSet set)
          Add all elements from another int set.
 boolean addAll(SparseLongSet that)
          Add all elements from another int set.
 void copySet(LongSet that)
          Set the value of this to be the same as the value of set
 void intersectWith(LongSet set)
          Interset this with another set.
 void intersectWith(SparseLongSet set)
           
 void remove(long value)
          Remove an integer from this set.
 void removeAll(MutableSparseLongSet set)
           
 
Methods inherited from class com.ibm.wala.util.intset.SparseLongSet
add, contains, containsAny, containsAny, diff, elementAt, getIndex, intersection, isEmpty, isSubset, max, pair, parseLongArray, sameValue, singleton, size, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.ibm.wala.util.intset.LongSet
contains, containsAny, intersection, isEmpty, isSubset, max, sameValue, size
 

Constructor Detail

MutableSparseLongSet

public MutableSparseLongSet(LongSet set)
Parameters:
set -

MutableSparseLongSet

public MutableSparseLongSet(long[] backingStore)

MutableSparseLongSet

public MutableSparseLongSet(int initialCapacity)
Create an empty set with a non-zero capacity

Parameters:
initialCapacity -

MutableSparseLongSet

public MutableSparseLongSet()
Method Detail

remove

public void remove(long value)
Description copied from interface: MutableLongSet
Remove an integer from this set.

Specified by:
remove in interface MutableLongSet

add

public boolean add(long value)
Description copied from interface: MutableLongSet
Add an integer value to this set.

Specified by:
add in interface MutableLongSet
Parameters:
value -
Returns:
true iff this value changes

copySet

public void copySet(LongSet that)
Description copied from interface: MutableLongSet
Set the value of this to be the same as the value of set

Specified by:
copySet in interface MutableLongSet

intersectWith

public void intersectWith(LongSet set)
Description copied from interface: MutableLongSet
Interset this with another set.

Specified by:
intersectWith in interface MutableLongSet

intersectWith

public void intersectWith(SparseLongSet set)

addAll

public boolean addAll(LongSet set)
Add all elements from another int set.

Specified by:
addAll in interface MutableLongSet
Returns:
true iff this set changes

addAll

public boolean addAll(SparseLongSet that)
Add all elements from another int set.

Parameters:
that -
Returns:
true iff this set changes

removeAll

public void removeAll(MutableSparseLongSet set)
               throws UnimplementedError
Throws:
UnimplementedError