diff options
| author | Michael Williamson <mike@zwobble.org> | 2025-08-03 09:36:04 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2025-08-03 09:36:04 +0100 |
| commit | 2b5635c1425f7a4e31d2d0aedb892f2d8d033f92 (patch) | |
| tree | 1dad2042a89092872c4b4c4a01a0250cbd9dcac2 /src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java | |
| parent | 7f6f1e5cc669ddaf09b7800daacc7bd06037e4c9 (diff) | |
Remove type argument from HasChildren
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java | 35 |
1 files changed, 18 insertions, 17 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java b/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java index 6186cdb..dbbe3c3 100644 --- a/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java +++ b/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java @@ -81,22 +81,6 @@ public class DocumentToHtml { this.comments = Maps.toMapWithKey(comments, Comment::getCommentId); } - private List<HtmlNode> convertToHtml(Document document, Context context) { - List<HtmlNode> mainBody = convertChildrenToHtml(document, context); - // TODO: can you have note references inside a note? - List<Note> notes = findNotes(document, noteReferences); - - List<HtmlNode> noteNodes = notes.isEmpty() - ? list() - : list(Html.element("ol", eagerMap(notes, note -> convertToHtml(note, context)))); - - List<HtmlNode> commentNodes = referencedComments.isEmpty() - ? list() - : list(Html.element("dl", eagerFlatMap(referencedComments, comment -> convertToHtml(comment, context)))); - - return eagerConcat(mainBody, noteNodes, commentNodes); - } - private HtmlNode convertToHtml(Note note, Context context) { String id = generateNoteHtmlId(note.getNoteType(), note.getId()); String referenceId = generateNoteRefHtmlId(note.getNoteType(), note.getId()); @@ -135,12 +119,29 @@ public class DocumentToHtml { ); } - private <T> List<HtmlNode> convertChildrenToHtml(HasChildren<T> element, Context context) { + private <T> List<HtmlNode> convertChildrenToHtml(HasChildren element, Context context) { return convertToHtml(element.getChildren(), context); } private class ElementConverterVisitor implements DocumentElementVisitor<List<HtmlNode>, Context> { @Override + public List<HtmlNode> visit(Document document, Context context) { + List<HtmlNode> mainBody = convertChildrenToHtml(document, context); + // TODO: can you have note references inside a note? + List<Note> notes = findNotes(document, noteReferences); + + List<HtmlNode> noteNodes = notes.isEmpty() + ? list() + : list(Html.element("ol", eagerMap(notes, note -> convertToHtml(note, context)))); + + List<HtmlNode> commentNodes = referencedComments.isEmpty() + ? list() + : list(Html.element("dl", eagerFlatMap(referencedComments, comment -> convertToHtml(comment, context)))); + + return eagerConcat(mainBody, noteNodes, commentNodes); + } + + @Override public List<HtmlNode> visit(Paragraph paragraph, Context context) { Supplier<List<HtmlNode>> children = () -> { List<HtmlNode> content = convertChildrenToHtml(paragraph, context); |
