Error handling 忽略JAVACC中的MSGTokenError
我使用JAVACC解析一些由bnf语法定义的字符串,这些字符串的首字母是非终结符G。 我想捕捉TokenMgrError抛出的错误。 我特别想处理以下两种情况:Error handling 忽略JAVACC中的MSGTokenError,error-handling,javacc,Error Handling,Javacc,我使用JAVACC解析一些由bnf语法定义的字符串,这些字符串的首字母是非终结符G。 我想捕捉TokenMgrError抛出的错误。 我特别想处理以下两种情况: 如果输入的某个前缀满足G,但并非所有符号都从输入中读取,则将此情况视为正常,并通过调用G-()来返回找到的前缀AST.< 如果输入没有满足G的前缀,则从G()返回null 目前,我在每种情况下都得到了TokenMgrError。 我开始修改生成的文件(即,将Error改为Exception,并添加适当的try/catch/throws语
我开始修改生成的文件(即,将Error改为Exception,并添加适当的try/catch/throws语句),但我发现这很乏味。此外,自动生成JAVACC生成的修改过的文件不起作用。有没有更聪明的方法来实现这一点?您可以通过包括
<*> TOKEN : { <UNEXPECTED: ~[] > }
TOKEN:{}
作为最后的规则。这会将所有问题推到语法级别,您通常可以更轻松地处理它们。您可以添加代码示例吗?关于异常而不是错误,请参阅