首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Go中的AntLR4 :无效类型断言:侦听器

Go中的AntLR4 :无效类型断言:侦听器
EN

Stack Overflow用户
提问于 2018-11-01 11:44:24
回答 1查看 397关注 0票数 0

我从Antlr4语法中为Go语言生成了Parser。

语法在这里:https://raw.githubusercontent.com/antlr/grammars-v4/master/solidity/Solidity.g4

我生成解析器如下: java -jar $PWD/antlr-4.7.1- -Dlanguage=Go -o解析器语法/Solidity.g4

生成的solidity_parser.go文件在listener.(SolidityListener)显示的任何地方都有以下错误:

无效类型断言:侦听器.(SolidityListener)(左侧为非接口类型antlr.ParseTreeListener )

代码片段:func (s *SourceUnitContext) EnterRule(listener antlr.ParseTreeListener) { if listenerT, ok := listener.(SolidityListener); ok { // <-- here is the error listenerT.EnterSourceUnit(s) } }

有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-02 14:59:41

我也遇到了同样的问题。原因是go找不到接口定义,只要运行go get github.com/antlr/antlr4/runtime/Go/antlr就可以解决问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53100633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档