小编典典

查找返回特定类型的函数

go

也许这是一个愚蠢的问题,但是有没有办法找到所有返回特定类型的函数(在标准库或GOPATH中)?

例如,有许多函数使用io.Writer作为参数。现在,我想知道如何创建io.Writer,并且有很多方法可以做到这一点。但是,如何能轻松地找到所有方法而又无需猜测软件包并仔细查看所有方法以找到返回io.Writer(或我追随的其他任何类型)的方法?

编辑:
我应该扩展我的问题,以查找实现特定接口的类型。坚持使用io.Writer示例(当然,这对于原始问题是一个糟糕的示例),最好有一种方法来找到实现Writer接口的任何类型,因为这些类型对于需要take的函数是有效的参数。
io.Writer,从而在类型为接口时回答原始问题。


阅读 236

收藏
2020-07-02

共1个答案

小编典典

在我的日子编码,我需要找到函数返回亲自罕见Int16error(FUNC可以转到返回几个值,你懂的)

对于问题的第二部分,存在一个implements由Dominik Honnef编写的精彩cmd ,go get honnef.co/go/implements 在发现满足条件的类型之后,您可以假定类型的构造函数(如func NewTheType() TheType)将在源代码和文档中的TheType声明之后。这是行之有效的实践。

2020-07-02