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);
103 return this->equals(other);
113 return !this->equals(other);
127 void AND(
const BitSet&
set);
137 void OR(
const BitSet&
set);
145 void andNot(
const BitSet&
set);
167 void clear(
int index);
181 void clear(
int fromIndex,
int toIndex);
194 bool equals(
const BitSet&
set)
const;
204 void flip(
int index);
218 void flip(
int fromIndex,
int toIndex);
231 bool get(
int index)
const;
247 BitSet get(
int fromIndex,
int toIndex)
const;
258 bool intersects(
const BitSet&
set)
const;
265 bool isEmpty()
const;
286 int nextClearBit(
int index)
const;
299 int nextSetBit(
int index)
const;
321 void set(
int index,
bool value);
335 void set(
int fromIndex,
int toIndex);
351 void set(
int fromIndex,
int toIndex,
bool value);
370 std::string toString()
const;
384 void XOR(
const BitSet&
set);
395 void ensureCapacity(
int length);
405 int getActualArrayLength()
const;
#define DECAF_API
Definition: Config.h:29
This class implements a vector of bits that grows as needed.
Definition: BitSet.h:46
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements...
Definition: AprPool.h:25
bool operator!=(const BitSet &other) const
Boolean comparison operator !=.
Definition: BitSet.h:112
bool operator==(const BitSet &other) const
Boolean comparison operator ==.
Definition: BitSet.h:102