object

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jul 19, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Default

func Default(field string, value any) validator.Action[map[string]any]

Default добавляет в объект поле field со значением value, если в обрабатываемом объекте поля с таким именем нет.

func DefaultList

func DefaultList(fields map[string]any) validator.Action[map[string]any]

DefaultList добавляет в объект те поля с именами - ключами fields и значениями - значениями fields, которые в обрабатываемом объекте отсутствуют.

func Parse

func Parse(reader io.Reader, validator v.Validator) (result map[string]any, err *errs.Errors)

Parse декодирует поток, содержащий JSON, в map[string]any и обрабатывает этот any валидатором. Возвращает результат обработки и список ошибок. Синтаксический сахар для того, чтобы не загромождать код API.

func ParseString

func ParseString(str string, validator v.Validator) (result map[string]any, err *errs.Errors)

ParseString декодирует строку, содержащую JSON, в map[string]any и обрабатывает этот any валидатором. Возвращает результат обработки и список ошибок. Синтаксический сахар для того, чтобы не загромождать код API.

func Required

func Required(fields ...string) validator.Action[map[string]any]

Required проверяет существование в объекте полей с именами fields. Для каждого отсутствующего поля генерируется ошибка с ключом - именем поля.

Types

type Build

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

Build реализует построитель валидатора объекта (ассоциативного массива)

func Obj

func Obj(before ...validator.Action[map[string]any]) *Build

Obj создаёт построитель валидатора массива. Получает действия, добавляемые в набор начальных действий.

func (*Build) Add

func (b *Build) Add(field string, build validator.Builder) *Build

Add получает имя поля field и построитель валидатора поля build и добавляет поле к объекту. При дублировании имён полей выбрасывает панику со значением errors.New("field is duplicated")

func (*Build) AddMap

func (b *Build) AddMap(fields map[string]validator.Builder) *Build

AddMap добавляет набор полей к объекту. Получает ассоциативный массив fields с ключами - именами полей и значениями - построителями валидаторов этих полей. При дублировании имён полей выбрасывает панику со значением errors.New("field is duplicated")

func (*Build) After

func (b *Build) After(actions ...validator.Action[map[string]any]) *Build

After добавляет действия в набор конечных действий построителя

func (*Build) Before

func (b *Build) Before(actions ...validator.Action[map[string]any]) *Build

Before добавляет действия в набор начальных действий построителя

func (*Build) Validator

func (b *Build) Validator() validator.Validator

Validator создаёт валидатор объекта

Jump to

Keyboard shortcuts

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