20         typedef long unsigned Word;
    41                 inline operator bool()
 const {
    42                     return (*word) & (1lu << pos);
    47                     (*word) ^= (1lu << pos);
    53                     (*word) |= (1lu << pos);
    58                     (*word) &= ~(1lu << pos);
    62                 Reference(DynBitset::Word* word, 
size_t pos)
    63                     : word(word), pos(pos) {}
    65                 DynBitset::Word* word;
    86         inline size_t size()
 const { 
return size_; }
    90             return (data[pos/word_size]) & (1lu << (pos % word_size));
   127         bool anyOver(
size_t pos) 
const;
   135         std::string 
dump() 
const;
   138         inline void checkSize(
const DynBitset& oth)
 const {
   139             if(size_ != oth.size_)
   143         inline size_t nbWords()
 const {
   144             return (size_ + word_size - 1) / word_size;
   149         int whichBit(Word word, 
int offset = 0) 
const;
   154         constexpr 
static size_t word_size = 
sizeof(Word) * 8;
 Definition: dyn_bitset.h:27
 
void operator=(const DynBitset &oth)
Definition: dyn_bitset.cpp:53
 
DynBitset operator&(const DynBitset &oth) const
Bitwise AND of two DynBitsets. 
Definition: dyn_bitset.cpp:98
 
Reference & flip()
In-place flips the bit. 
Definition: dyn_bitset.h:46
 
void reset()
Sets all bits to false. 
Definition: dyn_bitset.cpp:125
 
bool operator~() const
Flips and returns the bit. 
Definition: dyn_bitset.h:36
 
std::string dump() const
Dumps the DynBitset to an hex representation. 
Definition: dyn_bitset.cpp:176
 
int singleBit() const
Checks if a single bit is set. 
Definition: dyn_bitset.cpp:164
 
Definition: dyn_bitset.h:25
 
DynBitset & operator^=(const DynBitset &oth)
In-place bitwise xor. 
Definition: dyn_bitset.cpp:76
 
DynBitset(size_t size)
size is expressed in bits. Initializes to zeroes. 
Definition: dyn_bitset.cpp:23
 
friend class Reference
Definition: dyn_bitset.h:68
 
DynBitset & flip()
In-place bitwise flip. 
Definition: dyn_bitset.cpp:83
 
bool operator[](size_t pos) const
Constant bit access operator. 
Definition: dyn_bitset.h:89
 
bool anyOver(size_t pos) const
Checks if any bit above the posth (incl.) is true. 
Definition: dyn_bitset.cpp:137
 
void reset()
Resets the bit (slightly faster than = false) 
Definition: dyn_bitset.h:57
 
~DynBitset()
Definition: dyn_bitset.cpp:49
 
bool any() const
Checks if any bit is true. 
Definition: dyn_bitset.cpp:130
 
DynBitset & operator&=(const DynBitset &oth)
Definition: dyn_bitset.cpp:62
 
Definition: dyn_bitset.h:18
 
DynBitset & operator|=(const DynBitset &oth)
In-place bitwise or. 
Definition: dyn_bitset.cpp:69
 
DynBitset operator^(const DynBitset &oth) const
Bitwise XOR of two DynBitsets. 
Definition: dyn_bitset.cpp:112
 
DynBitset operator~() const
Bitwise flip. 
Definition: dyn_bitset.cpp:119
 
DynBitset operator|(const DynBitset &oth) const
Bitwise OR of two DynBitsets. 
Definition: dyn_bitset.cpp:105
 
size_t size() const
Definition: dyn_bitset.h:86