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/documents | |
| parent | 7f6f1e5cc669ddaf09b7800daacc7bd06037e4c9 (diff) | |
Remove type argument from HasChildren
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/documents')
10 files changed, 24 insertions, 23 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Document.java b/src/main/java/org/zwobble/mammoth/internal/documents/Document.java index b1807d5..44d4db0 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/Document.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Document.java @@ -2,7 +2,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; -public class Document implements HasChildren<Document> { +public class Document implements DocumentElement, HasChildren { private final List<DocumentElement> children; private final Notes notes; private final List<Comment> comments; @@ -19,10 +19,15 @@ public class Document implements HasChildren<Document> { } @Override - public Document replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new Document(newChildren, this.notes, this.comments); } + @Override + public <T, U> T accept(DocumentElementVisitor<T, U> visitor, U context) { + return visitor.visit(this, context); + } + public Notes getNotes() { return notes; } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/DocumentElementVisitor.java b/src/main/java/org/zwobble/mammoth/internal/documents/DocumentElementVisitor.java index ea67113..de288b9 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/DocumentElementVisitor.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/DocumentElementVisitor.java @@ -1,6 +1,8 @@ package org.zwobble.mammoth.internal.documents; public interface DocumentElementVisitor<T, U> { + T visit(Document document, U context); + T visit(Paragraph paragraph, U context); T visit(Run run, U context); T visit(Text text, U context); diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/HasChildren.java b/src/main/java/org/zwobble/mammoth/internal/documents/HasChildren.java index 3b5ad4b..1d01141 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/HasChildren.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/HasChildren.java @@ -2,6 +2,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; -public interface HasChildren<T> extends HasGetChildren { - T replaceChildren(List<DocumentElement> newChildren); +public interface HasChildren { + List<DocumentElement> getChildren(); + DocumentElement replaceChildren(List<DocumentElement> newChildren); } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/HasGetChildren.java b/src/main/java/org/zwobble/mammoth/internal/documents/HasGetChildren.java deleted file mode 100644 index 18d39fc..0000000 --- a/src/main/java/org/zwobble/mammoth/internal/documents/HasGetChildren.java +++ /dev/null @@ -1,7 +0,0 @@ -package org.zwobble.mammoth.internal.documents; - -import java.util.List; - -public interface HasGetChildren { - List<DocumentElement> getChildren(); -} diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java b/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java index bf86ffe..6191986 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Hyperlink.java @@ -3,7 +3,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; import java.util.Optional; -public class Hyperlink implements DocumentElement, HasChildren<Hyperlink> { +public class Hyperlink implements DocumentElement, HasChildren { public static Hyperlink href(String href, Optional<String> targetFrame, List<DocumentElement> children) { return new Hyperlink(Optional.of(href), Optional.empty(), targetFrame, children); } @@ -42,7 +42,7 @@ public class Hyperlink implements DocumentElement, HasChildren<Hyperlink> { } @Override - public Hyperlink replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new Hyperlink(this.href, this.anchor, this.targetFrame, newChildren); } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Paragraph.java b/src/main/java/org/zwobble/mammoth/internal/documents/Paragraph.java index c9859b6..d3967c9 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/Paragraph.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Paragraph.java @@ -3,7 +3,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; import java.util.Optional; -public class Paragraph implements DocumentElement, HasChildren<Paragraph> { +public class Paragraph implements DocumentElement, HasChildren { private final Optional<Style> style; private final Optional<NumberingLevel> numbering; private final ParagraphIndent indent; @@ -39,7 +39,7 @@ public class Paragraph implements DocumentElement, HasChildren<Paragraph> { } @Override - public Paragraph replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new Paragraph(this.style, this.numbering, this.indent, newChildren); } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Run.java b/src/main/java/org/zwobble/mammoth/internal/documents/Run.java index d1de84a..6deca28 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/Run.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Run.java @@ -3,7 +3,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; import java.util.Optional; -public class Run implements DocumentElement, HasChildren<Run> { +public class Run implements DocumentElement, HasChildren { private final Optional<String> highlight; private final boolean isBold; private final boolean isItalic; @@ -81,7 +81,7 @@ public class Run implements DocumentElement, HasChildren<Run> { } @Override - public Run replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new Run( this.highlight, this.isBold, diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/Table.java b/src/main/java/org/zwobble/mammoth/internal/documents/Table.java index 6f1751a..7656a93 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/Table.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/Table.java @@ -3,7 +3,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; import java.util.Optional; -public class Table implements DocumentElement, HasChildren<Table> { +public class Table implements DocumentElement, HasChildren { private final Optional<Style> style; private final List<DocumentElement> children; @@ -22,7 +22,7 @@ public class Table implements DocumentElement, HasChildren<Table> { } @Override - public Table replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new Table(this.style, newChildren); } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/TableCell.java b/src/main/java/org/zwobble/mammoth/internal/documents/TableCell.java index 14900aa..bf3c8b5 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/TableCell.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/TableCell.java @@ -2,7 +2,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; -public class TableCell implements DocumentElement, HasChildren<TableCell> { +public class TableCell implements DocumentElement, HasChildren { private final int rowspan; private final int colspan; private final List<DocumentElement> children; @@ -27,7 +27,7 @@ public class TableCell implements DocumentElement, HasChildren<TableCell> { } @Override - public TableCell replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new TableCell(this.rowspan, this.colspan, newChildren); } diff --git a/src/main/java/org/zwobble/mammoth/internal/documents/TableRow.java b/src/main/java/org/zwobble/mammoth/internal/documents/TableRow.java index 00edc5f..6d5260f 100644 --- a/src/main/java/org/zwobble/mammoth/internal/documents/TableRow.java +++ b/src/main/java/org/zwobble/mammoth/internal/documents/TableRow.java @@ -2,7 +2,7 @@ package org.zwobble.mammoth.internal.documents; import java.util.List; -public class TableRow implements DocumentElement, HasChildren<TableRow> { +public class TableRow implements DocumentElement, HasChildren { private final List<DocumentElement> children; private final boolean isHeader; @@ -17,7 +17,7 @@ public class TableRow implements DocumentElement, HasChildren<TableRow> { } @Override - public TableRow replaceChildren(List<DocumentElement> newChildren) { + public DocumentElement replaceChildren(List<DocumentElement> newChildren) { return new TableRow(newChildren, this.isHeader); } |
