我有一个私有结构(实际上不止一个,我为这个例子做了一点简化),我有一个公共函数,它满足一个公共接口。这个结构是通过工厂方法(NewX 风格)创建的:
package godocprivate
type PublicInterface interface {
PublicFunction()
}
type privatestruct struct {
}
func NewPublic() *privatestruct {
ps := &privatestruct{}
return ps
}
// PublicFunction does something to be documented
func (self *privatestruct) PublicFunction() {
}
我不能让工厂方法返回公共接口,因为在我的项目中,返回值还有其他接口需要满足。
我确实想通过 godoc 记录 PublicFunction(),但因为它位于私有结构上,所以它不会显示:
有什么方法、技巧、解决方法等让 privatestruct.PublicFunction() 在 Godoc 中可见?
我的实际用例更加严重:我确实有不止一个私有结构。它们都满足 PublicInterface,但是它们各自的 PublicFunction 实现的内部工作方式不同,因此它们的文档是否也需要不同......