mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-02 10:07:07 -05:00
32 lines
666 B
Go
32 lines
666 B
Go
|
package lint
|
||
|
|
||
|
import (
|
||
|
"go/token"
|
||
|
)
|
||
|
|
||
|
// DisabledInterval contains a single disabled interval and the associated rule name.
|
||
|
type DisabledInterval struct {
|
||
|
From token.Position
|
||
|
To token.Position
|
||
|
RuleName string
|
||
|
}
|
||
|
|
||
|
// Rule defines an abstract rule interaface
|
||
|
type Rule interface {
|
||
|
Name() string
|
||
|
Apply(*File, Arguments) []Failure
|
||
|
}
|
||
|
|
||
|
// AbstractRule defines an abstract rule.
|
||
|
type AbstractRule struct {
|
||
|
Failures []Failure
|
||
|
}
|
||
|
|
||
|
// ToFailurePosition returns the failure position.
|
||
|
func ToFailurePosition(start token.Pos, end token.Pos, file *File) FailurePosition {
|
||
|
return FailurePosition{
|
||
|
Start: file.ToPosition(start),
|
||
|
End: file.ToPosition(end),
|
||
|
}
|
||
|
}
|