Class TemplateParser
- java.lang.Object
-
- org.openstreetmap.josm.tools.template_engine.TemplateParser
-
public class TemplateParser extends Object
Template parser.
-
-
Field Summary
Fields Modifier and Type Field Description private static Collection<Tokenizer.TokenType>
CONDITION_WITH_APOSTROPHES_END_TOKENS
private static Collection<Tokenizer.TokenType>
EXPRESSION_END_TOKENS
private Tokenizer
tokenizer
-
Constructor Summary
Constructors Constructor Description TemplateParser(String template)
Constructs a newTemplateParser
.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private Tokenizer.Token
check(Tokenizer.TokenType expectedToken)
TemplateEntry
parse()
Parse the template.private TemplateEntry
parseCondition()
private TemplateEntry
parseContextSwitch()
private TemplateEntry
parseExpression(Collection<Tokenizer.TokenType> endTokens)
private TemplateEntry
parseVariable()
private void
skipWhitespace()
-
-
-
Field Detail
-
EXPRESSION_END_TOKENS
private static final Collection<Tokenizer.TokenType> EXPRESSION_END_TOKENS
-
CONDITION_WITH_APOSTROPHES_END_TOKENS
private static final Collection<Tokenizer.TokenType> CONDITION_WITH_APOSTROPHES_END_TOKENS
-
-
Constructor Detail
-
TemplateParser
public TemplateParser(String template)
Constructs a newTemplateParser
.- Parameters:
template
- template string to parse
-
-
Method Detail
-
check
private Tokenizer.Token check(Tokenizer.TokenType expectedToken) throws ParseError
- Throws:
ParseError
-
parse
public TemplateEntry parse() throws ParseError
Parse the template.- Returns:
- the resulting template entry
- Throws:
ParseError
- if the template cannot be parsed
-
parseExpression
private TemplateEntry parseExpression(Collection<Tokenizer.TokenType> endTokens) throws ParseError
- Throws:
ParseError
-
parseVariable
private TemplateEntry parseVariable() throws ParseError
- Throws:
ParseError
-
skipWhitespace
private void skipWhitespace() throws ParseError
- Throws:
ParseError
-
parseCondition
private TemplateEntry parseCondition() throws ParseError
- Throws:
ParseError
-
parseContextSwitch
private TemplateEntry parseContextSwitch() throws ParseError
- Throws:
ParseError
-
-