获取go语言中函数的包名称
我需要获取Go中函数的包名。 例如,如果输入为获取go语言中函数的包名称,go,packages,Go,Packages,我需要获取Go中函数的包名。 例如,如果输入为Println,则输出必须为fmt。如果输入为StatusText,则输出必须为net/http 实现这一点的正确方法是什么?从您的评论来看,您似乎在寻找类似于godoc的命令行工具,但它不需要类似于godoc net/http StatusText的东西,而是希望能够使用doc StatusText并让它为您找到http.StatusText(可能还有其他foo.StatusText函数) Rob Pike的工具可以做到这一点,它可以查看GOPAT
Println
,则输出必须为fmt
。如果输入为StatusText
,则输出必须为net/http
实现这一点的正确方法是什么?从您的评论来看,您似乎在寻找类似于
godoc
的命令行工具,但它不需要类似于godoc net/http StatusText
的东西,而是希望能够使用doc StatusText
并让它为您找到http.StatusText
(可能还有其他foo.StatusText
函数)
Rob Pike的工具可以做到这一点,它可以查看GOPATH
中的所有包(尽管它的输出不仅仅是原始问题要求的包名)
您可以通过:go install robpike.io/cmd/doc
或者您实际上是在寻找从Go代码而不是命令行获取此信息的方法吗?如果您添加了为什么需要此功能的信息,您可能会得到更好的答案。您检查过了吗?我只需要获取函数的文档。但问题是我只知道函数名,不知道函数名它所属的包。尝试一下
godoc-qprintln | sed-n-e'/Functions/,$p'| head-n2
注意,doc工具将是即将发布的Go 1.5版本的一部分,因此在标准版本中,您将能够编写“Go doc Println”。