gotools/go/analysis/passes/testinggoroutine/testinggoroutine.go

var doc

var reportSubtest

func init() {}

var Analyzer

func run(pass *analysis.Pass) (interface{}

func hasBenchmarkOrTestParams(fnDecl *ast.FuncDecl) bool {}

func typeIsTestingDotTOrB(expr ast.Expr) (string, bool) {}

type asyncCall

// withinScope returns true if x.Pos() is in [scope.Pos(), scope.End()].
func withinScope(scope ast.Node, x *types.Var) bool {}

// goAsyncCall returns the extent of a call from a go fun() statement.
func goAsyncCall(info *types.Info, goStmt *ast.GoStmt, toDecl func(*types.Func) *ast.FuncDecl) *asyncCall {}

// tRunAsyncCall returns the extent of a call from a t.Run("name", fun) expression.
func tRunAsyncCall(info *types.Info, call *ast.CallExpr) *asyncCall {}

var forbidden

// forbiddenMethod decomposes a call x.m() into (x, x.m, m) where
// x is a variable, x.m is a selection, and m is the static callee m.
// Returns (nil, nil, nil) if call is not of this form.
func forbiddenMethod(info *types.Info, call *ast.CallExpr) (*types.Var, *types.Selection, *types.Func) {}

func formatMethod(sel *types.Selection, fn *types.Func) string {}