woodpecker/vendor/github.com/sonatard/noctx/ngfunc/report.go

30 lines
514 B
Go
Raw Normal View History

package ngfunc
import (
"fmt"
"go/token"
"go/types"
"golang.org/x/tools/go/analysis"
"golang.org/x/tools/go/ssa"
)
type Report struct {
Instruction ssa.Instruction
function *types.Func
}
func (n *Report) Pos() token.Pos {
return n.Instruction.Pos()
}
func (n *Report) Message() string {
return fmt.Sprintf("%s must not be called", n.function.FullName())
}
func report(pass *analysis.Pass, reports []*Report) {
for _, report := range reports {
pass.Reportf(report.Pos(), report.Message())
}
}