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
LongIterator a more efficient iterator for sets of longs
LongSet Set of longs; not necessary mutable TODO: extract a smaller interface?
LongSetAction  
MutableIntSet An IntSet that can be changed.
MutableIntSetFactory<T extends MutableIntSet> An object that creates some flavor of mutable int set.
MutableLongSet  
MutableLongSetFactory An object that creates some flavor of mutable int set.
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 MutableIntSet 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> Abstract base class for implementations of bitvectors
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.
EmptyIntSet  
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
MultiModalIntVector an implementation of IntVector that uses a mix of backing arrays of type int, char, and byte array, in an attempt to save space for common data structures.
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.
MutableSparseLongSetFactory An object that creates mutable sparse int sets.
NumberUtility  
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
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
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.
 

Package com.ibm.wala.util.intset Description

BitVector and vector utilities