retainWhere method
Removes all elements of this set that fail to satisfy test
.
enum Numbers { one, two, three; }
var set1 = EnumSet<Numbers>.of(Numbers.values, {Numbers.one, Numbers.two});
set1.retainWhere((element) => element.index >= 1);
print(set1); // (Numbers.two)
Implementation
@override
void retainWhere(bool Function(T element) test) {
for (T element in this) {
if (!test(element)) remove(element);
}
}