Go to the documentation of this file.
18 #ifndef _DECAF_UTIL_BITSET_H_
19 #define _DECAF_UTIL_BITSET_H_
50 unsigned long long* bits;
57 mutable int actualArrayLength;
58 mutable bool isLengthActual;
62 BitSet(
unsigned long long* bits,
int bitsSize,
bool needClear,
int actualArrayLength,
bool isLengthActual);
107 void AND(
const BitSet&
set);
117 void OR(
const BitSet&
set);
125 void andNot(
const BitSet&
set);
147 void clear(
int index);
161 void clear(
int fromIndex,
int toIndex);
174 bool equals(
const BitSet&
set)
const;
184 void flip(
int index);
198 void flip(
int fromIndex,
int toIndex);
211 bool get(
int index)
const;
227 BitSet get(
int fromIndex,
int toIndex)
const;
238 bool intersects(
const BitSet&
set)
const;
245 bool isEmpty()
const;
266 int nextClearBit(
int index)
const;
279 int nextSetBit(
int index)
const;
301 void set(
int index,
bool value);
315 void set(
int fromIndex,
int toIndex);
331 void set(
int fromIndex,
int toIndex,
bool value);
350 std::string toString()
const;
364 void XOR(
const BitSet&
set);
375 void ensureCapacity(
int length);
385 int getActualArrayLength()
const;