feat: 支持使用 super.RegError 函数为错误注册全局错误码,使用 super.GetErrorCode 根据错误获取全局错误码
This commit is contained in:
parent
31ad0ee4fb
commit
1dcbd0a220
|
@ -0,0 +1,22 @@
|
|||
package super
|
||||
|
||||
import (
|
||||
"errors"
|
||||
)
|
||||
|
||||
var errorMapper = make(map[error]int)
|
||||
|
||||
// RegError 通过错误码注册错误,返回错误的引用
|
||||
func RegError(code int, message string) error {
|
||||
if code == 0 {
|
||||
panic("error code can not be 0")
|
||||
}
|
||||
err := errors.New(message)
|
||||
errorMapper[err] = code
|
||||
return err
|
||||
}
|
||||
|
||||
// GetErrorCode 通过错误引用获取错误码,如果错误不存在则返回 0
|
||||
func GetErrorCode(err error) int {
|
||||
return errorMapper[err]
|
||||
}
|
Loading…
Reference in New Issue