FastLED 3.9.15
Loading...
Searching...
No Matches

◆ flip() [1/2]

void fl::bitset_dynamic::flip ( )
inlinenoexcept

Definition at line 193 of file bitset_dynamic.h.

193 {
194 for (uint32_t i = 0; i < _block_count; ++i) {
195 _blocks[i] = ~_blocks[i];
196 }
197
198 // Clear any bits beyond size
199 if (_block_count > 0 && _size % bits_per_block != 0) {
200 uint32_t last_block_idx = (_size - 1) / bits_per_block;
201 uint32_t last_bit_pos = (_size - 1) % bits_per_block;
202 block_type mask =
203 (static_cast<block_type>(1) << (last_bit_pos + 1)) - 1;
204 _blocks[last_block_idx] &= mask;
205 }
206 }
static constexpr uint32_t bits_per_block
block_type * _blocks

References _block_count, _blocks, _size, and bits_per_block.