/// Adds a value to this set.
pub fn insert(&mut self, value: T) -> bool {
- let contains = self.contains(value);
+ let contains = !self.contains(value);
self.__enumset_underlying = self.__enumset_underlying | Self::mask(value.enum_into_u8());
contains
}
assert!(set.is_empty());
}
+ #[test]
+ fn already_present_element() {
+ let mut set = EnumSet::new();
+ assert!(set.insert($e::A));
+ assert!(!set.insert($e::A));
+ set.remove($e::A);
+ assert!(set.insert($e::A));
+ }
+
#[test]
fn empty_is_empty() {
assert_eq!(EnumSet::<$e>::empty().len(), 0)