ANTLR4:缺少规则不会导致异常

时间:2018-10-20 04:16:33

标签: parsing antlr4

当为applicationScopeName提供有效数据时,我有以下解析器规则可以正常工作:

application_scope_declaration
    : TOKEN_APPLICATION_SCOPE applicationScopeName=namespace
    ;

namespace
    : NAMESPACE ~EOF
    ;

有效代码如下所示,因为::Name::Space是有效的名称空间:

Application Scope ::Name::Space

但这不会:

Application Scope ::Name->Space

第二个表示类型为Name的{​​{1}}命名空间。

但是,当Space无法解析时,ANTLR4在输出中放置applicationScopeName令牌,并且不会在上下文中放置异常以传递给<missing NAMESPACE>

在没有在Visitor中编写特定代码的情况下我应该怎么做才能确定这种情况?

0 个答案:

没有答案