Go-Lang IntelliJ插件为什么与Go的语法不一致?
我有点新去的,所以这可能是一个围棋的问题,而不是一个一个的IntelliJ:我刚刚建立了https://github.com/go-lang-plugin-org/go-lang-idea-plugin/从压缩文件中的IntelliJ 14Go-Lang IntelliJ插件为什么与Go的语法不一致?
我发现,编译器不一致与语法高亮。
world, err := redis.String(c.Do("GET", "message1")) if err != nil {
fmt.Println("key not found")
}
产生以下错误信息。
*调用Redis.String时没有足够的参数。
仔细看看对Redis.String的调用,它似乎需要一个接口+参数。
func String(reply interface{}, err error) (string, error) { ....
return "", fmt.Errorf("redigo: unexpected type for String, got type %T", reply)
}
就这样,我能够在IDE诱骗取出RROR消息,通过简单地增加一个“犯错” ARG到通话结束后,像这样:
world, err := redis.String(c.Do("GET", "message1"), err)
但唉!这个“修复”会让编译器不高兴......并且它会报告此消息(即使IntelliJ插件不会将其解释为错误)。
./t1.go:19:多值c.Do()的单值上下文
上为什么的IntelliJ转到插件希望有两个参数,有什么想法wheresas只GoLang想要一个参数,因为这个功能会有很大的帮助。
回答:
这不是你犯的一个错误,它只是一个问题,我们现在有一个问题,那个插件的特定部分负责照顾那样的事情。
按照my answer,请看问题1343和1222。
谢谢。
以上是 Go-Lang IntelliJ插件为什么与Go的语法不一致? 的全部内容, 来源链接: utcz.com/qa/258568.html