package st.gravel.support.jvm;
import java.util.Collection;
import java.util.HashSet;
import java.util.Set;
public class SetExtensions {
public static final Factory factory = new Factory();
public static class Factory extends SmalltalkFactory {
public Object basicNew() {
return new HashSet();
}
}
public static Object r_class(Object receiver) {
return factory;
}
public static <X> Set<X> copy(Collection<X> values) {
return new HashSet<X>(values);
}
public static <E> Set<E> select_(Set<E> receiver, Predicate1<E> predicate1) {
HashSet<E> result = new HashSet<E>();
for (E element : receiver) {
if (predicate1.value_(element))
result.add(element);
}
return result;
}
}