validator

package
v0.8.0 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2022 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package validator 提供各类验证器

Index

Constants

This section is empty.

Variables

对 is 包中的简单封装

Functions

This section is empty.

Types

type ValidateFunc added in v0.8.0

type ValidateFunc func(any) bool

ValidateFunc 用于验证指定数据的合法性

func In

func In[T comparable](element ...T) ValidateFunc

In 声明枚举类型的验证规则

要求验证的值必须包含在 element 元素中,如果不存在,则返回 msg 的内容。

func Length

func Length(min, max int64) ValidateFunc

Length 声明判断内容长度的验证规则

如果 min 和 max 有值为 -1,表示忽略该值的比较,都为 -1 表示不限制长度。

只能验证类型为 string、Map、Slice 和 Array 的数据。

func Match

func Match(exp *regexp.Regexp) ValidateFunc

Match 定义正则匹配的验证规则

func Max

func Max(max float64) ValidateFunc

Max 声明判断数值不大于 max 的验证规则

func MaxLength

func MaxLength(max int64) ValidateFunc

MaxLength 声明判断内容长度不大于 max 的验证规则

func Min

func Min(min float64) ValidateFunc

Min 声明判断数值不小于 min 的验证规则

func MinLength

func MinLength(min int64) ValidateFunc

MinLength 声明判断内容长度不小于 min 的验证规则

func NotIn

func NotIn[T comparable](element ...T) ValidateFunc

NotIn 声明不在枚举中的验证规则

func Range

func Range(min, max float64) ValidateFunc

Range 声明判断数值大小的验证规则

只能验证类型为 int、int8、int16、int32、int64、uint、uint8、uint16、uint32、uint64、float32 和 float64 类型的值。

min 和 max 可以分别采用 math.Inf(-1) 和 math.Inf(1) 表示其最大的值范围。

func Required

func Required(skipNil bool) ValidateFunc

Required 判断值是否必须为非空的规则

skipNil 表示当前值为指针时,如果指向 nil,是否跳过非空检测规则。 如果 skipNil 为 false,则 nil 被当作空值处理。

具体判断规则可参考 github.com/issue9/validation/is.Empty

func (ValidateFunc) IsValid added in v0.8.0

func (f ValidateFunc) IsValid(v any) bool

IsValid 将当前函数作为 Validator 使用

type Validator added in v0.8.0

type Validator interface {
	// IsValid 验证 v 是否符合当前的规则
	IsValid(v any) bool
}

Validator 用于验证指定数据的合法性

func And added in v0.8.0

func And(v ...Validator) Validator

func Or added in v0.8.0

func Or(v ...Validator) Validator

Jump to

Keyboard shortcuts

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