We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent b11ca85 commit e6a3127Copy full SHA for e6a3127
src/lib.rs
@@ -678,11 +678,13 @@ where
678
if self.rest.is_empty() {
679
None
680
} else {
681
- let bits = self.rest.bits();
682
- let flag: T::Numeric = bits & bits.wrapping_neg();
683
- let flag: T = unsafe { core::mem::transmute_copy(&flag) };
684
- self.rest.remove(flag);
685
- Some(flag)
+ unsafe {
+ let bits = self.rest.bits();
+ let flag: T::Numeric = bits & bits.wrapping_neg();
+ let flag: T = core::mem::transmute_copy(&flag);
+ self.rest = BitFlags::from_bits_unchecked(bits & (bits - BitFlagNum::ONE));
686
+ Some(flag)
687
+ }
688
}
689
690
0 commit comments