mirror of
https://github.com/kataras/iris.git
synced 2025-01-23 18:51:03 +01:00
41 lines
741 B
Go
41 lines
741 B
Go
package errors
|
|
|
|
import (
|
|
"strconv"
|
|
"strings"
|
|
)
|
|
|
|
// ValidationError is an interface which IF
|
|
// it custom error types completes, then
|
|
// it can by mapped to a validation error.
|
|
//
|
|
// A validation error(s) can be given by ErrorCodeName's Validation or Err methods.
|
|
type ValidationError interface {
|
|
error
|
|
|
|
GetField() string
|
|
GetValue() interface{}
|
|
GetReason() string
|
|
}
|
|
|
|
type ValidationErrors []ValidationError
|
|
|
|
func (errs ValidationErrors) Error() string {
|
|
var buf strings.Builder
|
|
for i, err := range errs {
|
|
buf.WriteByte('[')
|
|
buf.WriteString(strconv.Itoa(i))
|
|
buf.WriteByte(']')
|
|
buf.WriteByte(' ')
|
|
|
|
buf.WriteString(err.Error())
|
|
|
|
if i < len(errs)-1 {
|
|
buf.WriteByte(',')
|
|
buf.WriteByte(' ')
|
|
}
|
|
}
|
|
|
|
return buf.String()
|
|
}
|