gerror
7 分钟阅读
原文:https://pkg.go.dev/github.com/gogf/gf/v2@v2.6.4/errors/gerror
Package gerror provides rich functionalities to manipulate errors.
软件包 gerror 提供了丰富的功能来操作错误。
For maintainers, please very note that, this package is quite a basic package, which SHOULD NOT import extra packages except standard packages and internal packages, to avoid cycle imports.
对于维护者来说,请注意,这个包是一个非常基本的包,除了标准包和内部包之外,不应该导入额外的包,以避免循环导入。
常量
This section is empty.
变量
This section is empty.
函数
func Cause
|
|
Cause returns the root cause error of err
.
Cause 返回 的 err
根本原因错误。
func Code
|
|
Code returns the error code of current error
. It returns CodeNil
if it has no error code neither it does not implement interface Code.
代码返回 的错误 current error
代码。如果它没有错误代码,则返回 CodeNil
它,它也没有实现接口代码。
func Current
|
|
Current creates and returns the current level error. It returns nil if current level error is nil.
Current 创建并返回当前电平错误。如果当前电平误差为 nil,则返回 nil。
func Equal <-2.1.0
|
|
Equal reports whether current error err
equals to error target
. Please note that, in default comparison logic for Error
, the errors are considered the same if both the code
and text
of them are the same.
等于 报告当前误差 err
是否等于误差 target
。请注意,在 的 Error
默认比较逻辑中,如果 code
和 text
的 相同,则认为错误相同。
Example
|
|
func HasCode <-2.1.3
|
|
HasCode checks and reports whether err
has code
in its chaining errors.
HasCode 检查并报告其链接中是否有 err
code
错误。
func HasError <-2.1.3
|
|
HasError is alias of Is, which more easily understanding semantics.
HasError 是 Is 的别名,更容易理解语义。
func HasStack
|
|
HasStack checks and reports whether err
implemented interface gerror.IStack
.
HasStack 检查并报告是否 err
实现了接口 gerror.IStack
。
func Is <-2.1.0
|
|
Is reports whether current error err
has error target
in its chaining errors. It is just for implements for stdlib errors.Is from Go version 1.17.
报告当前错误 err
是否在其链接错误中具有错误 target
。它仅适用于 stdlib 错误的实现。来自 Go 版本 1.17。
Example
|
|
func New
|
|
New creates and returns an error which is formatted from given text.
New 创建并返回一个错误,该错误是从给定文本格式化的。
func NewCode
|
|
NewCode creates and returns an error that has error code and given text.
NewCode 创建并返回具有错误代码和给定文本的错误。
Example
|
|
func NewCodeSkip
|
|
NewCodeSkip creates and returns an error which has error code and is formatted from given text. The parameter skip
specifies the stack callers skipped amount.
NewCodeSkip 创建并返回一个错误,该错误具有错误代码,并且是根据给定文本格式化的。该参数 skip
指定堆栈调用方跳过的数量。
func NewCodeSkipf
|
|
NewCodeSkipf returns an error that has error code and formats as the given format and args. The parameter skip
specifies the stack callers skipped amount.
NewCodeSkipf 返回一个错误,该错误将错误代码和格式作为给定的格式和参数。该参数 skip
指定堆栈调用方跳过的数量。
func NewCodef
|
|
NewCodef returns an error that has error code and formats as the given format and args.
NewCodef 返回一个错误,该错误将错误代码和格式作为给定的格式和参数。
Example
|
|
func NewOption
|
|
NewOption creates and returns a custom error with Option. Deprecated: use NewWithOption instead.
NewOption 使用 Option 创建并返回自定义错误。已弃用:请改用 NewWithOption。
func NewSkip
|
|
NewSkip creates and returns an error which is formatted from given text. The parameter skip
specifies the stack callers skipped amount.
NewSkip 创建并返回一个错误,该错误是根据给定文本格式化的。该参数 skip
指定堆栈调用方跳过的数量。
func NewSkipf
|
|
NewSkipf returns an error that formats as the given format and args. The parameter skip
specifies the stack callers skipped amount.
NewSkipf 返回一个错误,该错误格式为给定的格式和 args。该参数 skip
指定堆栈调用方跳过的数量。
func NewWithOption <-2.6.0
|
|
NewWithOption creates and returns a custom error with Option. It is the senior usage for creating error, which is often used internally in framework.
NewWithOption 使用 Option 创建并返回自定义错误。它是创建错误的高级用法,通常在框架内部使用。
func Newf
|
|
Newf returns an error that formats as the given format and args.
Newf 返回一个错误,该错误格式为给定的格式和 args。
func Stack
|
|
Stack returns the stack callers as string. It returns the error string directly if the err
does not support stacks.
Stack 以字符串形式返回堆栈调用者。如果 不支持堆栈, err
则直接返回错误字符串。
func Unwrap <-2.1.0
|
|
Unwrap returns the next level error. It returns nil if current level error or the next level error is nil.
Unwrap 返回下一级错误。如果当前级别错误或下一级错误为 nil,则返回 nil。
func Wrap
|
|
Wrap wraps error with text. It returns nil if given err is nil. Note that it does not lose the error code of wrapped error, as it inherits the error code from it.
用文本换行错误。如果给定的 err 为 nil,则返回 nil。请注意,它不会丢失包装错误的错误代码,因为它从中继承了错误代码。
func WrapCode
|
|
WrapCode wraps error with code and text. It returns nil if given err is nil.
WrapCode 用代码和文本包装错误。如果给定的 err 为 nil,则返回 nil。
Example
|
|
func WrapCodeSkip
|
|
WrapCodeSkip wraps error with code and text. It returns nil if given err is nil. The parameter skip
specifies the stack callers skipped amount.
WrapCodeSkip 使用代码和文本包装错误。如果给定的 err 为 nil,则返回 nil。该参数 skip
指定堆栈调用方跳过的数量。
func WrapCodeSkipf
|
|
WrapCodeSkipf wraps error with code and text that is formatted with given format and args. It returns nil if given err is nil. The parameter skip
specifies the stack callers skipped amount.
WrapCodeSkipf 使用使用给定格式和参数格式化的代码和文本包装错误。如果给定的 err 为 nil,则返回 nil。该参数 skip
指定堆栈调用方跳过的数量。
func WrapCodef
|
|
WrapCodef wraps error with code and format specifier. It returns nil if given err
is nil.
WrapCodef 使用代码和格式说明符包装错误。如果给定 err
为 nil,则返回 nil。
Example
|
|
func WrapSkip
|
|
WrapSkip wraps error with text. It returns nil if given err is nil. The parameter skip
specifies the stack callers skipped amount. Note that it does not lose the error code of wrapped error, as it inherits the error code from it.
WrapSkip 用文本换行错误。如果给定的 err 为 nil,则返回 nil。该参数 skip
指定堆栈调用方跳过的数量。请注意,它不会丢失包装错误的错误代码,因为它从中继承了错误代码。
func WrapSkipf
|
|
WrapSkipf wraps error with text that is formatted with given format and args. It returns nil if given err is nil. The parameter skip
specifies the stack callers skipped amount. Note that it does not lose the error code of wrapped error, as it inherits the error code from it.
WrapSkipf 使用使用给定格式和 args 格式化的文本包装错误。如果给定的 err 为 nil,则返回 nil。该参数 skip
指定堆栈调用方跳过的数量。请注意,它不会丢失包装错误的错误代码,因为它从中继承了错误代码。
func Wrapf
|
|
Wrapf returns an error annotating err with a stack trace at the point Wrapf is called, and the format specifier. It returns nil if given err
is nil. Note that it does not lose the error code of wrapped error, as it inherits the error code from it.
Wrapf 返回一个错误,在调用 Wrapf 的点使用堆栈跟踪和格式说明符注释 err。如果给定 err
为 nil,则返回 nil。请注意,它不会丢失包装错误的错误代码,因为它从中继承了错误代码。
类型
type Error
|
|
Error is custom error for additional features.
错误是附加功能的自定义错误。
(*Error) Cause
|
|
Cause returns the root cause error.
Cause 返回根本原因错误。
(*Error) Code
|
|
Code returns the error code. It returns CodeNil if it has no error code.
代码返回错误代码。如果没有错误代码,则返回 CodeNil。
(*Error) Current
|
|
Current creates and returns the current level error. It returns nil if current level error is nil.
Current 创建并返回当前电平错误。如果当前电平误差为 nil,则返回 nil。
(*Error) Equal
|
|
Equal reports whether current error err
equals to error target
. Please note that, in default comparison for Error
, the errors are considered the same if both the code
and text
of them are the same.
等于 报告当前误差 err
是否等于误差 target
。请注意,在 Error
的默认比较中,如果 code
和 text
的 和 相同,则认为错误相同。
(*Error) Error
|
|
Error implements the interface of Error, it returns all the error as string.
Error 实现了 Error 的接口,它以字符串的形式返回所有错误。
(*Error) Format
|
|
Format formats the frame according to the fmt.Formatter interface.
格式根据 fmt 格式化帧。格式化程序界面。
%v, %s : Print all the error string; %-v, %-s : Print current level error string; %+s : Print full stack error list; %+v : Print the error string and full stack error list
%v, %s : 打印所有错误字符串;%-v, %-s : 打印当前电平错误字符串;%+s : 打印全栈错误列表;%+v:打印错误字符串和全栈错误列表
(*Error) Is
|
|
Is reports whether current error err
has error target
in its chaining errors. It is just for implements for stdlib errors.Is from Go version 1.17.
报告当前错误 err
是否在其链接错误中具有错误 target
。它仅适用于 stdlib 错误的实现。来自 Go 版本 1.17。
(Error) MarshalJSON
|
|
MarshalJSON implements the interface MarshalJSON for json.Marshal. Note that do not use pointer as its receiver here.
MarshalJSON 实现 json 的接口 MarshalJSON。元帅。请注意,此处不要使用指针作为其接收器。
(*Error) SetCode
|
|
SetCode updates the internal code with given code.
SetCode 使用给定的代码更新内部代码。
(*Error) Stack
|
|
Stack returns the error stack information as string.
Stack 以字符串形式返回错误堆栈信息。
(*Error) Unwrap
|
|
Unwrap is alias of function Next
. It is just for implements for stdlib errors.Unwrap from Go version 1.17.
Unwrap 是函数 Next
的别名。它仅适用于 stdlib 错误的实现。从 Go 版本 1.17 解包。
type ICause <-2.1.3
|
|
ICause is the interface for Cause feature.
ICause 是 Cause 功能的接口。
type ICode <-2.1.3
|
|
ICode is the interface for Code feature.
ICode 是代码功能的接口。
type ICurrent <-2.1.3
|
|
ICurrent is the interface for Current feature.
ICurrent 是 Current 功能的接口。
type IEqual <-2.1.3
|
|
IEqual is the interface for Equal feature.
IEqual 是 Equal 功能的接口。
type IIs <-2.1.3
|
|
IIs is the interface for Is feature.
IIs 是 Is 功能的接口。
type IStack <-2.1.3
|
|
IStack is the interface for Stack feature.
IStack 是堆栈功能的接口。
type IUnwrap <-2.1.3
|
|
IUnwrap is the interface for Unwrap feature.
IUnwrap 是 Unwrap 功能的接口。
type Option
|
|
Option is option for creating error.
选项是创建错误的选项。