ForEachPackage calls the found function with the package path of each Go package it finds in any source directory of the specified build context (e.g. $GOROOT or an element of $GOPATH). All package paths are canonical, and thus may contain "/vendor/".

If the package directory exists but could not be read, the second argument to the found function provides the error.

All I/O is done via the build.Context file system interface, which must be concurrency-safe.

ForEachPackage is referenced in 0 repositories