Documentation
¶
Overview ¶
Package structvalidator provides struct validation functionality using reflection.
The structvalidator package enables automatic validation of struct fields based on validation tags. It uses reflection to examine struct fields and apply appropriate validators based on the `validate` tag.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type StructValidator ¶
type StructValidator struct {
// contains filtered or unexported fields
}
StructValidator provides struct validation functionality.
Fields:
- validator: The underlying Validate instance for validation rules.
func NewStructValidator ¶
func NewStructValidator(v *core.Validate) *StructValidator
NewStructValidator creates a new StructValidator instance.
Parameters:
- v: The Validate instance to use for validation rules.
Returns:
- *StructValidator: A new StructValidator instance.
func (*StructValidator) ValidateStruct ¶
func (sv *StructValidator) ValidateStruct(s any) error
ValidateStruct keeps backward compatibility and uses default options.
Parameters:
- s: The struct to validate.
Returns:
- error: Validation errors if any, nil if valid.
func (*StructValidator) ValidateStructWithOpts ¶
func (sv *StructValidator) ValidateStructWithOpts( s any, opts core.ValidateOpts, ) error
ValidateStructWithOpts validates s, honoring StopOnFirst and PathSep. Expected tag example: `validate:"string;min=3;max=10"`.
Parameters:
- s: The struct to validate.
- opts: Validation options including StopOnFirst and PathSep.
Returns:
- error: Validation errors if any, nil if valid.