*<Null safety>*
void retainAll (Iterable<Object?> elements) override
@override void retainAll(Iterable<Object?> elements) { var valuesToRetain = Set<V>.identity(); for (var element in elements) { if (element is! V) continue; var key = _keyForValue(element); if (!_baseMap.containsKey(key)) continue; valuesToRetain.add(_baseMap[key] ?? null as V); } var keysToRemove = []; _baseMap.forEach((k, v) { if (!valuesToRetain.contains(v)) keysToRemove.add(k); }); keysToRemove.forEach(_baseMap.remove); }