This is my grammer
Why ‘{{ }}’ will match Token (Text) instead of (OpenTag, CloseTag)
@top Program { expression* }
expression {
Text |
OpenTag |
CloseTag
}
@tokens {
Text { char+ }
OpenTag { "{{" }
CloseTag { "}}" }
whitespace { std.whitespace++ }
char { $[\u{20}-\u{10ffff}] }
@precedence { OpenTag, CloseTag, Text }
}