go/doc

Guided tour · Go Tooling · pkg.go.dev →

Extract documentation from a parsed package: exported decls, doc comments, examples. Powers `go doc` and pkg.go.dev.

Usage

NewFromFiles

fset := token.NewFileSet()
pkgs, _ := parser.ParseDir(fset, ".", nil, parser.ParseComments)
for _, pkg := range pkgs {
    d, _ := doc.NewFromFiles(fset, filesOf(pkg), "example.com/mypkg")
    for _, f := range d.Funcs {
        fmt.Println(f.Name, "-", f.Doc)
    }
}