package polyglot.util;
/** A bit vector class implemented more naively than java.util.BitSet. */
public class BitVector
{
private int size;
private boolean[] bits;
public BitVector()
{
this( 32);
}
public BitVector( int initialSize)
{
size = initialSize;
bits = new boolean[ size];
}
public final void setBit( int which, boolean value)
{
if( which >= size) {
size += 32;
boolean[] newBits = new boolean[ size ];
for( int i = 0; i < bits.length; i++)
newBits[i] = bits[i];
bits = newBits;
}
bits[ which] = value;
}
public final boolean getBit( int which)
{
if( which >= size) {
return false;
}
else {
return bits[ which];
}
}
}