github.com/vanstinator/golangci-lint@v0.0.0-20240223191551-cc572f00d9d1/pkg/golinters/errchkjson.go (about) 1 package golinters 2 3 import ( 4 "github.com/breml/errchkjson" 5 "golang.org/x/tools/go/analysis" 6 7 "github.com/vanstinator/golangci-lint/pkg/config" 8 "github.com/vanstinator/golangci-lint/pkg/golinters/goanalysis" 9 ) 10 11 func NewErrChkJSONFuncName(cfg *config.ErrChkJSONSettings) *goanalysis.Linter { 12 a := errchkjson.NewAnalyzer() 13 14 cfgMap := map[string]map[string]any{} 15 cfgMap[a.Name] = map[string]any{ 16 "omit-safe": true, 17 } 18 if cfg != nil { 19 cfgMap[a.Name] = map[string]any{ 20 "omit-safe": !cfg.CheckErrorFreeEncoding, 21 "report-no-exported": cfg.ReportNoExported, 22 } 23 } 24 25 return goanalysis.NewLinter( 26 a.Name, 27 a.Doc, 28 []*analysis.Analyzer{a}, 29 cfgMap, 30 ).WithLoadMode(goanalysis.LoadModeTypesInfo) 31 }