我有一个包含名为 eval 和 round 的函数名称的语法,这些已经是 python 中的函数,当我尝试使用以下方法生成侦听器时:
antlr4 -listener -lib /src/grammar -Dlanguage=Python3 -o /gen -no-visitor /src/grammar/Grammar.g4
我得到以下信息:
错误(134):Grammar.g4:138:0:符号轮与目标语言中生成的代码或运行时错误(134):Grammar.g4:174:0:符号评估与目标语言中生成的代码或运行时错误冲突( 134): Grammar.g4:62:3: symbol eval 与在目标语言或运行时生成的代码冲突 (134): Grammar.g4:134:3: symbol round 与在目标语言或运行时生成的代码冲突
我不能简单地将 eval/round 更改为不同的名称,因为我正在编写不同 dls 的克隆。是否可以在不更改我的语法语言语法的情况下创建命名空间或以另一种方式解决此问题?