package main import ( noliteral "git.frostfs.info/TrueCloudLab/linters/internal/analyzers/noliteral" "github.com/mitchellh/mapstructure" "golang.org/x/tools/go/analysis" ) var AnalyzerPlugin analyzerPlugin type analyzerPlugin struct{} // for version ci-lint < '1.5.4'. func (*analyzerPlugin) GetAnalyzers() []*analysis.Analyzer { return []*analysis.Analyzer{noliteral.LogsAnalyzer} } // for version ci-lint >= '1.5.4'. func New(conf any) ([]*analysis.Analyzer, error) { var config noliteral.Configuration if confMap, ok := conf.(map[string]any); ok { err := mapstructure.Decode(confMap, &config) if err != nil { return nil, err } noliteral.Config.TargetMethods = append(noliteral.Config.TargetMethods, config.TargetMethods...) noliteral.Config.ConstantsPackage = config.ConstantsPackage } return []*analysis.Analyzer{noliteral.LogsAnalyzer}, nil }