Package com.ibm.wala.util.intset

BitVector and vector utilities

See:
          Description

Interface Summary
IBinaryNaturalRelation a relation R(x,y) where x >= 0
IntIterator a more efficient iterator for sets of integers
IntSet Set of integers; not necessary mutable TODO: extract a smaller interface?
IntSetAction  
IntVector interface for array of integer
IVector<T> simple interface for a vector.
LongSet Set of longs; not necessary mutable TODO: extract a smaller interface?
MutableIntSet  
MutableIntSetFactory An object that creates some flavor of mutable int set.
MutableLongSet  
OrdinalSetMapping<T> An object that implements a bijection between whole numbers and objects.
 

Class Summary
BasicNaturalRelation A relation between non-negative integers This implementation uses n IntVectors, to hold the first n y's associated with each x, and then 1 extra vector of SparseIntSet to hold the remaining ys.
BimodalMutableIntSet An implementation of mutable int set that delegates to either a MutableSparseIntSet or a BitVectorIntSet
BimodalMutableIntSetFactory An object that creates some bimodal mutable int sets.
Bits utilities for manipulating values at the bit-level.
BitSet<T> A bit set is a set of elements, each of which corresponds to a unique integer from [0,MAX].
BitVector  
BitVectorBase<T extends BitVectorBase>  
BitVectorIntSet A BitVector implementation of MutableIntSet.
BitVectorIntSetFactory  
BitVectorRepository A repository for shared bit vectors as described by Heintze
DebuggingMutableIntSetFactory A debugging factory that creates debugging bitsets that are implemented as two bitsets that perform consistency checks for every operation.
FixedSizeBitVector  
IntegerUnionFind An implementation of Tarjan's union-find, using path compression and balancing, for non-negative integers
IntPair A pair of ints.
IntSetUtil Utilities for dealing with IntSets
LongSetUtil Utilities for dealing with LongSets
MutableMapping<T> A bit set mapping based on an object array.
MutableSharedBitVectorIntSet The shared bit vector implementation described by [Heintze 1999] TODO: much optimization possible.
MutableSharedBitVectorIntSetFactory A factory for mutable shared bit vector int sets
MutableSparseIntSet A sparse ordered, mutable duplicate-free, fully-encapsulated set of integers.
MutableSparseIntSetFactory An object that creates mutable sparse int sets.
MutableSparseLongSet A sparse ordered, mutable duplicate-free, fully-encapsulated set of longs.
OffsetBitVector  
OffsetOrdinalSetMapping<T> An ordinal set mapping, backed a delegate, but adding an offset to each index.
OrdinalSet<T> A Set backed by a set of integers.
SemiSparseMutableIntSet  
SemiSparseMutableIntSetFactory  
SimpleIntVector simple implementation of IntVector
SimpleVector<T> simple implementation of IVector
SparseIntSet A sparse ordered, duplicate-free, fully-encapsulated set of integers; not necessary mutable
SparseIntVector an int vector implementation designed for low occupancy.
SparseLongIntVector an int vector implementation designed for low occupancy.
SparseLongSet A sparse ordered, duplicate-free, fully-encapsulated set of longs; not necessary mutable
SparseVector<T> a vector implementation designed for low occupancy.
TunedMutableSparseIntSet A MutableSparseIntSet that allows for tuning of its initial size and expansion factor.
TunedSimpleIntVector a simple implementation of int vector that can be tuned to control space usage
TwoLevelIntVector an int vector implementation which delegates to pages of int vectors.
TwoLevelVector<T> a vector implementation which delegates to pages of int vectors.
 

Package com.ibm.wala.util.intset Description

BitVector and vector utilities