diff options
| author | Michael Williamson <mike@zwobble.org> | 2015-10-31 15:18:10 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2015-10-31 15:18:10 +0000 |
| commit | f80befcf2be566d35e5a17646899bfed82473029 (patch) | |
| tree | c7bba09d731ae1b7edf7b8b5faa54bcadf3843a3 /src/main/java/org/zwobble/couscous/util | |
| parent | 6f2fe3a3ce471e658030f4c9fcee3b8468160f6e (diff) | |
Use eagerMap instead of Lists.transform
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; |
