This document explains how to build, test, and develop features for revive.
In order to install all the dependencies run:
go get -u github.com/mgechev/revive
cd $GOPATH/src/github.com/mgechev/revive
After that install the dependencies using go modules:
make install
In order to build the project run:
make build
The command will produce the revive
binary in the root of the project.
If you want to develop a new rule, follow as an example the already existing rules in the rule package.
All rules should implement the following interface:
type Rule interface {
Name() string
Apply(*File, Arguments) []Failure
}
If you want to develop a new formatter, follow as an example the already existing formatters in the formatter package.
All formatters should implement the following interface:
type Formatter interface {
Format(<-chan Failure, RulesConfig) (string, error)
Name() string
}