config-lsp/common/errors.go

44 lines
884 B
Go

package common
import (
"fmt"
"strings"
)
type ParserError interface {}
type OptionAlreadyExistsError struct {
Option string
FoundOnLine uint32
}
func (e OptionAlreadyExistsError) Error() string {
return fmt.Sprintf("Option %s already exists", e.Option)
}
type OptionUnknownError struct {
Option string
}
func (e OptionUnknownError) Error() string {
return fmt.Sprintf("Option '%s' does not exist", e.Option)
}
type MalformedLineError struct {
Line string
}
func (e MalformedLineError) Error() string {
return fmt.Sprintf("Malformed line: %s", e.Line)
}
type LineNotFoundError struct {}
func (e LineNotFoundError) Error() string {
return "Line not found"
}
type ValueNotInEnumError struct {
availableValues []string
}
func (e ValueNotInEnumError) Error() string {
return fmt.Sprint("'%s' is not valid. Select one from: %v", strings.Join(e.availableValues, ","))
}