summaryrefslogtreecommitdiff
path: root/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java8
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/docx/NotesXmlReader.java5
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java8
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java5
4 files changed, 9 insertions, 17 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java b/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java
index bf7321e..2770984 100644
--- a/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java
+++ b/src/main/java/org/zwobble/mammoth/internal/docx/BodyXmlReader.java
@@ -17,7 +17,6 @@ import java.util.function.Function;
import static com.google.common.collect.Iterables.filter;
import static org.zwobble.mammoth.internal.docx.ReadResult.EMPTY_SUCCESS;
import static org.zwobble.mammoth.internal.docx.ReadResult.success;
-import static org.zwobble.mammoth.internal.util.MammothIterables.lazyMap;
import static org.zwobble.mammoth.internal.util.MammothLists.list;
import static org.zwobble.mammoth.internal.util.MammothStrings.trimLeft;
@@ -172,10 +171,7 @@ public class BodyXmlReader {
}
public ReadResult readElements(Iterable<XmlNode> nodes) {
- return ReadResult.flatten(
- lazyMap(
- filter(nodes, XmlElement.class),
- this::readElement));
+ return ReadResult.flatMap(filter(nodes, XmlElement.class), this::readElement);
}
private ReadResult readParagraph(XmlElement element) {
@@ -286,7 +282,7 @@ public class BodyXmlReader {
}
private ReadResult readBlips(XmlElementList blips, Optional<String> altText) {
- return ReadResult.flatten(lazyMap(blips, blip -> readBlip(blip, altText)));
+ return ReadResult.flatMap(blips, blip -> readBlip(blip, altText));
}
private ReadResult readBlip(XmlElement blip, Optional<String> altText) {
diff --git a/src/main/java/org/zwobble/mammoth/internal/docx/NotesXmlReader.java b/src/main/java/org/zwobble/mammoth/internal/docx/NotesXmlReader.java
index 9772563..235535e 100644
--- a/src/main/java/org/zwobble/mammoth/internal/docx/NotesXmlReader.java
+++ b/src/main/java/org/zwobble/mammoth/internal/docx/NotesXmlReader.java
@@ -1,14 +1,13 @@
package org.zwobble.mammoth.internal.docx;
+import org.zwobble.mammoth.internal.documents.Note;
import org.zwobble.mammoth.internal.documents.NoteType;
import org.zwobble.mammoth.internal.results.InternalResult;
-import org.zwobble.mammoth.internal.documents.Note;
import org.zwobble.mammoth.internal.xml.XmlElement;
import java.util.List;
import static com.google.common.collect.Iterables.filter;
-import static org.zwobble.mammoth.internal.util.MammothIterables.lazyMap;
public class NotesXmlReader {
public static NotesXmlReader footnote(BodyXmlReader bodyReader) {
@@ -31,7 +30,7 @@ public class NotesXmlReader {
public InternalResult<List<Note>> readElement(XmlElement element) {
Iterable<XmlElement> elements = filter(element.findChildren("w:" + tagName), this::isNoteElement);
- return InternalResult.flatten(lazyMap(elements, this::readNoteElement));
+ return InternalResult.flatMap(elements, this::readNoteElement);
}
private boolean isNoteElement(XmlElement element) {
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 1045054..d61f323 100644
--- a/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java
+++ b/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java
@@ -10,15 +10,13 @@ import java.util.function.Function;
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;
+import static org.zwobble.mammoth.internal.util.MammothLists.*;
public class ReadResult {
public static final ReadResult EMPTY_SUCCESS = success(list());
- public static ReadResult flatten(Iterable<ReadResult> results) {
- results = toList(results);
+ public static <T> ReadResult flatMap(Iterable<T> iterable, Function<T, ReadResult> function) {
+ List<ReadResult> results = eagerMap(iterable, function);
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 650446f..445d684 100644
--- a/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java
+++ b/src/main/java/org/zwobble/mammoth/internal/results/InternalResult.java
@@ -14,11 +14,10 @@ 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>> flatten(Iterable<InternalResult<T>> results) {
- results = toList(results);
+ public static <T, R> InternalResult<List<R>> flatMap(Iterable<T> iterable, Function<T, InternalResult<R>> function) {
+ List<InternalResult<R>> results = eagerMap(iterable, function);
return new InternalResult<>(
eagerMap(results, result -> result.value),
lazyFlatMap(results, result -> result.warnings));