aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/gostaticanalysis/analysisutil/file.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/gostaticanalysis/analysisutil/file.go')
-rw-r--r--vendor/github.com/gostaticanalysis/analysisutil/file.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/vendor/github.com/gostaticanalysis/analysisutil/file.go b/vendor/github.com/gostaticanalysis/analysisutil/file.go
index 2aeca1d9e..b9b295530 100644
--- a/vendor/github.com/gostaticanalysis/analysisutil/file.go
+++ b/vendor/github.com/gostaticanalysis/analysisutil/file.go
@@ -3,6 +3,7 @@ package analysisutil
import (
"go/ast"
"go/token"
+ "regexp"
"golang.org/x/tools/go/analysis"
)
@@ -16,3 +17,14 @@ func File(pass *analysis.Pass, pos token.Pos) *ast.File {
}
return nil
}
+
+var genCommentRegexp = regexp.MustCompile(`^// Code generated .* DO NOT EDIT\.$`)
+
+// IsGeneratedFile reports whether the file has been generated automatically.
+// If file is nil, IsGeneratedFile will return false.
+func IsGeneratedFile(file *ast.File) bool {
+ if file == nil || len(file.Comments) == 0 {
+ return false
+ }
+ return genCommentRegexp.MatchString(file.Comments[0].List[0].Text)
+}