diff options
Diffstat (limited to 'src/main/java/org/zwobble/couscous/util')
| -rw-r--r-- | src/main/java/org/zwobble/couscous/util/ExtraLists.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/couscous/util/ExtraLists.java b/src/main/java/org/zwobble/couscous/util/ExtraLists.java index 36c9b06..590b466 100644 --- a/src/main/java/org/zwobble/couscous/util/ExtraLists.java +++ b/src/main/java/org/zwobble/couscous/util/ExtraLists.java @@ -5,6 +5,7 @@ import java.util.function.BiFunction; import java.util.function.Function; import java.util.stream.Collectors; import java.util.stream.Stream; +import java.util.stream.StreamSupport; public class ExtraLists { @SuppressWarnings("unchecked") @@ -26,6 +27,14 @@ public class ExtraLists { } } + public static <T, R> List<R> eagerMap( + Iterable<T> iterable, + Function<T, R> function) { + return StreamSupport.stream(iterable.spliterator(), false) + .map(function) + .collect(Collectors.toList()); + } + @FunctionalInterface public static interface CheckedFunction<T, R, E extends Exception> { R apply(T value) throws E; |
