Исключение, объявленное для правила грамматики ANTLR, игнорируется - PullRequest
1 голос
/ 14 мая 2010

У меня есть анализатор дерева, который выполняет семантический анализ AST, сгенерированный моим синтаксический анализатор. У него есть правило, объявленное следующим образом:

transitionDefinition throws WorkflowStateNotFoundException: /* ... */

Это прекрасно компилируется и соответствует синтаксису правила в ANTLR Wiki но мое исключение никогда объявлено, что компилятор Java жалуется на необъявленные исключения.

. / Tool / src / main / antlr3 / org / antlr / грамматика / v3 / ANTLRv3.g показывает, что это здание дерево (но я на самом деле не уверен, если это ANTLR грамматика v2 или v3 3.2 использует):

throwsSpec
    :   'throws' id ( ',' id )* -> ^('throws' id+)
    ;

Я знаю, что могу сделать это исключением во время выполнения, но я бы хотел использовать свое исключение иерархия. Я делаю что-то не так или этот синтаксис должен работать?

1 Ответ

1 голос
/ 12 июня 2010

Похоже, это известная проблема: http://www.antlr.org/jira/browse/ANTLR-100

К сожалению, я пытаюсь сделать то же самое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...