我正在尝试用BNF转换器编写一个解析器。我使用的语法允许像a ::= true和b ::= false这样的东西。因此,我试图创建一个令牌来完成这一任务。到目前为止,这就是我所拥有的:
token BVAL ("true"|"false");我希望像这样使用它:
Exp ::= BVAL "||" BVAL当我尝试运行BNFC时,会得到以下错误:
user error (syntax error at line 1 before true | false ))发布于 2016-03-20 04:54:19
根据BNFC参考手册,例如,在token规则中编写字符序列的方式是{"true"}而不是"true"。(见第5页第5.1节“token规则”)
https://stackoverflow.com/questions/36110283
复制相似问题