From c1398251e1946f2449a920642a7304b570838378 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Thu, 24 Nov 2016 21:30:05 +0000 Subject: Extract and parseIdentifier and use to parse tag names --- .../org/zwobble/mammoth/internal/styles/parsing/HtmlPathParser.java | 5 +++-- .../org/zwobble/mammoth/internal/styles/parsing/TokenParser.java | 6 +++++- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/HtmlPathParser.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/HtmlPathParser.java index c9609d3..2163829 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/HtmlPathParser.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/HtmlPathParser.java @@ -10,6 +10,7 @@ import java.util.List; import java.util.Map; import java.util.Optional; +import static org.zwobble.mammoth.internal.styles.parsing.TokenParser.parseIdentifier; import static org.zwobble.mammoth.internal.util.Maps.map; public class HtmlPathParser { @@ -51,9 +52,9 @@ public class HtmlPathParser { private static List parseTagNames(TokenIterator tokens) { List tagNames = new ArrayList<>(); - tagNames.add(tokens.nextValue(TokenType.IDENTIFIER)); + tagNames.add(parseIdentifier(tokens)); while (tokens.trySkip(TokenType.SYMBOL, "|")) { - tagNames.add(tokens.nextValue(TokenType.IDENTIFIER)); + tagNames.add(parseIdentifier(tokens)); } return tagNames; } diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenParser.java b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenParser.java index 01a1b21..1131da5 100644 --- a/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenParser.java +++ b/src/main/java/org/zwobble/mammoth/internal/styles/parsing/TokenParser.java @@ -5,12 +5,16 @@ import java.util.Optional; public class TokenParser { public static Optional parseClassName(TokenIterator tokens) { if (tokens.trySkip(TokenType.SYMBOL, ".")) { - return Optional.of(EscapeSequences.decode(tokens.nextValue(TokenType.IDENTIFIER))); + return Optional.of(parseIdentifier(tokens)); } else { return Optional.empty(); } } + public static String parseIdentifier(TokenIterator tokens) { + return EscapeSequences.decode(tokens.nextValue(TokenType.IDENTIFIER)); + } + public static String parseString(TokenIterator tokens) { String value = tokens.nextValue(TokenType.STRING); return EscapeSequences.decode(value.substring(1, value.length() - 1)); -- cgit v1.2.3