validators

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 14, 2025 License: Apache-2.0 Imports: 4 Imported by: 0

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL