Documentation ¶
Overview ¶
Package gopathwalk is like filepath.Walk but specialized for finding Go packages, particularly in $GOPATH and $GOROOT.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Walk ¶
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 ¶
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.
Types ¶
type Options ¶
type Options struct { Debug bool // Enable debug logging ModulesEnabled bool // Search module caches. Also disables legacy goimports ignore rules. }
Options controls the behavior of a Walk call.
type Root ¶
A Root is a starting point for a Walk.
func SrcDirsRoots ¶
SrcDirsRoots returns the roots from build.Default.SrcDirs(). Not modules-compatible.