docs: public static <K, V> boolean retainAll(Map<K, V> self, @ClosureParams(MapEntryOrKeyValue.class) Closure condition) {
          Iterator<Map.Entry<K, V>> iter = self.entrySet().iterator();
          BooleanClosureWrapper bcw = new BooleanClosureWrapper(condition);
          boolean result = false;
          while (iter.hasNext()) {
              Map.Entry<K, V> entry = iter.next();
              if (!bcw.callForMap(entry)) {
                  iter.remove();
                  result = true;
              }
          }
          return result;
      }