github.com/chenfeining/golangci-lint@v1.0.2-0.20230730162517-14c6c67868df/pkg/golinters/asasalint.go (about) 1 package golinters 2 3 import ( 4 "github.com/alingse/asasalint" 5 "golang.org/x/tools/go/analysis" 6 7 "github.com/chenfeining/golangci-lint/pkg/config" 8 "github.com/chenfeining/golangci-lint/pkg/golinters/goanalysis" 9 ) 10 11 func NewAsasalint(setting *config.AsasalintSettings) *goanalysis.Linter { 12 cfg := asasalint.LinterSetting{} 13 if setting != nil { 14 cfg.Exclude = setting.Exclude 15 cfg.NoBuiltinExclusions = !setting.UseBuiltinExclusions 16 cfg.IgnoreTest = setting.IgnoreTest 17 } 18 19 a, err := asasalint.NewAnalyzer(cfg) 20 if err != nil { 21 linterLogger.Fatalf("asasalint: create analyzer: %v", err) 22 } 23 24 return goanalysis.NewLinter( 25 a.Name, 26 a.Doc, 27 []*analysis.Analyzer{a}, 28 nil, 29 ).WithLoadMode(goanalysis.LoadModeTypesInfo) 30 }