aboutsummaryrefslogtreecommitdiff
path: root/match_copyright.go
diff options
context:
space:
mode:
Diffstat (limited to 'match_copyright.go')
-rw-r--r--match_copyright.go22
1 files changed, 22 insertions, 0 deletions
diff --git a/match_copyright.go b/match_copyright.go
index aa35950..723c63f 100644
--- a/match_copyright.go
+++ b/match_copyright.go
@@ -11,12 +11,18 @@ import (
type matchCopyright struct {
rePattern *regexp.Regexp
+ reDeleteLineBefore []*regexp.Regexp
+ reDeleteLineAfter []*regexp.Regexp
+
// Pattern to be searched in file.
Pattern string `ini:"match-copyright::pattern"`
year string
author string
contact string
+
+ DeleteLineBefore []string `ini:"match-copyright::delete_line_before"`
+ DeleteLineAfter []string `ini:"match-copyright::delete_line_after"`
}
func (cmc *matchCopyright) init() (err error) {
@@ -27,6 +33,22 @@ func (cmc *matchCopyright) init() (err error) {
return fmt.Errorf(`%s: pattern %q: %w`, logp, cmc.Pattern, err)
}
}
+ cmc.reDeleteLineBefore = make([]*regexp.Regexp, len(cmc.DeleteLineBefore))
+ for x, pattern := range cmc.DeleteLineBefore {
+ re, err := regexp.Compile(pattern)
+ if err != nil {
+ return fmt.Errorf(`%s: delete_line_before %q: %w`, logp, pattern, err)
+ }
+ cmc.reDeleteLineBefore[x] = re
+ }
+ cmc.reDeleteLineAfter = make([]*regexp.Regexp, len(cmc.DeleteLineAfter))
+ for x, pattern := range cmc.DeleteLineAfter {
+ re, err := regexp.Compile(pattern)
+ if err != nil {
+ return fmt.Errorf(`%s: delete_line_after %q: %w`, logp, pattern, err)
+ }
+ cmc.reDeleteLineAfter[x] = re
+ }
return nil
}