const verbose …
func goCmd() string { … }
var contexts …
func contextName(c *build.Context) string { … }
var internalPkg …
var exitCode …
func Check(t *testing.T) { … }
func (w *Walker) export(pkg *apiPackage) { … }
func set(items []string) map[string]bool { … }
var spaceParensRx …
func featureWithoutContext(f string) string { … }
func portRemoved(feature string) bool { … }
func compareAPI(w io.Writer, features, required, exception []string) (ok bool) { … }
var aliasReplacer …
func fileFeatures(filename string, needApproval bool) []string { … }
var fset …
type Walker …
func NewWalker(context *build.Context, root string) *Walker { … }
func (w *Walker) Features() (fs []string) { … }
var parsedFileCache …
func (w *Walker) parseFile(dir, file string) (*ast.File, error) { … }
const usePkgCache …
var pkgCache …
var pkgTags …
func tagKey(dir string, context *build.Context, tags []string) string { … }
type listImports …
var listCache …
var listSem …
type semToken …
func (w *Walker) loadImports() { … }
func listEnv(c *build.Context) []string { … }
type apiPackage …
var importing …
func (w *Walker) Import(name string) (*types.Package, error) { … }
func (w *Walker) ImportFrom(fromPath, fromDir string, mode types.ImportMode) (*types.Package, error) { … }
func (w *Walker) import_(name string) (*apiPackage, error) { … }
func (w *Walker) importFrom(fromPath, fromDir string, mode types.ImportMode) (*apiPackage, error) { … }
func (w *Walker) pushScope(name string) (popFunc func()) { … }
func sortedMethodNames(typ *types.Interface) []string { … }
func (w *Walker) sortedEmbeddeds(typ *types.Interface) []string { … }
func (w *Walker) writeType(buf *bytes.Buffer, typ types.Type) { … }
func (w *Walker) writeSignature(buf *bytes.Buffer, sig *types.Signature) { … }
func (w *Walker) writeTypeParams(buf *bytes.Buffer, tparams *types.TypeParamList, withConstraints bool) { … }
func (w *Walker) writeParams(buf *bytes.Buffer, t *types.Tuple, variadic bool) { … }
func (w *Walker) typeString(typ types.Type) string { … }
func (w *Walker) signatureString(sig *types.Signature) string { … }
func (w *Walker) emitObj(obj types.Object) { … }
func (w *Walker) emitType(obj *types.TypeName) { … }
func (w *Walker) emitStructType(name string, typ *types.Struct) { … }
func (w *Walker) emitIfaceType(name string, typ *types.Interface) { … }
func (w *Walker) emitFunc(f *types.Func) { … }
func (w *Walker) emitMethod(m *types.Selection) { … }
func (w *Walker) emitf(format string, args ...any) { … }
func needApproval(filename string) bool { … }
func (w *Walker) collectDeprecated() { … }
func (w *Walker) isDeprecated(obj types.Object) bool { … }