glue

package
v3.0.7 Latest Latest
Warning

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

Go to latest
Published: May 12, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayBuilder added in v3.0.5

type ArrayBuilder struct {
	// contains filtered or unexported fields
}

ArrayBuilder accumulates array validation rules.

func NewArrayBuilder added in v3.0.5

func NewArrayBuilder(engine *core.Engine) *ArrayBuilder

func (*ArrayBuilder) Build added in v3.0.5

func (b *ArrayBuilder) Build() func(any) error

func (*ArrayBuilder) BuildAll added in v3.0.5

func (b *ArrayBuilder) BuildAll() func(any) error

func (*ArrayBuilder) BuildContext added in v3.0.5

func (b *ArrayBuilder) BuildContext() types.ContextValidatorFunc

func (*ArrayBuilder) BuildContextWithOpts added in v3.0.5

func (b *ArrayBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*ArrayBuilder) BuildWithOpts added in v3.0.5

func (b *ArrayBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*ArrayBuilder) Contains added in v3.0.5

func (b *ArrayBuilder) Contains(value any) *ArrayBuilder

func (*ArrayBuilder) ForEach added in v3.0.5

func (b *ArrayBuilder) ForEach(elemValidator func(any) error) *ArrayBuilder

func (*ArrayBuilder) ForEachRules added in v3.0.5

func (b *ArrayBuilder) ForEachRules(inner ...types.Rule) *ArrayBuilder

ForEachRules applies inner rules to each array element. This form is cache-friendly (no function args).

func (*ArrayBuilder) ForEachStringBuilder added in v3.0.5

func (b *ArrayBuilder) ForEachStringBuilder(sb *StringBuilder) *ArrayBuilder

ForEachStringBuilder copies rules from a StringBuilder as element rules.

func (*ArrayBuilder) Length added in v3.0.5

func (b *ArrayBuilder) Length(n int) *ArrayBuilder

func (*ArrayBuilder) MaxLength added in v3.0.5

func (b *ArrayBuilder) MaxLength(n int) *ArrayBuilder

func (*ArrayBuilder) MinLength added in v3.0.5

func (b *ArrayBuilder) MinLength(n int) *ArrayBuilder

func (*ArrayBuilder) OmitEmpty added in v3.0.5

func (b *ArrayBuilder) OmitEmpty() *ArrayBuilder

func (*ArrayBuilder) Required added in v3.0.5

func (b *ArrayBuilder) Required() *ArrayBuilder

func (*ArrayBuilder) Rule added in v3.0.5

func (b *ArrayBuilder) Rule(kind types.Kind, args map[string]any) *ArrayBuilder

func (*ArrayBuilder) Unique added in v3.0.5

func (b *ArrayBuilder) Unique() *ArrayBuilder

type BoolBuilder

type BoolBuilder struct {
	// contains filtered or unexported fields
}

BoolBuilder accumulates boolean validation rules.

func NewBoolBuilder

func NewBoolBuilder(engine *core.Engine) *BoolBuilder

NewBoolBuilder creates a new BoolBuilder with the base type rule.

func (*BoolBuilder) Build

func (b *BoolBuilder) Build() func(any) error

func (*BoolBuilder) BuildAll added in v3.0.5

func (b *BoolBuilder) BuildAll() func(any) error

func (*BoolBuilder) BuildContext added in v3.0.5

func (b *BoolBuilder) BuildContext() types.ContextValidatorFunc

func (*BoolBuilder) BuildContextWithOpts added in v3.0.5

func (b *BoolBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*BoolBuilder) BuildWithOpts added in v3.0.5

func (b *BoolBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*BoolBuilder) False added in v3.0.5

func (b *BoolBuilder) False() *BoolBuilder

func (*BoolBuilder) OmitEmpty added in v3.0.3

func (b *BoolBuilder) OmitEmpty() *BoolBuilder

func (*BoolBuilder) Required added in v3.0.5

func (b *BoolBuilder) Required() *BoolBuilder

func (*BoolBuilder) Rule added in v3.0.5

func (b *BoolBuilder) Rule(kind types.Kind, args map[string]any) *BoolBuilder

func (*BoolBuilder) True added in v3.0.5

func (b *BoolBuilder) True() *BoolBuilder

type CustomTypeBuilder added in v3.0.3

type CustomTypeBuilder struct {
	// contains filtered or unexported fields
}

CustomTypeBuilder accumulates custom type validation rules.

func (*CustomTypeBuilder) Build added in v3.0.3

func (b *CustomTypeBuilder) Build() func(any) error

func (*CustomTypeBuilder) BuildAll added in v3.0.5

func (b *CustomTypeBuilder) BuildAll() func(any) error

func (*CustomTypeBuilder) BuildContext added in v3.0.5

func (b *CustomTypeBuilder) BuildContext() types.ContextValidatorFunc

func (*CustomTypeBuilder) BuildContextWithOpts added in v3.0.5

func (b *CustomTypeBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*CustomTypeBuilder) BuildWithOpts added in v3.0.5

func (b *CustomTypeBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*CustomTypeBuilder) OmitEmpty added in v3.0.3

func (b *CustomTypeBuilder) OmitEmpty() *CustomTypeBuilder

func (*CustomTypeBuilder) Required added in v3.0.5

func (b *CustomTypeBuilder) Required() *CustomTypeBuilder

func (*CustomTypeBuilder) Rule added in v3.0.5

func (b *CustomTypeBuilder) Rule(kind types.Kind, args map[string]any) *CustomTypeBuilder

type FloatBuilder added in v3.0.5

type FloatBuilder struct {
	// contains filtered or unexported fields
}

FloatBuilder accumulates floating-point validation rules.

func NewFloatBuilder added in v3.0.5

func NewFloatBuilder(engine *core.Engine) *FloatBuilder

func (*FloatBuilder) Between added in v3.0.5

func (b *FloatBuilder) Between(min, max float64) *FloatBuilder

func (*FloatBuilder) Build added in v3.0.5

func (b *FloatBuilder) Build() func(any) error

func (*FloatBuilder) BuildAll added in v3.0.5

func (b *FloatBuilder) BuildAll() func(any) error

func (*FloatBuilder) BuildContext added in v3.0.5

func (b *FloatBuilder) BuildContext() types.ContextValidatorFunc

func (*FloatBuilder) BuildContextWithOpts added in v3.0.5

func (b *FloatBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*FloatBuilder) BuildWithOpts added in v3.0.5

func (b *FloatBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*FloatBuilder) Finite added in v3.0.5

func (b *FloatBuilder) Finite() *FloatBuilder

func (*FloatBuilder) GreaterThan added in v3.0.5

func (b *FloatBuilder) GreaterThan(n float64) *FloatBuilder

func (*FloatBuilder) GreaterThanEqual added in v3.0.5

func (b *FloatBuilder) GreaterThanEqual(n float64) *FloatBuilder

func (*FloatBuilder) LessThan added in v3.0.5

func (b *FloatBuilder) LessThan(n float64) *FloatBuilder

func (*FloatBuilder) LessThanEqual added in v3.0.5

func (b *FloatBuilder) LessThanEqual(n float64) *FloatBuilder

func (*FloatBuilder) Max added in v3.0.5

func (b *FloatBuilder) Max(n float64) *FloatBuilder

func (*FloatBuilder) Min added in v3.0.5

func (b *FloatBuilder) Min(n float64) *FloatBuilder

func (*FloatBuilder) NonNegative added in v3.0.5

func (b *FloatBuilder) NonNegative() *FloatBuilder

func (*FloatBuilder) OmitEmpty added in v3.0.5

func (b *FloatBuilder) OmitEmpty() *FloatBuilder

func (*FloatBuilder) Positive added in v3.0.5

func (b *FloatBuilder) Positive() *FloatBuilder

func (*FloatBuilder) Required added in v3.0.5

func (b *FloatBuilder) Required() *FloatBuilder

func (*FloatBuilder) Rule added in v3.0.5

func (b *FloatBuilder) Rule(kind types.Kind, args map[string]any) *FloatBuilder

type IntBuilder

type IntBuilder struct {
	// contains filtered or unexported fields
}

IntBuilder accumulates integer validation rules.

func NewIntBuilder

func NewIntBuilder(exact bool, engine *core.Engine) *IntBuilder

NewIntBuilder creates a new IntBuilder with the base type rule.

func (*IntBuilder) Between added in v3.0.5

func (b *IntBuilder) Between(min, max int64) *IntBuilder

func (*IntBuilder) Build

func (b *IntBuilder) Build() func(any) error

func (*IntBuilder) BuildAll added in v3.0.5

func (b *IntBuilder) BuildAll() func(any) error

func (*IntBuilder) BuildContext added in v3.0.5

func (b *IntBuilder) BuildContext() types.ContextValidatorFunc

func (*IntBuilder) BuildContextWithOpts added in v3.0.5

func (b *IntBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*IntBuilder) BuildWithOpts added in v3.0.5

func (b *IntBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*IntBuilder) GreaterThan added in v3.0.5

func (b *IntBuilder) GreaterThan(n int64) *IntBuilder

func (*IntBuilder) GreaterThanEqual added in v3.0.5

func (b *IntBuilder) GreaterThanEqual(n int64) *IntBuilder

func (*IntBuilder) LessThan added in v3.0.5

func (b *IntBuilder) LessThan(n int64) *IntBuilder

func (*IntBuilder) LessThanEqual added in v3.0.5

func (b *IntBuilder) LessThanEqual(n int64) *IntBuilder

func (*IntBuilder) MaxInt

func (b *IntBuilder) MaxInt(n int64) *IntBuilder

func (*IntBuilder) MinInt

func (b *IntBuilder) MinInt(n int64) *IntBuilder

func (*IntBuilder) NonNegative added in v3.0.5

func (b *IntBuilder) NonNegative() *IntBuilder

func (*IntBuilder) OmitEmpty added in v3.0.3

func (b *IntBuilder) OmitEmpty() *IntBuilder

func (*IntBuilder) Positive added in v3.0.5

func (b *IntBuilder) Positive() *IntBuilder

func (*IntBuilder) Required added in v3.0.5

func (b *IntBuilder) Required() *IntBuilder

func (*IntBuilder) Rule added in v3.0.5

func (b *IntBuilder) Rule(kind types.Kind, args map[string]any) *IntBuilder

type MapBuilder added in v3.0.5

type MapBuilder struct {
	// contains filtered or unexported fields
}

MapBuilder accumulates map validation rules.

func NewMapBuilder added in v3.0.5

func NewMapBuilder(engine *core.Engine) *MapBuilder

func (*MapBuilder) Build added in v3.0.5

func (b *MapBuilder) Build() func(any) error

func (*MapBuilder) BuildAll added in v3.0.5

func (b *MapBuilder) BuildAll() func(any) error

func (*MapBuilder) BuildContext added in v3.0.5

func (b *MapBuilder) BuildContext() types.ContextValidatorFunc

func (*MapBuilder) BuildContextWithOpts added in v3.0.5

func (b *MapBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*MapBuilder) BuildWithOpts added in v3.0.5

func (b *MapBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*MapBuilder) KeysRules added in v3.0.5

func (b *MapBuilder) KeysRules(inner ...types.Rule) *MapBuilder

func (*MapBuilder) Length added in v3.0.5

func (b *MapBuilder) Length(n int) *MapBuilder

func (*MapBuilder) MaxKeys added in v3.0.5

func (b *MapBuilder) MaxKeys(n int) *MapBuilder

func (*MapBuilder) MinKeys added in v3.0.5

func (b *MapBuilder) MinKeys(n int) *MapBuilder

func (*MapBuilder) OmitEmpty added in v3.0.5

func (b *MapBuilder) OmitEmpty() *MapBuilder

func (*MapBuilder) Required added in v3.0.5

func (b *MapBuilder) Required() *MapBuilder

func (*MapBuilder) Rule added in v3.0.5

func (b *MapBuilder) Rule(kind types.Kind, args map[string]any) *MapBuilder

func (*MapBuilder) ValuesRules added in v3.0.5

func (b *MapBuilder) ValuesRules(inner ...types.Rule) *MapBuilder

type SliceBuilder

type SliceBuilder struct {
	// contains filtered or unexported fields
}

SliceBuilder accumulates slice validation rules.

func (*SliceBuilder) Build

func (b *SliceBuilder) Build() func(any) error

func (*SliceBuilder) BuildAll added in v3.0.5

func (b *SliceBuilder) BuildAll() func(any) error

func (*SliceBuilder) BuildContext added in v3.0.5

func (b *SliceBuilder) BuildContext() types.ContextValidatorFunc

func (*SliceBuilder) BuildContextWithOpts added in v3.0.5

func (b *SliceBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*SliceBuilder) BuildWithOpts added in v3.0.5

func (b *SliceBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*SliceBuilder) Contains added in v3.0.5

func (b *SliceBuilder) Contains(value any) *SliceBuilder

func (*SliceBuilder) ForEach

func (b *SliceBuilder) ForEach(elemValidator func(any) error) *SliceBuilder

func (*SliceBuilder) ForEachRules

func (b *SliceBuilder) ForEachRules(inner ...types.Rule) *SliceBuilder

ForEachRules applies inner rules to each slice element. This form is cache-friendly (no function args).

func (*SliceBuilder) ForEachStringBuilder

func (b *SliceBuilder) ForEachStringBuilder(sb *StringBuilder) *SliceBuilder

ForEachStringBuilder copies rules from a StringBuilder as element rules.

func (*SliceBuilder) Length

func (b *SliceBuilder) Length(n int) *SliceBuilder

func (*SliceBuilder) MaxLength

func (b *SliceBuilder) MaxLength(n int) *SliceBuilder

func (*SliceBuilder) MinLength

func (b *SliceBuilder) MinLength(n int) *SliceBuilder

func (*SliceBuilder) OmitEmpty added in v3.0.3

func (b *SliceBuilder) OmitEmpty() *SliceBuilder

func (*SliceBuilder) Required added in v3.0.5

func (b *SliceBuilder) Required() *SliceBuilder

func (*SliceBuilder) Rule added in v3.0.5

func (b *SliceBuilder) Rule(kind types.Kind, args map[string]any) *SliceBuilder

func (*SliceBuilder) Unique added in v3.0.5

func (b *SliceBuilder) Unique() *SliceBuilder

type StringBuilder

type StringBuilder struct {
	// contains filtered or unexported fields
}

StringBuilder accumulates string validation rules.

func (*StringBuilder) ASCII added in v3.0.5

func (b *StringBuilder) ASCII() *StringBuilder

func (*StringBuilder) Alnum added in v3.0.5

func (b *StringBuilder) Alnum() *StringBuilder

func (*StringBuilder) Alpha added in v3.0.5

func (b *StringBuilder) Alpha() *StringBuilder

func (*StringBuilder) Base64 added in v3.0.5

func (b *StringBuilder) Base64() *StringBuilder

func (*StringBuilder) Base64URL added in v3.0.5

func (b *StringBuilder) Base64URL() *StringBuilder

func (*StringBuilder) Build

func (b *StringBuilder) Build() func(any) error

func (*StringBuilder) BuildAll added in v3.0.5

func (b *StringBuilder) BuildAll() func(any) error

func (*StringBuilder) BuildContext added in v3.0.5

func (b *StringBuilder) BuildContext() types.ContextValidatorFunc

func (*StringBuilder) BuildContextWithOpts added in v3.0.5

func (b *StringBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*StringBuilder) BuildWithOpts added in v3.0.5

func (b *StringBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*StringBuilder) CIDR added in v3.0.5

func (b *StringBuilder) CIDR() *StringBuilder

func (*StringBuilder) Contains added in v3.0.5

func (b *StringBuilder) Contains(value string) *StringBuilder

func (*StringBuilder) Date added in v3.0.5

func (b *StringBuilder) Date() *StringBuilder

func (*StringBuilder) E164 added in v3.0.5

func (b *StringBuilder) E164() *StringBuilder

func (*StringBuilder) FQDN added in v3.0.5

func (b *StringBuilder) FQDN() *StringBuilder

func (*StringBuilder) Hex added in v3.0.5

func (b *StringBuilder) Hex() *StringBuilder

func (*StringBuilder) Hostname added in v3.0.5

func (b *StringBuilder) Hostname() *StringBuilder

func (*StringBuilder) IP added in v3.0.5

func (b *StringBuilder) IP() *StringBuilder

func (*StringBuilder) IPv4 added in v3.0.5

func (b *StringBuilder) IPv4() *StringBuilder

func (*StringBuilder) IPv6 added in v3.0.5

func (b *StringBuilder) IPv6() *StringBuilder

func (*StringBuilder) JSON added in v3.0.5

func (b *StringBuilder) JSON() *StringBuilder

func (*StringBuilder) JWT added in v3.0.5

func (b *StringBuilder) JWT() *StringBuilder

func (*StringBuilder) Length

func (b *StringBuilder) Length(n int) *StringBuilder

func (*StringBuilder) Luhn added in v3.0.5

func (b *StringBuilder) Luhn() *StringBuilder

func (*StringBuilder) MAC added in v3.0.5

func (b *StringBuilder) MAC() *StringBuilder

func (*StringBuilder) MaxLength

func (b *StringBuilder) MaxLength(n int) *StringBuilder

func (*StringBuilder) MaxRunes

func (b *StringBuilder) MaxRunes(n int) *StringBuilder

func (*StringBuilder) MinLength

func (b *StringBuilder) MinLength(n int) *StringBuilder

func (*StringBuilder) MinRunes

func (b *StringBuilder) MinRunes(n int) *StringBuilder

func (*StringBuilder) NonEmpty added in v3.0.5

func (b *StringBuilder) NonEmpty() *StringBuilder

func (*StringBuilder) NotContains added in v3.0.5

func (b *StringBuilder) NotContains(value string) *StringBuilder

func (*StringBuilder) OmitEmpty added in v3.0.3

func (b *StringBuilder) OmitEmpty() *StringBuilder

func (*StringBuilder) OneOf

func (b *StringBuilder) OneOf(vals ...string) *StringBuilder

func (*StringBuilder) Prefix added in v3.0.5

func (b *StringBuilder) Prefix(value string) *StringBuilder

func (*StringBuilder) RFC3339 added in v3.0.5

func (b *StringBuilder) RFC3339() *StringBuilder

func (*StringBuilder) Regex

func (b *StringBuilder) Regex(pat string) *StringBuilder

func (*StringBuilder) Required added in v3.0.5

func (b *StringBuilder) Required() *StringBuilder

func (*StringBuilder) Rule added in v3.0.5

func (b *StringBuilder) Rule(kind types.Kind, args map[string]any) *StringBuilder

func (*StringBuilder) SemVer added in v3.0.5

func (b *StringBuilder) SemVer() *StringBuilder

func (*StringBuilder) Slug added in v3.0.5

func (b *StringBuilder) Slug() *StringBuilder

func (*StringBuilder) Suffix added in v3.0.5

func (b *StringBuilder) Suffix(value string) *StringBuilder

func (*StringBuilder) URL added in v3.0.5

func (b *StringBuilder) URL() *StringBuilder

func (*StringBuilder) UUIDv1 added in v3.0.5

func (b *StringBuilder) UUIDv1() *StringBuilder

func (*StringBuilder) UUIDv3 added in v3.0.5

func (b *StringBuilder) UUIDv3() *StringBuilder

func (*StringBuilder) UUIDv4 added in v3.0.5

func (b *StringBuilder) UUIDv4() *StringBuilder

func (*StringBuilder) UUIDv5 added in v3.0.5

func (b *StringBuilder) UUIDv5() *StringBuilder

func (*StringBuilder) UUIDv6 added in v3.0.5

func (b *StringBuilder) UUIDv6() *StringBuilder

func (*StringBuilder) UUIDv7 added in v3.0.5

func (b *StringBuilder) UUIDv7() *StringBuilder

func (*StringBuilder) UUIDv8 added in v3.0.5

func (b *StringBuilder) UUIDv8() *StringBuilder

type TimeBuilder added in v3.0.5

type TimeBuilder struct {
	// contains filtered or unexported fields
}

TimeBuilder accumulates time.Time validation rules.

func NewTimeBuilder added in v3.0.5

func NewTimeBuilder(engine *core.Engine) *TimeBuilder

func (*TimeBuilder) After added in v3.0.5

func (b *TimeBuilder) After(t time.Time) *TimeBuilder

func (*TimeBuilder) Before added in v3.0.5

func (b *TimeBuilder) Before(t time.Time) *TimeBuilder

func (*TimeBuilder) Between added in v3.0.5

func (b *TimeBuilder) Between(start, end time.Time) *TimeBuilder

func (*TimeBuilder) Build added in v3.0.5

func (b *TimeBuilder) Build() func(any) error

func (*TimeBuilder) BuildAll added in v3.0.5

func (b *TimeBuilder) BuildAll() func(any) error

func (*TimeBuilder) BuildContext added in v3.0.5

func (b *TimeBuilder) BuildContext() types.ContextValidatorFunc

func (*TimeBuilder) BuildContextWithOpts added in v3.0.5

func (b *TimeBuilder) BuildContextWithOpts(opts types.CompileOpts) types.ContextValidatorFunc

func (*TimeBuilder) BuildWithOpts added in v3.0.5

func (b *TimeBuilder) BuildWithOpts(opts types.CompileOpts) func(any) error

func (*TimeBuilder) NotZero added in v3.0.5

func (b *TimeBuilder) NotZero() *TimeBuilder

func (*TimeBuilder) OmitEmpty added in v3.0.5

func (b *TimeBuilder) OmitEmpty() *TimeBuilder

func (*TimeBuilder) Required added in v3.0.5

func (b *TimeBuilder) Required() *TimeBuilder

func (*TimeBuilder) Rule added in v3.0.5

func (b *TimeBuilder) Rule(kind types.Kind, args map[string]any) *TimeBuilder

type Validate

type Validate struct {
	// contains filtered or unexported fields
}

Validate provides the main validation API that glues together the core engine with specific validator implementations.

func New

func New() *Validate

New creates a new Validate instance with sensible defaults.

func NewBare

func NewBare() *Validate

NewBare returns a Validate without installing a default translator. Useful for advanced setups that manage translations differently.

func NewWithTranslator

func NewWithTranslator(tr translator.Translator) *Validate

NewWithTranslator returns a Validate configured with the provided translator while keeping other defaults.

func (*Validate) Array added in v3.0.5

func (v *Validate) Array() *ArrayBuilder

Array returns an array validator builder.

func (*Validate) Bool

func (v *Validate) Bool() *BoolBuilder

Bool returns a boolean validator builder.

func (*Validate) CheckRules added in v3.0.3

func (v *Validate) CheckRules(rules []types.Rule, value any) error

CheckRules compiles AST rules and validates a single value.

func (*Validate) CheckTag added in v3.0.3

func (v *Validate) CheckTag(tag string, value any) error

CheckTag compiles a tag and validates a single value.

func (*Validate) CheckTagContext added in v3.0.5

func (v *Validate) CheckTagContext(ctx context.Context, tag string, value any) error

CheckTagContext compiles a tag and validates a single value with context.

func (*Validate) CheckTagContextWithOpts added in v3.0.5

func (v *Validate) CheckTagContextWithOpts(ctx context.Context, tag string, value any, opts types.CompileOpts) error

CheckTagContextWithOpts compiles a tag with options and validates a single value with context.

func (*Validate) CheckTagWithOpts added in v3.0.5

func (v *Validate) CheckTagWithOpts(tag string, value any, opts types.CompileOpts) error

CheckTagWithOpts compiles a tag with options and validates a single value.

func (*Validate) CompileRules added in v3.0.3

func (v *Validate) CompileRules(rules []types.Rule) func(any) error

CompileRules compiles AST rules into a validator function.

func (*Validate) CompileRulesContext added in v3.0.5

func (v *Validate) CompileRulesContext(rules []types.Rule) types.ContextValidatorFunc

CompileRulesContext compiles AST rules into a context-aware validator.

func (*Validate) CompileRulesContextE added in v3.0.5

func (v *Validate) CompileRulesContextE(rules []types.Rule) (types.ContextValidatorFunc, error)

CompileRulesContextE compiles AST rules into a context-aware validator and returns compile errors.

func (*Validate) CompileRulesContextWithOpts added in v3.0.5

func (v *Validate) CompileRulesContextWithOpts(rules []types.Rule, opts types.CompileOpts) types.ContextValidatorFunc

CompileRulesContextWithOpts compiles AST rules into a context-aware validator with options.

func (*Validate) CompileRulesContextWithOptsE added in v3.0.5

func (v *Validate) CompileRulesContextWithOptsE(rules []types.Rule, opts types.CompileOpts) (types.ContextValidatorFunc, error)

CompileRulesContextWithOptsE compiles AST rules into a context-aware validator with options and returns compile errors.

func (*Validate) CompileRulesE added in v3.0.5

func (v *Validate) CompileRulesE(rules []types.Rule) (func(any) error, error)

CompileRulesE compiles AST rules into a validator function and returns compile-time custom-rule errors.

func (*Validate) CompileRulesWithOpts added in v3.0.5

func (v *Validate) CompileRulesWithOpts(rules []types.Rule, opts types.CompileOpts) func(any) error

CompileRulesWithOpts compiles AST rules into a validator function with options.

func (*Validate) CompileRulesWithOptsE added in v3.0.5

func (v *Validate) CompileRulesWithOptsE(rules []types.Rule, opts types.CompileOpts) (func(any) error, error)

CompileRulesWithOptsE compiles AST rules with options and returns compile errors.

func (*Validate) CustomType added in v3.0.3

func (v *Validate) CustomType(typeName string) *CustomTypeBuilder

CustomType returns a custom type validator builder for the given type name. The type must be registered with WithTypeValidator or types.RegisterGlobalType before use.

func (*Validate) Float added in v3.0.5

func (v *Validate) Float() *FloatBuilder

Float returns a floating-point validator builder.

func (*Validate) FromRules

func (v *Validate) FromRules(
	rules []string,
) (func(any) error, error)

FromRules creates a validator function from rule tokens.

func (*Validate) FromRulesContext added in v3.0.5

func (v *Validate) FromRulesContext(
	rules []string,
) (types.ContextValidatorFunc, error)

FromRulesContext creates a context-aware validator from rule tokens.

func (*Validate) FromRulesContextWithOpts added in v3.0.5

func (v *Validate) FromRulesContextWithOpts(
	rules []string,
	opts types.CompileOpts,
) (types.ContextValidatorFunc, error)

FromRulesContextWithOpts creates a context-aware validator from rule tokens with options.

func (*Validate) FromRulesWithOpts added in v3.0.5

func (v *Validate) FromRulesWithOpts(
	rules []string,
	opts types.CompileOpts,
) (func(any) error, error)

FromRulesWithOpts creates a validator function from rule tokens with options.

func (*Validate) FromTag

func (v *Validate) FromTag(tag string) (func(any) error, error)

FromTag compiles a single tag string into a validator function.

func (*Validate) FromTagContext added in v3.0.5

func (v *Validate) FromTagContext(tag string) (types.ContextValidatorFunc, error)

FromTagContext compiles a single tag string into a context-aware validator.

func (*Validate) FromTagContextWithOpts added in v3.0.5

func (v *Validate) FromTagContextWithOpts(tag string, opts types.CompileOpts) (types.ContextValidatorFunc, error)

FromTagContextWithOpts compiles a single tag string into a context-aware validator with options.

func (*Validate) FromTagWithOpts added in v3.0.5

func (v *Validate) FromTagWithOpts(tag string, opts types.CompileOpts) (func(any) error, error)

FromTagWithOpts compiles a single tag string into a validator function with options.

func (*Validate) Int

func (v *Validate) Int() *IntBuilder

Int returns an integer validator builder.

func (*Validate) Int64

func (v *Validate) Int64() *IntBuilder

Int64 returns an int64 validator builder.

func (*Validate) Map added in v3.0.5

func (v *Validate) Map() *MapBuilder

Map returns a map validator builder.

func (*Validate) PathSeparator

func (v *Validate) PathSeparator(sep string) *Validate

PathSeparator customizes the nested field path separator.

func (*Validate) Slice

func (v *Validate) Slice() *SliceBuilder

Slice returns a slice validator builder.

func (*Validate) String

func (v *Validate) String() *StringBuilder

String returns a string validator builder.

func (*Validate) Struct added in v3.0.3

Struct returns a struct validator bound to this Validate's engine.

func (*Validate) Time added in v3.0.5

func (v *Validate) Time() *TimeBuilder

Time returns a time.Time validator builder.

func (*Validate) ValidateStruct added in v3.0.3

func (v *Validate) ValidateStruct(s any) error

ValidateStruct validates a struct using `validate` tags with defaults.

func (*Validate) ValidateStructContext added in v3.0.5

func (v *Validate) ValidateStructContext(ctx context.Context, s any) error

ValidateStructContext validates a struct using `validate` tags with context.

func (*Validate) ValidateStructContextWithOpts added in v3.0.5

func (v *Validate) ValidateStructContextWithOpts(
	ctx context.Context, s any, opts core.ValidateOpts,
) error

ValidateStructContextWithOpts validates a struct with context and advanced options.

func (*Validate) ValidateStructWithOpts added in v3.0.3

func (v *Validate) ValidateStructWithOpts(
	s any, opts core.ValidateOpts,
) error

ValidateStructWithOpts validates a struct with advanced options.

func (*Validate) WithContextRuleCompiler added in v3.0.5

func (v *Validate) WithContextRuleCompiler(
	kind types.Kind, rc types.ContextRuleCompiler,
) *Validate

WithContextRuleCompiler returns a copy with a per-instance context-aware custom rule compiler.

func (*Validate) WithCustomRule

func (v *Validate) WithCustomRule(
	name string, rule func(any) error,
) *Validate

WithCustomRule returns a copy with an additional custom rule.

func (*Validate) WithRuleCompiler added in v3.0.5

func (v *Validate) WithRuleCompiler(
	kind types.Kind, rc types.RuleCompiler,
) *Validate

WithRuleCompiler returns a copy with a per-instance custom rule compiler.

func (*Validate) WithStructRuleCompiler added in v3.0.5

func (v *Validate) WithStructRuleCompiler(
	kind types.Kind, compiler core.StructRuleCompiler,
) *Validate

WithStructRuleCompiler returns a copy with a per-instance struct rule compiler.

func (*Validate) WithTranslator

func (v *Validate) WithTranslator(t translator.Translator) *Validate

WithTranslator sets a Translator and returns a new Validate.

func (*Validate) WithTypeValidator added in v3.0.5

func (v *Validate) WithTypeValidator(
	name string, factory types.TypeValidatorFactory,
) *Validate

WithTypeValidator returns a copy with a per-instance custom type validator.

Jump to

Keyboard shortcuts

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