// FromToolchain returns the Go version for the named toolchain, // derived from the name itself (not by running the toolchain). // A toolchain is named "goVERSION". // A suffix after the VERSION introduced by a -, space, or tab is removed. // Examples: // // FromToolchain("go1.2.3") == "1.2.3" // FromToolchain("go1.2.3-bigcorp") == "1.2.3" // FromToolchain("invalid") == "" func FromToolchain(name string) string { … } func maybeToolchainVersion(name string) string { … } // ToolchainMax returns the maximum of x and y interpreted as toolchain names, // compared using Compare(FromToolchain(x), FromToolchain(y)). // If x and y compare equal, Max returns x. func ToolchainMax(x, y string) string { … } var Startup … type TooNewError … func (e *TooNewError) Error() string { … } var ErrTooNew … func (e *TooNewError) Is(err error) bool { … } type Switcher …