type Analyzer … func (a *Analyzer) String() string { … } type Pass … type PackageFact … type ObjectFact … // Reportf is a helper function that reports a Diagnostic using the // specified position and formatted error message. func (pass *Pass) Reportf(pos token.Pos, format string, args ...interface{ … } type Range … // ReportRangef is a helper function that reports a Diagnostic using the // range provided. ast.Node values can be passed in as the range because // they satisfy the Range interface. func (pass *Pass) ReportRangef(rng Range, format string, args ...interface{ … } func (pass *Pass) String() string { … } type Fact … type Module …