diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-03-26 09:36:21 +0000 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-03-26 09:36:21 +0000 |
| commit | 2445646383faa91dded81c273c05ead2fd71e433 (patch) | |
| tree | 4304636742959c239510024b7a5dcd6f0a463491 | |
| parent | 300d110d93e9aa8ed91d060cedae47231106c31c (diff) | |
Ensure single iteration over results Iterable in concat
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java | 2 | ||||
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java b/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java index 95b886f..65cd3b0 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java @@ -12,11 +12,13 @@ import static org.zwobble.mammoth.internal.util.MammothIterables.lazyConcat; import static org.zwobble.mammoth.internal.util.MammothIterables.lazyFlatMap; import static org.zwobble.mammoth.internal.util.MammothLists.eagerFlatMap; import static org.zwobble.mammoth.internal.util.MammothLists.list; +import static org.zwobble.mammoth.internal.util.MammothLists.toList; public class ReadResult { public static final ReadResult EMPTY_SUCCESS = success(list()); public static ReadResult concat(Iterable<ReadResult> results) { + results = toList(results); return new ReadResult( eagerFlatMap(results, result -> result.elements), eagerFlatMap(results, result -> result.extra), diff --git a/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java b/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java index 35c195d..b4c3791 100644 --- a/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java +++ b/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java @@ -14,9 +14,11 @@ import static org.zwobble.mammoth.internal.util.MammothIterables.lazyConcat; import static org.zwobble.mammoth.internal.util.MammothIterables.lazyFlatMap; import static org.zwobble.mammoth.internal.util.MammothLists.eagerMap; import static org.zwobble.mammoth.internal.util.MammothLists.list; +import static org.zwobble.mammoth.internal.util.MammothLists.toList; public class InternalResult<T> { public static <T> InternalResult<List<T>> concat(Iterable<InternalResult<T>> results) { + results = toList(results); return new InternalResult<>( eagerMap(results, result -> result.value), lazyFlatMap(results, result -> result.warnings)); |
