From 3e2786a004eddf968a5fa7d5a92dff5b1b5f7734 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Wed, 24 Feb 2016 08:16:16 +0000 Subject: Create internal package --- .../org/zwobble/mammoth/internal/html/HtmlNode.java | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 src/main/java/org/zwobble/mammoth/internal/html/HtmlNode.java (limited to 'src/main/java/org/zwobble/mammoth/internal/html/HtmlNode.java') diff --git a/src/main/java/org/zwobble/mammoth/internal/html/HtmlNode.java b/src/main/java/org/zwobble/mammoth/internal/html/HtmlNode.java new file mode 100644 index 0000000..a04b57f --- /dev/null +++ b/src/main/java/org/zwobble/mammoth/internal/html/HtmlNode.java @@ -0,0 +1,21 @@ +package org.zwobble.mammoth.internal.html; + +public interface HtmlNode { + // TODO: rename visit to accept + void visit(Visitor visitor); + T accept(Mapper visitor); + + interface Visitor { + void visit(HtmlElement element); + void visit(HtmlSelfClosingElement element); + void visit(HtmlTextNode node); + void visit(HtmlForceWrite forceWrite); + } + + interface Mapper { + T visit(HtmlElement element); + T visit(HtmlSelfClosingElement element); + T visit(HtmlTextNode node); + T visit(HtmlForceWrite forceWrite); + } +} -- cgit v1.2.3