У меня есть следующая грамматикаКак вставить скобки в antlr4?
query
: unquoted_str+
| '(' query ')'
;
unquoted_str
: UNQUOTED_STR
;
UNQUOTED_STR
: [A-Za-z_][A-Za-z0-9_-]*
;
WS
: [ \t\r\n]+ -> skip
;
Я хочу, чтобы иметь возможность выполнить следующий запрос:
abc (def (hij))
Но я получаю сообщение об ошибке:
line 1:4 extraneous input '(' expecting {<EOF>, UNQUOTED_STR}
line 1:8 extraneous input ')' expecting {<EOF>, UNQUOTED_STR}
попытались исправить вопрос, добавив EOF в разные места, но безрезультатно. Любая помощь будет большой.
Это было, спасибо! Просто изменил запрос на следующий: query: (unquoted_str | '(' query ')') +; – whisperstream