@@ -37,24 +37,29 @@ func NewExcludeRules(rules []ExcludeRule, lineCache *fsutils.LineCache, log logu
37
37
lineCache : lineCache ,
38
38
log : log ,
39
39
}
40
+ r .rules = createRules (rules , "(?i)" )
40
41
42
+ return r
43
+ }
44
+
45
+ func createRules (rules []ExcludeRule , prefix string ) []excludeRule {
46
+ parsedRules := make ([]excludeRule , 0 , len (rules ))
41
47
for _ , rule := range rules {
42
48
parsedRule := excludeRule {
43
49
linters : rule .Linters ,
44
50
}
45
51
if rule .Text != "" {
46
- parsedRule .text = regexp .MustCompile ("(?i)" + rule .Text )
52
+ parsedRule .text = regexp .MustCompile (prefix + rule .Text )
47
53
}
48
54
if rule .Source != "" {
49
- parsedRule .source = regexp .MustCompile ("(?i)" + rule .Source )
55
+ parsedRule .source = regexp .MustCompile (prefix + rule .Source )
50
56
}
51
57
if rule .Path != "" {
52
58
parsedRule .path = regexp .MustCompile (rule .Path )
53
59
}
54
- r . rules = append (r . rules , parsedRule )
60
+ parsedRules = append (parsedRules , parsedRule )
55
61
}
56
-
57
- return r
62
+ return parsedRules
58
63
}
59
64
60
65
func (p ExcludeRules ) Process (issues []result.Issue ) ([]result.Issue , error ) {
@@ -128,22 +133,7 @@ func NewExcludeRulesCaseSensitive(rules []ExcludeRule, lineCache *fsutils.LineCa
128
133
lineCache : lineCache ,
129
134
log : log ,
130
135
}
131
-
132
- for _ , rule := range rules {
133
- parsedRule := excludeRule {
134
- linters : rule .Linters ,
135
- }
136
- if rule .Text != "" {
137
- parsedRule .text = regexp .MustCompile (rule .Text )
138
- }
139
- if rule .Source != "" {
140
- parsedRule .source = regexp .MustCompile (rule .Source )
141
- }
142
- if rule .Path != "" {
143
- parsedRule .path = regexp .MustCompile (rule .Path )
144
- }
145
- r .rules = append (r .rules , parsedRule )
146
- }
136
+ r .rules = createRules (rules , "" )
147
137
148
138
return & ExcludeRulesCaseSensitive {r }
149
139
}
0 commit comments