I'm trying to create a custom domain specific language for creating HTML templates using java expressions statements.
For instance it should parse tags combined with java statements:
<div>
if (someValue == true) {
<span>"someValue was true"</span>
}
</div>
Now I know how to write such a parser. However it would be very much simpler if I could just use the standard Java Parser for the expressions, so that I do not have to reimplement a part of the Java Parser. What I'm trying to achieve could look like:
IfStatementNode parseIfStatement() {
scanner.expect("if");
scanner.expect("(");
JavaExpression expression = scanner.parseJavaExpression(); // <--- how to implement this?
scanner.expect(")");
return new IfStatementNode(expression);
}
How can this be done so that scanner.parseJavaExpression
parses any Java Expression?