errors

package
v7.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Aug 13, 2020 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ErrgoRoot

func ErrgoRoot(err error) error

func IsRootCause

func IsRootCause(err error, mytype interface{}) bool

IsRootCause return true if the cause of the given error is the same type as mytype. This function takes the cause of an error if the errors stack has been wrapped with errors.Wrapf or errgo.Notef or errgo.NoteMask or errgo.Mask.

Example:

errors.IsRootCause(err, &ValidationErrors{})

func Notef

func Notef(ctx context.Context, err error, format string, args ...interface{}) error

func RootCause

func RootCause(err error) error

RootCause returns the cause of an errors stack, whatever the method they used to be stacked: either errgo.Notef or errors.Wrapf.

func Wrapf

func Wrapf(ctx context.Context, err error, format string, args ...interface{}) error

Types

type ErrCtx

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

func (ErrCtx) Ctx

func (err ErrCtx) Ctx() context.Context

func (ErrCtx) Error

func (err ErrCtx) Error() string

type ValidationErrors

type ValidationErrors struct {
	Errors map[string][]string `json:"errors"`
}

ValidationErrors store each errors associated to every fields of a model

func (*ValidationErrors) Error

func (v *ValidationErrors) Error() string

type ValidationErrorsBuilder

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

ValidationErrorsBuilder is used to provide a simple way to create a ValidationErrors struct. The typical usecase is:

func (m *MyModel) Validate(ctx context.Context) *ValidationErrors {
	validations := document.NewValidationErrorsBuilder()

	if m.Name == "" {
		validations.Set("name", "should not be empty")
	}

	if m.Email == "" {
		validations.Set("email", "should not be empty")
	}

	return validations.Build()
}

func NewValidationErrorsBuilder

func NewValidationErrorsBuilder() *ValidationErrorsBuilder

NewValidationErrors return an empty ValidationErrors struct

func (*ValidationErrorsBuilder) Build

Build will send a ValidationErrors struct if there is some errors or nil if no errors has been defined

func (*ValidationErrorsBuilder) Get

func (v *ValidationErrorsBuilder) Get(field string) []string

Get will return all errors set for a specific field

func (*ValidationErrorsBuilder) Merge

Merge ValidationErrors with another ValidationErrors

func (*ValidationErrorsBuilder) MergeWithPrefix

func (v *ValidationErrorsBuilder) MergeWithPrefix(prefix string, verr *ValidationErrors) *ValidationErrorsBuilder

MergeWithPrefix is merging ValidationErrors in another ValidationError adding a prefix for each error field

func (*ValidationErrorsBuilder) Set

Set will add an error on a specific field, if the field already contains an error, it will just add it to the current errors list

Jump to

Keyboard shortcuts

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