Home | History | Annotate | Download | only in ngram

Lines Matching defs:Bits

28 // clear bits over ranges in constant time.
31 // size in bits that maintains a running count of the number of bits set
37 // bits set in each block is created using the type uint64.
54 static void Set(uint64* bits, size_t index) {
55 bits[index >> kStorageLogBitSize] |= (kOne << (index & kStorageBlockMask));
58 static void Clear(uint64* bits, size_t index) {
59 bits[index >> kStorageLogBitSize] &= ~(kOne << (index & kStorageBlockMask));
62 size_t Bits() const {
70 // Returns the number of one bits in the bitmap
75 // Returns the number of one bits in positions 0 to limit - 1.
76 // REQUIRES: limit <= Bits()
79 // Returns the number of one bits in the range start to end - 1.
80 // REQUIRES: limit <= Bits()
85 // Returns the number of zero bits in positions 0 to limit - 1.
86 // REQUIRES: limit <= Bits()
91 // Returns the number of zero bits in the range start to end - 1.
92 // REQUIRES: limit <= Bits()
98 // is set. 0 <= begin <= end <= Bits() is required.
105 // or Bits() if index >= number of ones
109 // or Bits() if index > number of
115 void BuildIndex(const uint64 *bits, size_t size);
133 // count of the population of one bits contained in [0,i), there is
135 // necessarily be zero. (The bits are indexed in a zero based way.) Thus
148 // at 0. Note that the rem_bit_index parameter is the number of bits
149 // within the secondary block, after the bits accounted for by the primary
150 // block have been removed (i.e. the remaining bits) And, because we
163 // count of one bits set for all blocks (and, thus, all uint64s).