Update to the BitVector Implementation
IsBitSet:
- If the index requested is above the size, return false.
ClearBit:
- If the index requested is above the size, ignore.
Added SameBitsSet:
- Check the bits set disregarding size and expandable.
Intersect and Union:
- removed the requirement of same size.
- handles case where the sizes are not the same.
Added Subtract between BitVectors.
SetInitialBits:
- Now requests expansion if above the bits available.
- Clears upper bits.
Added GetHighestBitSet.
ClearBit:
- If we clear above the size, it is fine, it has not been set yet.
Copy:
- Supposes it is well allocated.
- It used to just copy what was available in destination without checking source's size.
- Now actually allocate the destination to make sure it holds enough space.
- Set parameter to const.
General:
- Moved sizeof(uint32_t) to sizeof(*storage_) for future maintenance.
Change-Id: Iebb214632482c46807deca957f5b6dc892a61a84
2 files changed