Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsRequired ¶
func IsRequired(value interface{}) bool
IsRequired checks if a value would be considered "present" for required validation. This is useful for other validators that need to check if a value exists.
func RequiredIf ¶
func RequiredIf(condition func(value interface{}) bool) queryfy.ValidatorFunc
RequiredIf creates a conditional required validator. The field is required only if the condition function returns true.
Types ¶
type AndValidator ¶
type AndValidator struct {
// contains filtered or unexported fields
}
AndValidator combines multiple validators with AND logic. All validators must pass for the value to be valid.
func NewAndValidator ¶
func NewAndValidator(validators ...queryfy.ValidatorFunc) *AndValidator
NewAndValidator creates a validator that requires all sub-validators to pass.
func (*AndValidator) Validate ¶
func (v *AndValidator) Validate(value interface{}) error
Validate runs all validators and collects all errors.
type EnumValidator ¶
type EnumValidator struct {
// contains filtered or unexported fields
}
EnumValidator validates that a value is one of the allowed values.
func NewEnumValidator ¶
func NewEnumValidator(allowed ...interface{}) *EnumValidator
NewEnumValidator creates a validator for enumerated values.
func (*EnumValidator) Validate ¶
func (v *EnumValidator) Validate(value interface{}) error
Validate checks if the value is in the allowed list.
type MaxValidator ¶
type MaxValidator struct {
// contains filtered or unexported fields
}
MaxValidator validates maximum values for numbers and maximum length for strings/arrays.
func NewMaxLengthValidator ¶
func NewMaxLengthValidator(max int) *MaxValidator
NewMaxLengthValidator creates a validator for maximum length.
func NewMaxValidator ¶
func NewMaxValidator(max float64) *MaxValidator
NewMaxValidator creates a validator for maximum numeric values.
func (*MaxValidator) Validate ¶
func (v *MaxValidator) Validate(value interface{}) error
Validate checks if the value meets the maximum requirement.
type MinValidator ¶
type MinValidator struct {
// contains filtered or unexported fields
}
MinValidator validates minimum values for numbers and minimum length for strings/arrays.
func NewMinLengthValidator ¶
func NewMinLengthValidator(min int) *MinValidator
NewMinLengthValidator creates a validator for minimum length.
func NewMinValidator ¶
func NewMinValidator(min float64) *MinValidator
NewMinValidator creates a validator for minimum numeric values.
func (*MinValidator) Validate ¶
func (v *MinValidator) Validate(value interface{}) error
Validate checks if the value meets the minimum requirement.
type NotValidator ¶
type NotValidator struct {
// contains filtered or unexported fields
}
NotValidator inverts the result of another validator.
func NewNotValidator ¶
func NewNotValidator(validator queryfy.ValidatorFunc) *NotValidator
NewNotValidator creates a validator that inverts another validator's result.
func (*NotValidator) Validate ¶
func (v *NotValidator) Validate(value interface{}) error
Validate succeeds if the wrapped validator fails.
type OrValidator ¶
type OrValidator struct {
// contains filtered or unexported fields
}
OrValidator combines multiple validators with OR logic. At least one validator must pass for the value to be valid.
func NewOrValidator ¶
func NewOrValidator(validators ...queryfy.ValidatorFunc) *OrValidator
NewOrValidator creates a validator that requires at least one sub-validator to pass.
func (*OrValidator) Validate ¶
func (v *OrValidator) Validate(value interface{}) error
Validate runs all validators and succeeds if any pass.
type RequiredValidator ¶
type RequiredValidator struct {
// contains filtered or unexported fields
}
RequiredValidator validates that a value is present and not nil.
func NewRequiredValidator ¶
func NewRequiredValidator() *RequiredValidator
NewRequiredValidator creates a new required validator.
func (*RequiredValidator) AllowZero ¶
func (v *RequiredValidator) AllowZero() *RequiredValidator
AllowZero allows zero values to pass validation. By default, zero values (empty string, 0, false) are considered invalid.
func (*RequiredValidator) Validate ¶
func (v *RequiredValidator) Validate(value interface{}) error
Validate checks if the value is present and not nil.