aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/styles/parsing/ListVar.java24
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingParser.java6
2 files changed, 13 insertions, 17 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/ListVar.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/ListVar.java
index 74b3dbc..0404a3a 100644
--- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/ListVar.java
+++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/ListVar.java
@@ -1,34 +1,30 @@
package org.zwobble.mammoth.internal.styles.parsing;
-import com.google.common.collect.ImmutableList;
import org.parboiled.support.Var;
+import java.util.ArrayList;
import java.util.List;
-import static org.zwobble.mammoth.internal.util.MammothLists.list;
-
-class ListVar<T> extends Var<ImmutableList.Builder<T>> {
+class ListVar<T> extends Var<List<T>> {
boolean append(Var<T> element) {
return append(element.get());
}
boolean append(T element) {
- if (get() == null) {
- set(ImmutableList.builder());
- }
- return set(get().add(element));
+ get().add(element);
+ return set(get());
}
- public List<T> build() {
- if (get() == null) {
- return list();
- } else {
- return get().build();
+ @Override
+ public List<T> get() {
+ if (isNotSet()) {
+ set(new ArrayList<T>());
}
+ return super.get();
}
public boolean isEmpty() {
- return get() == null;
+ return get().isEmpty();
}
}
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingParser.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingParser.java
index 4f1871b..a21df44 100644
--- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingParser.java
+++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/StyleMappingParser.java
@@ -135,7 +135,7 @@ public class StyleMappingParser extends BaseParser<StyleMapBuilder> {
public Rule HtmlPath(Var<HtmlPath> htmlPath) {
ListVar<HtmlPathElement> elements = new ListVar<>();
- return Sequence(Optional(HtmlPathElements(elements)), htmlPath.set(new HtmlPath(elements.build())));
+ return Sequence(Optional(HtmlPathElements(elements)), htmlPath.set(new HtmlPath(elements.get())));
}
Rule HtmlPathElements(ListVar<HtmlPathElement> elements) {
@@ -155,8 +155,8 @@ public class StyleMappingParser extends BaseParser<StyleMapBuilder> {
ClassNames(classNames),
Fresh(fresh),
element.set(new HtmlPathElement(
- tagNames.build(),
- classNames.isEmpty() ? map() : map("class", String.join(" ", classNames.build())),
+ tagNames.get(),
+ classNames.isEmpty() ? map() : map("class", String.join(" ", classNames.get())),
!fresh.get())));
}