import "golang.org/x/tools/internal/gopathwalk"
Package gopathwalk is like filepath.Walk but specialized for finding Go packages, particularly in $GOPATH and $GOROOT.
Walk walks Go source directories ($GOROOT, $GOPATH, etc) to find packages. For each package found, add will be called (concurrently) with the absolute paths of the containing source directory and the package directory. add will be called concurrently.
func WalkSkip(roots []Root, add func(root Root, dir string), skip func(root Root, dir string) bool, opts Options)
WalkSkip walks Go source directories ($GOROOT, $GOPATH, etc) to find packages. For each package found, add will be called (concurrently) with the absolute paths of the containing source directory and the package directory. For each directory that will be scanned, skip will be called (concurrently) with the absolute paths of the containing source directory and the directory. If skip returns false on a directory it will be processed. add will be called concurrently. skip will be called concurrently.
type Options struct { // If Logf is non-nil, debug logging is enabled through this function. Logf func(format string, args ...interface{}) // Search module caches. Also disables legacy goimports ignore rules. ModulesEnabled bool }
Options controls the behavior of a Walk call.
A Root is a starting point for a Walk.
RootType indicates the type of a Root.
const ( RootUnknown RootType = iota RootGOROOT RootGOPATH RootCurrentModule RootModuleCache RootOther )
Package gopathwalk imports 10 packages (graph) and is imported by 3 packages. Updated 2021-01-15. Refresh now. Tools for package owners.