Documentation ¶
Index ¶
- Variables
- func All(validators ...Validator) error
- func Between[T constraints.Ordered](a, b T) compareRule[T]
- func BetweenAny[T any](cmp func(a, b T) int, a, b T) compareRule[T]
- func BetweenEqual[T constraints.Ordered](a, b T) compareRule[T]
- func BetweenEqualAny[T any](cmp func(a, b T) int, a, b T) compareRule[T]
- func BetweenEqualTime(a, b time.Time) compareTimeRule
- func BetweenTime(a, b time.Time) compareTimeRule
- func Custom[T Validatable](v T) error
- func Empty[T comparable](condition bool) absentRule[T]
- func EmptyMap[T any](condition bool) absentMapRule[T]
- func EmptySlice[T any](condition bool) absentSliceRule[T]
- func EmptyTime(condition bool) absentTimeRule
- func Equal[T comparable](v T) compareRule[T]
- func EqualAny[T any](eq func(a, b T) bool, v T) compareRule[T]
- func EqualTime(v time.Time) compareTimeRule
- func Greater[T constraints.Ordered](v T) compareRule[T]
- func GreaterAny[T any](cmp func(a, b T) int, v T) compareRule[T]
- func GreaterEqual[T constraints.Ordered](v T) compareRule[T]
- func GreaterEqualAny[T any](cmp func(a, b T) int, v T) compareRule[T]
- func GreaterEqualTime(v time.Time) compareTimeRule
- func GreaterTime(v time.Time) compareTimeRule
- func In[T comparable](elements ...T) inRule[T]
- func InAny[T any](eq func(a, b T) bool, elements ...T) inAnyRule[T]
- func InTime(elements ...time.Time) inTimeRule
- func LengthMap[T any](min, max int) lengthMapRule[T]
- func LengthSlice[T any](min, max int) lengthSliceRule[T]
- func LengthString[T ~string](min, max int) lengthStringRule[T]
- func LengthStringRune[T ~string](min, max int) lengthStringRule[T]
- func Less[T constraints.Ordered](v T) compareRule[T]
- func LessAny[T any](cmp func(a, b T) int, v T) compareRule[T]
- func LessEqual[T constraints.Ordered](v T) compareRule[T]
- func LessEqualAny[T any](cmp func(a, b T) int, v T) compareRule[T]
- func LessEqualTime(v time.Time) compareTimeRule
- func LessTime(v time.Time) compareTimeRule
- func NilMap[T any](condition bool) absentMapRule[T]
- func NilOrNotEmptyMap[T any](condition bool) requiredMapRule[T]
- func NilOrNotEmptySlice[T any](condition bool) requiredSliceRule[T]
- func NilPtr[T any](condition bool) absentPtrRule[T]
- func NilSlice[T any](condition bool) absentSliceRule[T]
- func NotIn[T comparable](elements ...T) notInRule[T]
- func NotInAny[T any](eq func(a, b T) bool, elements ...T) notInAnyRule[T]
- func NotInTime(elements ...time.Time) notInTimeRule
- func NotNilMap[T any](condition bool) notNilMapRule[T]
- func NotNilPtr[T any](condition bool) notNilPtrRule[T]
- func NotNilSlice[T any](condition bool) notNilSliceRule[T]
- func Required[T comparable](condition bool) requiredRule[T]
- func RequiredAny[T any](condition bool, isDefault func(a T) bool) requiredAnyRule[T]
- func RequiredMap[T any](condition bool) requiredMapRule[T]
- func RequiredSlice[T any](condition bool) requiredSliceRule[T]
- func RequiredTime(condition bool) requiredTimeRule
- type AnyRule
- type AnyRuleFunc
- type AnyValidator
- func (av AnyValidator[T]) Between(cmp func(a, b T) int, a, b T) AnyValidator[T]
- func (av AnyValidator[T]) BetweenEqual(cmp func(a, b T) int, a, b T) AnyValidator[T]
- func (av AnyValidator[T]) Break(condition bool) AnyValidator[T]
- func (av AnyValidator[T]) By(rules ...AnyRule[T]) AnyValidator[T]
- func (av AnyValidator[T]) Else() AnyValidator[T]
- func (av AnyValidator[T]) ElseIf(condition bool) AnyValidator[T]
- func (av AnyValidator[T]) EndIf() AnyValidator[T]
- func (av AnyValidator[T]) Equal(eq func(a, b T) bool, v T) AnyValidator[T]
- func (av AnyValidator[T]) Greater(cmp func(a, b T) int, v T) AnyValidator[T]
- func (av AnyValidator[T]) GreaterEqual(cmp func(a, b T) int, v T) AnyValidator[T]
- func (av AnyValidator[T]) If(condition bool) AnyValidator[T]
- func (av AnyValidator[T]) In(eq func(a, b T) bool, elements ...T) AnyValidator[T]
- func (av AnyValidator[T]) Less(cmp func(a, b T) int, v T) AnyValidator[T]
- func (av AnyValidator[T]) LessEqual(cmp func(a, b T) int, v T) AnyValidator[T]
- func (av AnyValidator[T]) NotIn(eq func(a, b T) bool, elements ...T) AnyValidator[T]
- func (av AnyValidator[T]) Required(condition bool, isDefault func(v T) bool) AnyValidator[T]
- func (av AnyValidator[T]) Valid() error
- func (av AnyValidator[T]) Validate(v T) error
- func (av AnyValidator[T]) With(fns ...func(v T) error) AnyValidator[T]
- type ComparableRule
- type ComparableRuleFunc
- type ComparableValidator
- func (cv ComparableValidator[T]) Break(condition bool) ComparableValidator[T]
- func (cv ComparableValidator[T]) By(rules ...ComparableRule[T]) ComparableValidator[T]
- func (cv ComparableValidator[T]) Else() ComparableValidator[T]
- func (cv ComparableValidator[T]) ElseIf(condition bool) ComparableValidator[T]
- func (cv ComparableValidator[T]) EndIf() ComparableValidator[T]
- func (cv ComparableValidator[T]) Equal(v T) ComparableValidator[T]
- func (cv ComparableValidator[T]) If(condition bool) ComparableValidator[T]
- func (cv ComparableValidator[T]) In(elements ...T) ComparableValidator[T]
- func (cv ComparableValidator[T]) NotIn(elements ...T) ComparableValidator[T]
- func (cv ComparableValidator[T]) Required(condition bool) ComparableValidator[T]
- func (cv ComparableValidator[T]) Valid() error
- func (cv ComparableValidator[T]) Validate(v T) error
- func (cv ComparableValidator[T]) With(fns ...func(v T) error) ComparableValidator[T]
- type Errors
- type IndexError
- type MapRule
- type MapRuleFunc
- type MapValidator
- func (mv MapValidator[T]) Break(condition bool) MapValidator[T]
- func (mv MapValidator[T]) By(rules ...MapRule[T]) MapValidator[T]
- func (mv MapValidator[T]) Else() MapValidator[T]
- func (mv MapValidator[T]) ElseIf(condition bool) MapValidator[T]
- func (mv MapValidator[T]) Empty(condition bool) MapValidator[T]
- func (mv MapValidator[T]) EndIf() MapValidator[T]
- func (mv MapValidator[T]) If(condition bool) MapValidator[T]
- func (mv MapValidator[T]) Length(min, max int) MapValidator[T]
- func (mv MapValidator[T]) Nil(condition bool) MapValidator[T]
- func (mv MapValidator[T]) NilOrNotEmpty(condition bool) MapValidator[T]
- func (mv MapValidator[T]) NotNil(condition bool) MapValidator[T]
- func (mv MapValidator[T]) Required(condition bool) MapValidator[T]
- func (mv MapValidator[T]) Valid() error
- func (mv MapValidator[T]) Validate(m map[string]T) error
- func (mv MapValidator[T]) With(fns ...func(s map[string]T) error) MapValidator[T]
- type NumberRule
- type NumberRuleFunc
- type NumberValidator
- func (nv NumberValidator[T]) Between(a, b T) NumberValidator[T]
- func (nv NumberValidator[T]) BetweenEqual(a, b T) NumberValidator[T]
- func (nv NumberValidator[T]) Break(condition bool) NumberValidator[T]
- func (nv NumberValidator[T]) By(rules ...NumberRule[T]) NumberValidator[T]
- func (nv NumberValidator[T]) Else() NumberValidator[T]
- func (nv NumberValidator[T]) ElseIf(condition bool) NumberValidator[T]
- func (nv NumberValidator[T]) EndIf() NumberValidator[T]
- func (nv NumberValidator[T]) Equal(v T) NumberValidator[T]
- func (nv NumberValidator[T]) Greater(v T) NumberValidator[T]
- func (nv NumberValidator[T]) GreaterEqual(v T) NumberValidator[T]
- func (nv NumberValidator[T]) If(condition bool) NumberValidator[T]
- func (nv NumberValidator[T]) In(elements ...T) NumberValidator[T]
- func (nv NumberValidator[T]) Less(v T) NumberValidator[T]
- func (nv NumberValidator[T]) LessEqual(v T) NumberValidator[T]
- func (nv NumberValidator[T]) NotIn(elements ...T) NumberValidator[T]
- func (nv NumberValidator[T]) Required(condition bool) NumberValidator[T]
- func (nv NumberValidator[T]) Valid() error
- func (nv NumberValidator[T]) Validate(v T) error
- func (nv NumberValidator[T]) With(fns ...func(n T) error) NumberValidator[T]
- type PtrRule
- type PtrRuleFunc
- type PtrValidator
- func (pv PtrValidator[T]) Break(condition bool) PtrValidator[T]
- func (pv PtrValidator[T]) By(rules ...PtrRule[T]) PtrValidator[T]
- func (pv PtrValidator[T]) Else() PtrValidator[T]
- func (pv PtrValidator[T]) ElseIf(condition bool) PtrValidator[T]
- func (pv PtrValidator[T]) EndIf() PtrValidator[T]
- func (pv PtrValidator[T]) If(condition bool) PtrValidator[T]
- func (pv PtrValidator[T]) Nil(condition bool) PtrValidator[T]
- func (pv PtrValidator[T]) NotNil(condition bool) PtrValidator[T]
- func (pv PtrValidator[T]) Valid() error
- func (pv PtrValidator[T]) Validate(v *T) error
- func (pv PtrValidator[T]) ValueBy(rules ...AnyRule[T]) PtrValidator[T]
- func (pv PtrValidator[T]) ValueWith(fns ...func(p T) error) PtrValidator[T]
- func (pv PtrValidator[T]) With(fns ...func(p *T) error) PtrValidator[T]
- type RuleError
- type SliceRule
- type SliceRuleFunc
- type SliceValidator
- func (sv SliceValidator[T]) Break(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) By(rules ...SliceRule[T]) SliceValidator[T]
- func (sv SliceValidator[T]) Else() SliceValidator[T]
- func (sv SliceValidator[T]) ElseIf(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) Empty(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) EndIf() SliceValidator[T]
- func (sv SliceValidator[T]) If(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) Length(min, max int) SliceValidator[T]
- func (sv SliceValidator[T]) Nil(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) NilOrNotEmpty(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) NotNil(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) Required(condition bool) SliceValidator[T]
- func (sv SliceValidator[T]) Valid() error
- func (sv SliceValidator[T]) Validate(v []T) error
- func (sv SliceValidator[T]) ValuesBy(rules ...AnyRule[T]) SliceValidator[T]
- func (sv SliceValidator[T]) ValuesPtrBy(rules ...AnyRule[*T]) SliceValidator[T]
- func (sv SliceValidator[T]) ValuesPtrWith(fns ...func(v *T) error) SliceValidator[T]
- func (sv SliceValidator[T]) ValuesWith(fns ...func(v T) error) SliceValidator[T]
- func (sv SliceValidator[T]) With(fns ...func(s []T) error) SliceValidator[T]
- type StringRule
- type StringRuleFunc
- type StringValidator
- func (sv StringValidator[T]) Between(a, b T) StringValidator[T]
- func (sv StringValidator[T]) BetweenEqual(a, b T) StringValidator[T]
- func (sv StringValidator[T]) Break(condition bool) StringValidator[T]
- func (sv StringValidator[T]) By(rules ...StringRule[T]) StringValidator[T]
- func (sv StringValidator[T]) Else() StringValidator[T]
- func (sv StringValidator[T]) ElseIf(condition bool) StringValidator[T]
- func (sv StringValidator[T]) EndIf() StringValidator[T]
- func (sv StringValidator[T]) Equal(v T) StringValidator[T]
- func (sv StringValidator[T]) Greater(v T) StringValidator[T]
- func (sv StringValidator[T]) GreaterEqual(v T) StringValidator[T]
- func (sv StringValidator[T]) If(condition bool) StringValidator[T]
- func (sv StringValidator[T]) In(elements ...T) StringValidator[T]
- func (sv StringValidator[T]) Length(min, max int) StringValidator[T]
- func (sv StringValidator[T]) Less(v T) StringValidator[T]
- func (sv StringValidator[T]) LessEqual(v T) StringValidator[T]
- func (sv StringValidator[T]) NotIn(elements ...T) StringValidator[T]
- func (sv StringValidator[T]) Required(condition bool) StringValidator[T]
- func (sv StringValidator[T]) Valid() error
- func (sv StringValidator[T]) Validate(v T) error
- func (sv StringValidator[T]) With(fns ...func(s T) error) StringValidator[T]
- type TimeRule
- type TimeRuleFunc
- type TimeValidator
- func (tv TimeValidator) Between(a, b time.Time) TimeValidator
- func (tv TimeValidator) BetweenEqual(a, b time.Time) TimeValidator
- func (tv TimeValidator) Break(condition bool) TimeValidator
- func (tv TimeValidator) By(rules ...TimeRule) TimeValidator
- func (tv TimeValidator) Else() TimeValidator
- func (tv TimeValidator) ElseIf(condition bool) TimeValidator
- func (tv TimeValidator) EndIf() TimeValidator
- func (tv TimeValidator) Equal(v time.Time) TimeValidator
- func (tv TimeValidator) Greater(v time.Time) TimeValidator
- func (tv TimeValidator) GreaterEqual(v time.Time) TimeValidator
- func (tv TimeValidator) If(condition bool) TimeValidator
- func (tv TimeValidator) In(elements ...time.Time) TimeValidator
- func (tv TimeValidator) Less(v time.Time) TimeValidator
- func (tv TimeValidator) LessEqual(v time.Time) TimeValidator
- func (tv TimeValidator) NotIn(elements ...time.Time) TimeValidator
- func (tv TimeValidator) Required(condition bool) TimeValidator
- func (tv TimeValidator) Valid() error
- func (tv TimeValidator) Validate(v time.Time) error
- func (tv TimeValidator) With(fns ...func(v time.Time) error) TimeValidator
- type Validatable
- type Validator
- type ValueError
Constants ¶
This section is empty.
Variables ¶
View Source
var ( ErrEmpty = NewRuleError("empty", "must be blank") ErrNil = NewRuleError("nil", "must be blank") )
View Source
var ( ErrRequired = NewRuleError("required", "cannot be blank") ErrNilOrNotEmpty = NewRuleError("nil_or_not_empty_required", "cannot be blank") )
View Source
var ErrInInvalid = NewRuleError("in_invalid", "must be a valid value")
View Source
var ErrNotInInvalid = NewRuleError("not_in_invalid", "must not be in list")
View Source
var ErrNotNil = NewRuleError("not_nil", "is required")
Functions ¶
func Between ¶
func Between[T constraints.Ordered](a, b T) compareRule[T]
func BetweenAny ¶ added in v1.1.0
func BetweenEqual ¶
func BetweenEqual[T constraints.Ordered](a, b T) compareRule[T]
func BetweenEqualAny ¶ added in v1.1.0
func BetweenEqualTime ¶
func BetweenTime ¶
func Custom ¶
func Custom[T Validatable](v T) error
func Empty ¶
func Empty[T comparable](condition bool) absentRule[T]
func EmptySlice ¶
func Equal ¶
func Equal[T comparable](v T) compareRule[T]
func Greater ¶
func Greater[T constraints.Ordered](v T) compareRule[T]
func GreaterAny ¶ added in v1.1.0
func GreaterEqual ¶
func GreaterEqual[T constraints.Ordered](v T) compareRule[T]
func GreaterEqualAny ¶ added in v1.1.0
func GreaterEqualTime ¶
func GreaterTime ¶
func In ¶
func In[T comparable](elements ...T) inRule[T]
func LengthSlice ¶
func LengthString ¶
func LengthStringRune ¶
func Less ¶
func Less[T constraints.Ordered](v T) compareRule[T]
func LessEqual ¶
func LessEqual[T constraints.Ordered](v T) compareRule[T]
func LessEqualAny ¶ added in v1.1.0
func LessEqualTime ¶
func NilOrNotEmptyMap ¶
func NilOrNotEmptySlice ¶
func NotIn ¶
func NotIn[T comparable](elements ...T) notInRule[T]
func NotNilSlice ¶
func Required ¶
func Required[T comparable](condition bool) requiredRule[T]
func RequiredAny ¶
func RequiredMap ¶
func RequiredSlice ¶
func RequiredTime ¶
func RequiredTime(condition bool) requiredTimeRule
Types ¶
type AnyRule ¶
func CustomRule ¶
func CustomRule[T Validatable]() AnyRule[T]
type AnyRuleFunc ¶
func (AnyRuleFunc[T]) Validate ¶
func (fn AnyRuleFunc[T]) Validate(v T) error
type AnyValidator ¶
type AnyValidator[T any] struct { // contains filtered or unexported fields }
func Any ¶
func Any[T any](v T, name string) AnyValidator[T]
func AnyI ¶ added in v1.1.3
func AnyI[T any](v T) AnyValidator[T]
func AnyV ¶
func AnyV[T any]() AnyValidator[T]
func (AnyValidator[T]) Between ¶ added in v1.1.0
func (av AnyValidator[T]) Between(cmp func(a, b T) int, a, b T) AnyValidator[T]
func (AnyValidator[T]) BetweenEqual ¶ added in v1.1.0
func (av AnyValidator[T]) BetweenEqual(cmp func(a, b T) int, a, b T) AnyValidator[T]
func (AnyValidator[T]) Break ¶ added in v1.1.0
func (av AnyValidator[T]) Break(condition bool) AnyValidator[T]
func (AnyValidator[T]) By ¶
func (av AnyValidator[T]) By(rules ...AnyRule[T]) AnyValidator[T]
func (AnyValidator[T]) Else ¶ added in v1.1.0
func (av AnyValidator[T]) Else() AnyValidator[T]
func (AnyValidator[T]) ElseIf ¶ added in v1.1.0
func (av AnyValidator[T]) ElseIf(condition bool) AnyValidator[T]
func (AnyValidator[T]) EndIf ¶ added in v1.1.0
func (av AnyValidator[T]) EndIf() AnyValidator[T]
func (AnyValidator[T]) Equal ¶ added in v1.1.0
func (av AnyValidator[T]) Equal(eq func(a, b T) bool, v T) AnyValidator[T]
func (AnyValidator[T]) Greater ¶ added in v1.1.0
func (av AnyValidator[T]) Greater(cmp func(a, b T) int, v T) AnyValidator[T]
func (AnyValidator[T]) GreaterEqual ¶ added in v1.1.0
func (av AnyValidator[T]) GreaterEqual(cmp func(a, b T) int, v T) AnyValidator[T]
func (AnyValidator[T]) If ¶ added in v1.1.0
func (av AnyValidator[T]) If(condition bool) AnyValidator[T]
func (AnyValidator[T]) In ¶ added in v1.1.0
func (av AnyValidator[T]) In(eq func(a, b T) bool, elements ...T) AnyValidator[T]
func (AnyValidator[T]) Less ¶ added in v1.1.0
func (av AnyValidator[T]) Less(cmp func(a, b T) int, v T) AnyValidator[T]
func (AnyValidator[T]) LessEqual ¶ added in v1.1.0
func (av AnyValidator[T]) LessEqual(cmp func(a, b T) int, v T) AnyValidator[T]
func (AnyValidator[T]) NotIn ¶ added in v1.1.0
func (av AnyValidator[T]) NotIn(eq func(a, b T) bool, elements ...T) AnyValidator[T]
func (AnyValidator[T]) Required ¶
func (av AnyValidator[T]) Required(condition bool, isDefault func(v T) bool) AnyValidator[T]
func (AnyValidator[T]) Valid ¶
func (av AnyValidator[T]) Valid() error
func (AnyValidator[T]) Validate ¶
func (av AnyValidator[T]) Validate(v T) error
func (AnyValidator[T]) With ¶
func (av AnyValidator[T]) With(fns ...func(v T) error) AnyValidator[T]
type ComparableRule ¶
type ComparableRule[T comparable] interface { Validate(v T) error }
type ComparableRuleFunc ¶
type ComparableRuleFunc[T comparable] func(v T) error
func (ComparableRuleFunc[T]) Validate ¶
func (fn ComparableRuleFunc[T]) Validate(v T) error
type ComparableValidator ¶
type ComparableValidator[T comparable] struct { // contains filtered or unexported fields }
func Comparable ¶
func Comparable[T comparable](v T, name string) ComparableValidator[T]
func ComparableI ¶ added in v1.1.3
func ComparableI[T comparable](v T) ComparableValidator[T]
func ComparableV ¶
func ComparableV[T comparable]() ComparableValidator[T]
func (ComparableValidator[T]) Break ¶ added in v1.1.0
func (cv ComparableValidator[T]) Break(condition bool) ComparableValidator[T]
func (ComparableValidator[T]) By ¶
func (cv ComparableValidator[T]) By(rules ...ComparableRule[T]) ComparableValidator[T]
func (ComparableValidator[T]) Else ¶ added in v1.1.0
func (cv ComparableValidator[T]) Else() ComparableValidator[T]
func (ComparableValidator[T]) ElseIf ¶ added in v1.1.0
func (cv ComparableValidator[T]) ElseIf(condition bool) ComparableValidator[T]
func (ComparableValidator[T]) EndIf ¶ added in v1.1.0
func (cv ComparableValidator[T]) EndIf() ComparableValidator[T]
func (ComparableValidator[T]) Equal ¶
func (cv ComparableValidator[T]) Equal(v T) ComparableValidator[T]
func (ComparableValidator[T]) If ¶ added in v1.1.0
func (cv ComparableValidator[T]) If(condition bool) ComparableValidator[T]
func (ComparableValidator[T]) In ¶
func (cv ComparableValidator[T]) In(elements ...T) ComparableValidator[T]
func (ComparableValidator[T]) NotIn ¶
func (cv ComparableValidator[T]) NotIn(elements ...T) ComparableValidator[T]
func (ComparableValidator[T]) Required ¶
func (cv ComparableValidator[T]) Required(condition bool) ComparableValidator[T]
func (ComparableValidator[T]) Valid ¶
func (cv ComparableValidator[T]) Valid() error
func (ComparableValidator[T]) Validate ¶
func (cv ComparableValidator[T]) Validate(v T) error
func (ComparableValidator[T]) With ¶
func (cv ComparableValidator[T]) With(fns ...func(v T) error) ComparableValidator[T]
type IndexError ¶
func NewIndexError ¶
func NewIndexError(index int, nested error) IndexError
type MapRuleFunc ¶
func (MapRuleFunc[T]) Validate ¶
func (fn MapRuleFunc[T]) Validate(m map[string]T) error
type MapValidator ¶
type MapValidator[T any] struct { // contains filtered or unexported fields }
func MapI ¶ added in v1.1.3
func MapI[T any](m map[string]T) MapValidator[T]
func MapV ¶
func MapV[T any]() MapValidator[T]
func (MapValidator[T]) Break ¶ added in v1.1.0
func (mv MapValidator[T]) Break(condition bool) MapValidator[T]
func (MapValidator[T]) By ¶
func (mv MapValidator[T]) By(rules ...MapRule[T]) MapValidator[T]
func (MapValidator[T]) Else ¶ added in v1.1.0
func (mv MapValidator[T]) Else() MapValidator[T]
func (MapValidator[T]) ElseIf ¶ added in v1.1.0
func (mv MapValidator[T]) ElseIf(condition bool) MapValidator[T]
func (MapValidator[T]) Empty ¶
func (mv MapValidator[T]) Empty(condition bool) MapValidator[T]
func (MapValidator[T]) EndIf ¶ added in v1.1.0
func (mv MapValidator[T]) EndIf() MapValidator[T]
func (MapValidator[T]) If ¶ added in v1.1.0
func (mv MapValidator[T]) If(condition bool) MapValidator[T]
func (MapValidator[T]) Length ¶
func (mv MapValidator[T]) Length(min, max int) MapValidator[T]
func (MapValidator[T]) Nil ¶
func (mv MapValidator[T]) Nil(condition bool) MapValidator[T]
func (MapValidator[T]) NilOrNotEmpty ¶
func (mv MapValidator[T]) NilOrNotEmpty(condition bool) MapValidator[T]
func (MapValidator[T]) NotNil ¶
func (mv MapValidator[T]) NotNil(condition bool) MapValidator[T]
func (MapValidator[T]) Required ¶
func (mv MapValidator[T]) Required(condition bool) MapValidator[T]
func (MapValidator[T]) Valid ¶
func (mv MapValidator[T]) Valid() error
func (MapValidator[T]) Validate ¶
func (mv MapValidator[T]) Validate(m map[string]T) error
func (MapValidator[T]) With ¶
func (mv MapValidator[T]) With(fns ...func(s map[string]T) error) MapValidator[T]
type NumberRule ¶
type NumberRule[T constraints.Number] interface { Validate(n T) error }
type NumberRuleFunc ¶
type NumberRuleFunc[T constraints.Number] func(n T) error
func (NumberRuleFunc[T]) Validate ¶
func (fn NumberRuleFunc[T]) Validate(n T) error
type NumberValidator ¶
type NumberValidator[T constraints.Number] struct { // contains filtered or unexported fields }
func Number ¶
func Number[T constraints.Number](n T, name string) NumberValidator[T]
func NumberI ¶ added in v1.1.3
func NumberI[T constraints.Number](n T) NumberValidator[T]
func NumberV ¶
func NumberV[T constraints.Number]() NumberValidator[T]
func (NumberValidator[T]) Between ¶
func (nv NumberValidator[T]) Between(a, b T) NumberValidator[T]
func (NumberValidator[T]) BetweenEqual ¶
func (nv NumberValidator[T]) BetweenEqual(a, b T) NumberValidator[T]
func (NumberValidator[T]) Break ¶ added in v1.1.0
func (nv NumberValidator[T]) Break(condition bool) NumberValidator[T]
func (NumberValidator[T]) By ¶
func (nv NumberValidator[T]) By(rules ...NumberRule[T]) NumberValidator[T]
func (NumberValidator[T]) Else ¶ added in v1.1.0
func (nv NumberValidator[T]) Else() NumberValidator[T]
func (NumberValidator[T]) ElseIf ¶ added in v1.1.0
func (nv NumberValidator[T]) ElseIf(condition bool) NumberValidator[T]
func (NumberValidator[T]) EndIf ¶ added in v1.1.0
func (nv NumberValidator[T]) EndIf() NumberValidator[T]
func (NumberValidator[T]) Equal ¶
func (nv NumberValidator[T]) Equal(v T) NumberValidator[T]
func (NumberValidator[T]) Greater ¶
func (nv NumberValidator[T]) Greater(v T) NumberValidator[T]
func (NumberValidator[T]) GreaterEqual ¶
func (nv NumberValidator[T]) GreaterEqual(v T) NumberValidator[T]
func (NumberValidator[T]) If ¶ added in v1.1.0
func (nv NumberValidator[T]) If(condition bool) NumberValidator[T]
func (NumberValidator[T]) In ¶
func (nv NumberValidator[T]) In(elements ...T) NumberValidator[T]
func (NumberValidator[T]) Less ¶
func (nv NumberValidator[T]) Less(v T) NumberValidator[T]
func (NumberValidator[T]) LessEqual ¶
func (nv NumberValidator[T]) LessEqual(v T) NumberValidator[T]
func (NumberValidator[T]) NotIn ¶
func (nv NumberValidator[T]) NotIn(elements ...T) NumberValidator[T]
func (NumberValidator[T]) Required ¶
func (nv NumberValidator[T]) Required(condition bool) NumberValidator[T]
func (NumberValidator[T]) Valid ¶
func (nv NumberValidator[T]) Valid() error
func (NumberValidator[T]) Validate ¶
func (nv NumberValidator[T]) Validate(v T) error
func (NumberValidator[T]) With ¶
func (nv NumberValidator[T]) With(fns ...func(n T) error) NumberValidator[T]
type PtrRuleFunc ¶
func (PtrRuleFunc[T]) Validate ¶
func (fn PtrRuleFunc[T]) Validate(p *T) error
type PtrValidator ¶
type PtrValidator[T any] struct { // contains filtered or unexported fields }
func Ptr ¶
func Ptr[T any](p *T, name string) PtrValidator[T]
func PtrI ¶ added in v1.1.0
func PtrI[T any](p *T) PtrValidator[T]
func PtrV ¶
func PtrV[T any]() PtrValidator[T]
func (PtrValidator[T]) Break ¶ added in v1.1.0
func (pv PtrValidator[T]) Break(condition bool) PtrValidator[T]
func (PtrValidator[T]) By ¶
func (pv PtrValidator[T]) By(rules ...PtrRule[T]) PtrValidator[T]
func (PtrValidator[T]) Else ¶ added in v1.1.0
func (pv PtrValidator[T]) Else() PtrValidator[T]
func (PtrValidator[T]) ElseIf ¶ added in v1.1.0
func (pv PtrValidator[T]) ElseIf(condition bool) PtrValidator[T]
func (PtrValidator[T]) EndIf ¶ added in v1.1.0
func (pv PtrValidator[T]) EndIf() PtrValidator[T]
func (PtrValidator[T]) If ¶ added in v1.1.0
func (pv PtrValidator[T]) If(condition bool) PtrValidator[T]
func (PtrValidator[T]) Nil ¶
func (pv PtrValidator[T]) Nil(condition bool) PtrValidator[T]
func (PtrValidator[T]) NotNil ¶
func (pv PtrValidator[T]) NotNil(condition bool) PtrValidator[T]
func (PtrValidator[T]) Valid ¶
func (pv PtrValidator[T]) Valid() error
func (PtrValidator[T]) Validate ¶
func (pv PtrValidator[T]) Validate(v *T) error
func (PtrValidator[T]) ValueBy ¶
func (pv PtrValidator[T]) ValueBy(rules ...AnyRule[T]) PtrValidator[T]
func (PtrValidator[T]) ValueWith ¶
func (pv PtrValidator[T]) ValueWith(fns ...func(p T) error) PtrValidator[T]
func (PtrValidator[T]) With ¶
func (pv PtrValidator[T]) With(fns ...func(p *T) error) PtrValidator[T]
type RuleError ¶
func NewRuleError ¶
type SliceRuleFunc ¶
func (SliceRuleFunc[T]) Validate ¶
func (fn SliceRuleFunc[T]) Validate(s []T) error
type SliceValidator ¶
type SliceValidator[T any] struct { // contains filtered or unexported fields }
func Slice ¶
func Slice[T any](s []T, name string) SliceValidator[T]
func SliceI ¶ added in v1.1.3
func SliceI[T any](s []T) SliceValidator[T]
func SliceV ¶
func SliceV[T any]() SliceValidator[T]
func (SliceValidator[T]) Break ¶ added in v1.1.0
func (sv SliceValidator[T]) Break(condition bool) SliceValidator[T]
func (SliceValidator[T]) By ¶
func (sv SliceValidator[T]) By(rules ...SliceRule[T]) SliceValidator[T]
func (SliceValidator[T]) Else ¶ added in v1.1.0
func (sv SliceValidator[T]) Else() SliceValidator[T]
func (SliceValidator[T]) ElseIf ¶ added in v1.1.0
func (sv SliceValidator[T]) ElseIf(condition bool) SliceValidator[T]
func (SliceValidator[T]) Empty ¶
func (sv SliceValidator[T]) Empty(condition bool) SliceValidator[T]
func (SliceValidator[T]) EndIf ¶ added in v1.1.0
func (sv SliceValidator[T]) EndIf() SliceValidator[T]
func (SliceValidator[T]) If ¶ added in v1.1.0
func (sv SliceValidator[T]) If(condition bool) SliceValidator[T]
func (SliceValidator[T]) Length ¶
func (sv SliceValidator[T]) Length(min, max int) SliceValidator[T]
func (SliceValidator[T]) Nil ¶
func (sv SliceValidator[T]) Nil(condition bool) SliceValidator[T]
func (SliceValidator[T]) NilOrNotEmpty ¶
func (sv SliceValidator[T]) NilOrNotEmpty(condition bool) SliceValidator[T]
func (SliceValidator[T]) NotNil ¶
func (sv SliceValidator[T]) NotNil(condition bool) SliceValidator[T]
func (SliceValidator[T]) Required ¶
func (sv SliceValidator[T]) Required(condition bool) SliceValidator[T]
func (SliceValidator[T]) Valid ¶
func (sv SliceValidator[T]) Valid() error
func (SliceValidator[T]) Validate ¶
func (sv SliceValidator[T]) Validate(v []T) error
func (SliceValidator[T]) ValuesBy ¶
func (sv SliceValidator[T]) ValuesBy(rules ...AnyRule[T]) SliceValidator[T]
func (SliceValidator[T]) ValuesPtrBy ¶
func (sv SliceValidator[T]) ValuesPtrBy(rules ...AnyRule[*T]) SliceValidator[T]
func (SliceValidator[T]) ValuesPtrWith ¶
func (sv SliceValidator[T]) ValuesPtrWith(fns ...func(v *T) error) SliceValidator[T]
func (SliceValidator[T]) ValuesWith ¶
func (sv SliceValidator[T]) ValuesWith(fns ...func(v T) error) SliceValidator[T]
func (SliceValidator[T]) With ¶
func (sv SliceValidator[T]) With(fns ...func(s []T) error) SliceValidator[T]
type StringRule ¶
type StringRuleFunc ¶
func (StringRuleFunc[T]) Validate ¶
func (fn StringRuleFunc[T]) Validate(s T) error
type StringValidator ¶
type StringValidator[T ~string] struct { // contains filtered or unexported fields }
func String ¶
func String[T ~string](s T, name string) StringValidator[T]
func StringI ¶ added in v1.1.3
func StringI[T ~string](s T) StringValidator[T]
func StringV ¶
func StringV[T ~string]() StringValidator[T]
func (StringValidator[T]) Between ¶
func (sv StringValidator[T]) Between(a, b T) StringValidator[T]
func (StringValidator[T]) BetweenEqual ¶
func (sv StringValidator[T]) BetweenEqual(a, b T) StringValidator[T]
func (StringValidator[T]) Break ¶ added in v1.1.0
func (sv StringValidator[T]) Break(condition bool) StringValidator[T]
func (StringValidator[T]) By ¶
func (sv StringValidator[T]) By(rules ...StringRule[T]) StringValidator[T]
func (StringValidator[T]) Else ¶ added in v1.1.0
func (sv StringValidator[T]) Else() StringValidator[T]
func (StringValidator[T]) ElseIf ¶ added in v1.1.0
func (sv StringValidator[T]) ElseIf(condition bool) StringValidator[T]
func (StringValidator[T]) EndIf ¶ added in v1.1.0
func (sv StringValidator[T]) EndIf() StringValidator[T]
func (StringValidator[T]) Equal ¶
func (sv StringValidator[T]) Equal(v T) StringValidator[T]
func (StringValidator[T]) Greater ¶
func (sv StringValidator[T]) Greater(v T) StringValidator[T]
func (StringValidator[T]) GreaterEqual ¶
func (sv StringValidator[T]) GreaterEqual(v T) StringValidator[T]
func (StringValidator[T]) If ¶ added in v1.1.0
func (sv StringValidator[T]) If(condition bool) StringValidator[T]
func (StringValidator[T]) In ¶
func (sv StringValidator[T]) In(elements ...T) StringValidator[T]
func (StringValidator[T]) Length ¶
func (sv StringValidator[T]) Length(min, max int) StringValidator[T]
func (StringValidator[T]) Less ¶
func (sv StringValidator[T]) Less(v T) StringValidator[T]
func (StringValidator[T]) LessEqual ¶
func (sv StringValidator[T]) LessEqual(v T) StringValidator[T]
func (StringValidator[T]) NotIn ¶
func (sv StringValidator[T]) NotIn(elements ...T) StringValidator[T]
func (StringValidator[T]) Required ¶
func (sv StringValidator[T]) Required(condition bool) StringValidator[T]
func (StringValidator[T]) Valid ¶
func (sv StringValidator[T]) Valid() error
func (StringValidator[T]) Validate ¶
func (sv StringValidator[T]) Validate(v T) error
func (StringValidator[T]) With ¶
func (sv StringValidator[T]) With(fns ...func(s T) error) StringValidator[T]
type TimeRuleFunc ¶
type TimeValidator ¶
type TimeValidator struct {
// contains filtered or unexported fields
}
func TimeI ¶ added in v1.1.3
func TimeI(v time.Time) TimeValidator
func TimeV ¶
func TimeV() TimeValidator
func (TimeValidator) Between ¶
func (tv TimeValidator) Between(a, b time.Time) TimeValidator
func (TimeValidator) BetweenEqual ¶
func (tv TimeValidator) BetweenEqual(a, b time.Time) TimeValidator
func (TimeValidator) Break ¶ added in v1.1.0
func (tv TimeValidator) Break(condition bool) TimeValidator
func (TimeValidator) By ¶
func (tv TimeValidator) By(rules ...TimeRule) TimeValidator
func (TimeValidator) Else ¶ added in v1.1.0
func (tv TimeValidator) Else() TimeValidator
func (TimeValidator) ElseIf ¶ added in v1.1.0
func (tv TimeValidator) ElseIf(condition bool) TimeValidator
func (TimeValidator) EndIf ¶ added in v1.1.0
func (tv TimeValidator) EndIf() TimeValidator
func (TimeValidator) Equal ¶
func (tv TimeValidator) Equal(v time.Time) TimeValidator
func (TimeValidator) Greater ¶
func (tv TimeValidator) Greater(v time.Time) TimeValidator
func (TimeValidator) GreaterEqual ¶
func (tv TimeValidator) GreaterEqual(v time.Time) TimeValidator
func (TimeValidator) If ¶ added in v1.1.0
func (tv TimeValidator) If(condition bool) TimeValidator
func (TimeValidator) In ¶
func (tv TimeValidator) In(elements ...time.Time) TimeValidator
func (TimeValidator) Less ¶
func (tv TimeValidator) Less(v time.Time) TimeValidator
func (TimeValidator) LessEqual ¶
func (tv TimeValidator) LessEqual(v time.Time) TimeValidator
func (TimeValidator) NotIn ¶
func (tv TimeValidator) NotIn(elements ...time.Time) TimeValidator
func (TimeValidator) Required ¶
func (tv TimeValidator) Required(condition bool) TimeValidator
func (TimeValidator) Valid ¶
func (tv TimeValidator) Valid() error
func (TimeValidator) With ¶
func (tv TimeValidator) With(fns ...func(v time.Time) error) TimeValidator
type Validatable ¶
type Validatable interface {
Validate() error
}
type ValueError ¶
func NewValueError ¶
func NewValueError(name string, nested error) ValueError
Source Files ¶
Click to show internal directories.
Click to hide internal directories.