evaluator

package
v2.0.0-...-02ad64b Latest Latest
Warning

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

Go to latest
Published: May 19, 2023 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Builder

type Builder struct {
	Load func(desc protoreflect.MessageDescriptor) MessageEvaluator
	// contains filtered or unexported fields
}

Builder is a build-through cache of message evaluators keyed off the provided descriptor.

func NewBuilder

func NewBuilder(
	env *cel.Env,
	disableLazy bool,
	res StandardConstraintResolver,
	seedDesc ...protoreflect.MessageDescriptor,
) *Builder

NewBuilder initializes a new Builder.

type DefaultResolver

type DefaultResolver struct{}

func (DefaultResolver) ResolveFieldConstraints

func (r DefaultResolver) ResolveFieldConstraints(desc protoreflect.FieldDescriptor) *validate.FieldConstraints

func (DefaultResolver) ResolveMessageConstraints

func (r DefaultResolver) ResolveMessageConstraints(desc protoreflect.MessageDescriptor) *validate.MessageConstraints

func (DefaultResolver) ResolveOneofConstraints

func (r DefaultResolver) ResolveOneofConstraints(desc protoreflect.OneofDescriptor) *validate.OneofConstraints

type MessageEvaluator

type MessageEvaluator interface {

	// EvaluateMessage checks that the provided msg is valid. See
	// evaluator.Evaluate for behavior
	EvaluateMessage(msg protoreflect.Message, failFast bool) error
	// contains filtered or unexported methods
}

MessageEvaluator is essentially the same as evaluator, but specialized for messages as an optimization. See evaluator for behavior.

type StandardConstraintResolver

type StandardConstraintResolver interface {
	ResolveMessageConstraints(desc protoreflect.MessageDescriptor) *validate.MessageConstraints
	ResolveOneofConstraints(desc protoreflect.OneofDescriptor) *validate.OneofConstraints
	ResolveFieldConstraints(desc protoreflect.FieldDescriptor) *validate.FieldConstraints
}

Jump to

Keyboard shortcuts

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