code: @Override
    public int retainAll(final KTypePredicate<? super KType> predicate) {
      return removeAll(new KTypePredicate<KType>() {
        public boolean apply(KType value) {
          return !predicate.apply(value);
        };
      });
    }
docs: Default implementation redirects to {@link #removeAll(KTypePredicate)} and
  negates the predicate.