logginghandler/vendor/github.com/golangci/gofmt/goimports/golangci.go
Marvin Preuss d095180eb4
All checks were successful
continuous-integration/drone/push Build is passing
build: uses go modules for tool handling
2022-01-14 13:51:56 +01:00

34 lines
520 B
Go

package goimports
import (
"bytes"
"fmt"
"io/ioutil"
"golang.org/x/tools/imports"
)
func Run(filename string) ([]byte, error) {
src, err := ioutil.ReadFile(filename)
if err != nil {
return nil, err
}
res, err := imports.Process(filename, src, options)
if err != nil {
return nil, err
}
if bytes.Equal(src, res) {
return nil, nil
}
// formatting has changed
data, err := diff(src, res, filename)
if err != nil {
return nil, fmt.Errorf("error computing diff: %s", err)
}
return data, nil
}