-2

我已经编写了一个库及其具有私有结构的接口实现。在 godoc 中,没有显示结构有界函数。我认为这是因为未公开的结构。但是我的功能是通过界面公开的。有什么方法可以为它创建好的 go doc 吗?还是我应该在接口减速部分解释函数的行为?

我添加了我编写的包的简单版本。是我编写好的文档所需要的真正的 Go 库。

package printer

import "fmt"

// Printer is the interface to Print anything
type Printer interface {
    // Print is a wrapper of "fmt.Println"
    Print(string)
}

type printer struct {
    prefix string
}

// Print prints the sent string with prefix
func (p *printer) Print(s string) {
    fmt.Println(p.prefix,s)
}

// NewPrinter returns a Printer with sent prefix
func NewPrinter(prefix string) Printer{
    return &printer{
        prefix: prefix,
    }
}
4

1 回答 1

1

如果您必须记录私有结构的方法,请在返回它的函数上方执行。一般来说,您还应该考虑在接口方法标题上方留下好的评论。Go 不会显示用户(直接)无法访问的内容的文档,并且不够聪明,无法知道您可以通过界面访问它。

于 2021-05-07T14:27:48.583 回答