errors

package
v1.72.0 Latest Latest
Warning

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

Go to latest
Published: Jul 30, 2026 License: MIT Imports: 2 Imported by: 0

README

Package errors

Пакет errors предоставляет функции для создания, оборачивания и проверки ошибок, используя стандартные пакеты Go errors и fmt.

Пакет заменяет привычные вызовы из github.com/pkg/errors.

Functions

New(text string) error

Создает новую ошибку с переданным текстом.

Errorf(format string, args ...any) error

Создает новую ошибку с форматированием. Если формат содержит %w, ошибка будет обернута стандартным механизмом Go.

WithMessage(err error, message string) error

Добавляет сообщение к ошибке через стандартное оборачивание %w.

WithMessagef(err error, format string, args ...any) error

Добавляет форматированное сообщение к ошибке через стандартное оборачивание %w.

Is(err, target error) bool

Проверяет, содержит ли цепочка ошибок target.

As(err error, target any) bool

Находит в цепочке ошибок ошибку подходящего типа и записывает ее в target.

AsType[E error](err error) (E, bool)

Generic-версия As, возвращающая найденную ошибку и признак успешного поиска.

Unwrap(err error) error

Возвращает ошибку, обернутую внутри err.

Join(errs ...error) error

Объединяет несколько ошибок в одну.

Usage

package main

import (
	"database/sql"

	"github.com/txix-open/isp-kit/errors"
)

func getUser(userId string) error {
	err := sql.ErrNoRows
	if err != nil {
		return errors.WithMessagef(err, "get user %s", userId)
	}

	return nil
}

Documentation

Overview

Package errors provides helpers for creating, wrapping, and inspecting errors using the standard library errors and fmt packages.

Index

Constants

This section is empty.

Variables

View Source
var ErrUnsupported = stderrors.ErrUnsupported

ErrUnsupported indicates that an operation is not supported.

Functions

func As

func As(err error, target any) bool

As finds the first error in err's tree that matches target.

func AsType

func AsType[E error](err error) (E, bool)

AsType finds the first error in err's tree that matches E.

func Errorf

func Errorf(format string, args ...any) error

Errorf formats according to a format specifier and returns an error.

func Is

func Is(err, target error) bool

Is reports whether err's tree contains target.

func Join

func Join(errs ...error) error

Join returns an error that wraps the given errors.

func New

func New(text string) error

New returns an error with the supplied text.

func Unwrap

func Unwrap(err error) error

Unwrap returns the result of calling err's Unwrap method.

func WithMessage

func WithMessage(err error, message string) error

WithMessage wraps err with message using standard error wrapping.

func WithMessagef

func WithMessagef(err error, format string, args ...any) error

WithMessagef wraps err with a formatted message using standard error wrapping.

Types

This section is empty.

Jump to

Keyboard shortcuts

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