To use it as a drop-in replacement for HashSet, it would be nice to make FixedBitSet generic over its "index", i.e. FixedBitSet<K = usize> where K: From<usize> + Into<usize> (à la typed-index-collections).
So when you have e.g. a custom wrapper type MyId(u32) which is a HashSet<MyId>, and you know the collection is mainly dense (not too many holes), you could very easily switch to FixedBitSet<MyId> without changing anything else in the code.
To use it as a drop-in replacement for
HashSet, it would be nice to makeFixedBitSetgeneric over its "index", i.e.FixedBitSet<K = usize> where K: From<usize> + Into<usize>(à la typed-index-collections).So when you have e.g. a custom wrapper type
MyId(u32)which is aHashSet<MyId>, and you know the collection is mainly dense (not too many holes), you could very easily switch toFixedBitSet<MyId>without changing anything else in the code.