|  | // Copyright 2014 The Go Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style | 
|  | // license that can be found in the LICENSE file. | 
|  |  | 
|  | // The godex command prints (dumps) exported information of packages | 
|  | // or selected package objects. | 
|  | // | 
|  | // In contrast to godoc, godex extracts this information from compiled | 
|  | // object files. Hence the exported data is truly what a compiler will | 
|  | // see, at the cost of missing commentary. | 
|  | // | 
|  | // Usage: godex [flags] {path[.name]} | 
|  | // | 
|  | // Each argument must be a (possibly partial) package path, optionally | 
|  | // followed by a dot and the name of a package object: | 
|  | // | 
|  | //	godex math | 
|  | //	godex math.Sin | 
|  | //	godex math.Sin fmt.Printf | 
|  | //	godex go/types | 
|  | // | 
|  | // godex automatically tries all possible package path prefixes if only a | 
|  | // partial package path is given. For instance, for the path "go/types", | 
|  | // godex prepends "golang.org/x/tools". | 
|  | // | 
|  | // The prefixes are computed by searching the directories specified by | 
|  | // the GOROOT and GOPATH environment variables (and by excluding the | 
|  | // build OS- and architecture-specific directory names from the path). | 
|  | // The search order is depth-first and alphabetic; for a partial path | 
|  | // "foo", a package "a/foo" is found before "b/foo". | 
|  | // | 
|  | // Absolute and relative paths may be provided, which disable automatic | 
|  | // prefix generation: | 
|  | // | 
|  | //	godex $GOROOT/pkg/darwin_amd64/sort | 
|  | //	godex ./sort | 
|  | // | 
|  | // All but the last path element may contain dots; a dot in the last path | 
|  | // element separates the package path from the package object name. If the | 
|  | // last path element contains a dot, terminate the argument with another | 
|  | // dot (indicating an empty object name). For instance, the path for a | 
|  | // package foo.bar would be specified as in: | 
|  | // | 
|  | //	godex foo.bar. | 
|  | // | 
|  | // The flags are: | 
|  | // | 
|  | //	-s="" | 
|  | //		only consider packages from src, where src is one of the supported compilers | 
|  | //	-v=false | 
|  | //		verbose mode | 
|  | // | 
|  | // The following sources (-s arguments) are supported: | 
|  | // | 
|  | //	gc | 
|  | //		gc-generated object files | 
|  | //	gccgo | 
|  | //		gccgo-generated object files | 
|  | //	gccgo-new | 
|  | //		gccgo-generated object files using a condensed format (experimental) | 
|  | //	source | 
|  | //		(uncompiled) source code (not yet implemented) | 
|  | // | 
|  | // If no -s argument is provided, godex will try to find a matching source. | 
|  | package main // import "golang.org/x/tools/cmd/godex" | 
|  |  | 
|  | // BUG(gri): support for -s=source is not yet implemented | 
|  | // BUG(gri): gccgo-importing appears to have occasional problems stalling godex; try -s=gc as work-around |