gotools/go/packages/golist.go

var (
	debug
	_
)

type goTooOldError

type responseDeduper

func newDeduper() *responseDeduper {}

// addAll fills in r with a DriverResponse.
func (r *responseDeduper) addAll(dr *DriverResponse) {}

func (r *responseDeduper) addPackage(p *Package) {}

func (r *responseDeduper) addRoot(id string) {}

type golistState

// getEnv returns Go environment variables. Only specific variables are
// populated -- computing all of them is slow.
func (state *golistState) getEnv() (map[string]string, error) {}

// mustGetEnv is a convenience function that can be used if getEnv has already succeeded.
func (state *golistState) mustGetEnv() map[string]string {}

// goListDriver uses the go list command to interpret the patterns and produce
// the build system package structure.
// See driver for more details.
func goListDriver(cfg *Config, patterns ...string) (_ *DriverResponse, err error) {}

func (state *golistState) runContainsQueries(response *responseDeduper, queries []string) error {}

// adhocPackage attempts to load or construct an ad-hoc package for a given
// query, if the original call to the driver produced inadequate results.
func (state *golistState) adhocPackage(pattern, query string) (*DriverResponse, error) {}

type jsonPackage

type jsonPackageError

func otherFiles(p *jsonPackage) [][]string {}

// createDriverResponse uses the "go list" command to expand the pattern
// words and return a response for the specified packages.
func (state *golistState) createDriverResponse(words ...string) (*DriverResponse, error) {}

func (state *golistState) shouldAddFilenameFromError(p *jsonPackage) bool {}

// getGoVersion returns the effective minor version of the go command.
func (state *golistState) getGoVersion() (int, error) {}

// getPkgPath finds the package path of a directory if it's relative to a root
// directory.
func (state *golistState) getPkgPath(dir string) (string, bool, error) {}

// absJoin absolutizes and flattens the lists of files.
func absJoin(dir string, fileses ...[]string) (res []string) {}

func jsonFlag(cfg *Config, goVersion int) string {}

func golistargs(cfg *Config, words []string, goVersion int) []string {}

// cfgInvocation returns an Invocation that reflects cfg's settings.
func (state *golistState) cfgInvocation() gocommand.Invocation {}

// invokeGo returns the stdout of a go command invocation.
func (state *golistState) invokeGo(verb string, args ...string) (*bytes.Buffer, error) {}

func containsGoFile(s []string) bool {}

func cmdDebugStr(cmd *exec.Cmd) string {}

// getSizesForArgs queries 'go list' for the appropriate
// Compiler and GOARCH arguments to pass to [types.SizesFor].
func getSizesForArgs(ctx context.Context, inv gocommand.Invocation, gocmdRunner *gocommand.Runner) (string, string, error) {}