From 96946693f624f00170cd5b29476c013f1e4798e4 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 28 Aug 2016 23:19:56 +0100 Subject: Extract interface from HtmlPath --- .../mammoth/internal/styles/HtmlPathElements.java | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/main/java/org/zwobble/mammoth/internal/styles/HtmlPathElements.java (limited to 'src/main/java/org/zwobble/mammoth/internal/styles/HtmlPathElements.java') diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/HtmlPathElements.java b/src/main/java/org/zwobble/mammoth/internal/styles/HtmlPathElements.java new file mode 100644 index 0000000..45bd75a --- /dev/null +++ b/src/main/java/org/zwobble/mammoth/internal/styles/HtmlPathElements.java @@ -0,0 +1,24 @@ +package org.zwobble.mammoth.internal.styles; + +import org.zwobble.mammoth.internal.html.HtmlNode; + +import java.util.List; +import java.util.function.Supplier; + +import static org.zwobble.mammoth.internal.util.Lists.reversed; + +public class HtmlPathElements implements HtmlPath { + private final List elements; + + public HtmlPathElements(List elements) { + this.elements = elements; + } + + @Override + public Supplier> wrap(Supplier> generateNodes) { + for (HtmlPathElement element : reversed(elements)) { + generateNodes = element.wrap(generateNodes); + } + return generateNodes; + } +} -- cgit v1.2.3