mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/doc: suppress symbols for commands when showing package docs
Change the default behavior when showing the package docs for a command to elide the symbols. This makes go doc somecommand show the top-level package docs only and hide the symbols, which are probably irrelevant to the user. This has no effect on explicit requests for internals, such as go doc somecommand.sometype The new -cmd flag restores the old behavior. Fixes #10733. Change-Id: I4d363081fe7dabf76ec8e5315770ac3609592f80 Reviewed-on: https://go-review.googlesource.com/11953 Reviewed-by: Russ Cox <rsc@golang.org>
This commit is contained in:
parent
1b74c71da5
commit
91976aa676
4 changed files with 45 additions and 4 deletions
|
|
@ -200,11 +200,19 @@ func (pkg *Package) oneLineTypeDecl(spec *ast.TypeSpec) {
|
|||
// packageDoc prints the docs for the package (package doc plus one-liners of the rest).
|
||||
func (pkg *Package) packageDoc() {
|
||||
defer pkg.flush()
|
||||
pkg.packageClause(false)
|
||||
if pkg.showInternals() {
|
||||
pkg.packageClause(false)
|
||||
}
|
||||
|
||||
doc.ToText(&pkg.buf, pkg.doc.Doc, "", "\t", 80)
|
||||
pkg.newlines(2)
|
||||
pkg.newlines(1)
|
||||
|
||||
if !pkg.showInternals() {
|
||||
// Show only package docs for commands.
|
||||
return
|
||||
}
|
||||
|
||||
pkg.newlines(1)
|
||||
pkg.valueSummary(pkg.doc.Consts)
|
||||
pkg.valueSummary(pkg.doc.Vars)
|
||||
pkg.funcSummary(pkg.doc.Funcs)
|
||||
|
|
@ -212,6 +220,14 @@ func (pkg *Package) packageDoc() {
|
|||
pkg.bugs()
|
||||
}
|
||||
|
||||
// showInternals reports whether we should show the internals
|
||||
// of a package as opposed to just the package docs.
|
||||
// Used to decide whether to suppress internals for commands.
|
||||
// Called only by Package.packageDoc.
|
||||
func (pkg *Package) showInternals() bool {
|
||||
return pkg.pkg.Name != "main" || showCmd
|
||||
}
|
||||
|
||||
// packageClause prints the package clause.
|
||||
// The argument boolean, if true, suppresses the output if the
|
||||
// user's argument is identical to the actual package path or
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue