15 BitSet Bits, InverseBits;
16 BitSet MaxValue, ValueMask;
18 Composition2N(BitSet maxValue, BitSet valueMask) : Bits(0), InverseBits(0), MaxValue(maxValue), ValueMask(valueMask) {}
20 static void compute2N(
unsigned power, BitSet& value) {
21 value = 1uLL << power;
29 if((++Bits) <= MaxValue) {
30 InverseBits = (~Bits+1) & ValueMask;
38 while(0==(bits & 1uLL) && ++n <
sizeof(bits)*8)
46 return 0 != (
getBitSet() & (1uLL << bit));
Composition2N(BitSet maxValue, BitSet valueMask)
bool isSet(unsigned bit) const
unsigned long long BitSet
Includes a bunch of functionality for handling Atom and Bond queries.
static void compute2N(unsigned power, BitSet &value)