refactor: prep for additional licenseHeader logic
this refactors licenseHeader to make it easier to add additional logic to determine prefix, beyond just file extension.
This commit is contained in:
15
main.go
15
main.go
@@ -277,12 +277,15 @@ func fileHasLicense(path string) (bool, error) {
|
|||||||
return hasLicense(b) || isGenerated(b), nil
|
return hasLicense(b) || isGenerated(b), nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// licenseHeader populates the provided license template with data, and returns
|
||||||
|
// it with the proper prefix for the file type specified by path. The file does
|
||||||
|
// not need to actually exist, only its name is used to determine the prefix.
|
||||||
func licenseHeader(path string, tmpl *template.Template, data licenseData) ([]byte, error) {
|
func licenseHeader(path string, tmpl *template.Template, data licenseData) ([]byte, error) {
|
||||||
var lic []byte
|
var lic []byte
|
||||||
var err error
|
var err error
|
||||||
switch fileExtension(path) {
|
base := strings.ToLower(filepath.Base(path))
|
||||||
default:
|
|
||||||
return nil, nil
|
switch fileExtension(base) {
|
||||||
case ".c", ".h", ".gv", ".java", ".scala", ".kt", ".kts":
|
case ".c", ".h", ".gv", ".java", ".scala", ".kt", ".kts":
|
||||||
lic, err = executeTemplate(tmpl, data, "/*", " * ", " */")
|
lic, err = executeTemplate(tmpl, data, "/*", " * ", " */")
|
||||||
case ".js", ".mjs", ".cjs", ".jsx", ".tsx", ".css", ".scss", ".sass", ".tf", ".ts":
|
case ".js", ".mjs", ".cjs", ".jsx", ".tsx", ".css", ".scss", ".sass", ".tf", ".ts":
|
||||||
@@ -307,11 +310,13 @@ func licenseHeader(path string, tmpl *template.Template, data licenseData) ([]by
|
|||||||
return lic, err
|
return lic, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// fileExtension returns the file extension of name, or the full name if there
|
||||||
|
// is no extension.
|
||||||
func fileExtension(name string) string {
|
func fileExtension(name string) string {
|
||||||
if v := filepath.Ext(name); v != "" {
|
if v := filepath.Ext(name); v != "" {
|
||||||
return strings.ToLower(v)
|
return v
|
||||||
}
|
}
|
||||||
return strings.ToLower(filepath.Base(name))
|
return name
|
||||||
}
|
}
|
||||||
|
|
||||||
var head = []string{
|
var head = []string{
|
||||||
|
|||||||
Reference in New Issue
Block a user