From c264e80c9d01289398d67b31307bc4d7eca27739 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 4 Jun 2016 15:51:41 +0100 Subject: Add support for reading table cells spanning multiple rows --- .../org/zwobble/mammoth/internal/docx/ReadResult.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java') 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 fa38338..beff7f7 100644 --- a/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java +++ b/src/main/java/org/zwobble/mammoth/internal/docx/ReadResult.java @@ -42,11 +42,15 @@ public class ReadResult { } public static ReadResult emptyWithWarning(String warning) { - return new ReadResult(list(), list(), list(warning)); + return withWarning(list(), warning); } public static ReadResult withWarning(DocumentElement element, String warning) { - return new ReadResult(list(element), list(), list(warning)); + return withWarning(list(element), warning); + } + + public static ReadResult withWarning(List elements, String warning) { + return new ReadResult(elements, list(), list(warning)); } private final List elements; @@ -66,6 +70,14 @@ public class ReadResult { warnings); } + public ReadResult flatMap(Function, ReadResult> function) { + ReadResult result = function.apply(elements); + return new ReadResult( + result.elements, + eagerConcat(extra, result.extra), + lazyConcat(warnings, result.warnings)); + } + public ReadResult toExtra() { return new ReadResult(list(), eagerConcat(extra, elements), warnings); } -- cgit v1.2.3