aboutsummaryrefslogtreecommitdiff
path: root/api/src/main/java/me/shedaniel
diff options
context:
space:
mode:
Diffstat (limited to 'api/src/main/java/me/shedaniel')
-rw-r--r--api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java16
1 files changed, 16 insertions, 0 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java
index f00f400c3..21e5401d0 100644
--- a/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java
+++ b/api/src/main/java/me/shedaniel/rei/api/common/util/CollectionUtils.java
@@ -138,6 +138,22 @@ public class CollectionUtils {
}
return l;
}
+
+ public static <T, R> Set<R> mapToSet(Collection<T> list, Function<T, R> function) {
+ Set<R> l = new HashSet<>(list.size() + 1);
+ for (T t : list) {
+ l.add(function.apply(t));
+ }
+ return l;
+ }
+
+ public static <T, R> Set<R> mapToSet(Iterable<T> list, Function<T, R> function) {
+ Set<R> l = new HashSet<>();
+ for (T t : list) {
+ l.add(function.apply(t));
+ }
+ return l;
+ }
public static <T, R> List<R> mapIndexed(Iterable<T> list, IndexedFunction<T, R> function) {
List<R> l = list instanceof Collection ? new ArrayList<>(((Collection<T>) list).size() + 1) : new ArrayList<>();