From 0310935058e7edceb1ec42ed8518fcf0b8340bed Mon Sep 17 00:00:00 2001 From: Robert Griesemer Date: Mon, 15 Aug 2011 19:05:52 -0700 Subject: [PATCH] godoc: show all top-level decls for (fake) package builtin R=r, adg CC=golang-dev https://golang.org/cl/4904045 --- src/cmd/godoc/godoc.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/cmd/godoc/godoc.go b/src/cmd/godoc/godoc.go index e3f8ad8d36..7d4bcdc0c9 100644 --- a/src/cmd/godoc/godoc.go +++ b/src/cmd/godoc/godoc.go @@ -767,6 +767,10 @@ func serveFile(w http.ResponseWriter, r *http.Request) { const fakePkgFile = "doc.go" const fakePkgName = "documentation" +// Fake relative package path for built-ins. Documentation for all globals +// (not just exported ones) will be shown for packages in this directory. +const builtinPkgPath = "builtin/" + type PageInfoMode uint const ( @@ -941,7 +945,10 @@ func (h *httpHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { relpath := r.URL.Path[len(h.pattern):] abspath := absolutePath(relpath, h.fsRoot) - mode := exportsOnly + var mode PageInfoMode + if relpath != builtinPkgPath { + mode = exportsOnly + } if r.FormValue("m") != "src" { mode |= genDoc } @@ -964,7 +971,7 @@ func (h *httpHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) { title = "Package " + info.PAst.Name.Name case info.PDoc != nil: switch { - case h.isPkg: + case info.IsPkg: title = "Package " + info.PDoc.PackageName case info.PDoc.PackageName == fakePkgName: // assume that the directory name is the command name -- 2.50.0