var doc … var Analyzer … func run(pass *analysis.Pass) (interface{ … } func simplifyLiteral(pass *analysis.Pass, typ reflect.Value, astType, x ast.Expr) { … } func createDiagnostic(pass *analysis.Pass, start, end token.Pos, typ string) { … } // match reports whether pattern matches val, // recording wildcard submatches in m. // If m == nil, match checks whether pattern == val. // from https://github.com/golang/go/blob/26154f31ad6c801d8bad5ef58df1e9263c6beec7/src/cmd/gofmt/rewrite.go#L160 func match(pattern, val reflect.Value) bool { … } var identType … var objectPtrType … var positionType … var callExprType …