3 Star 0 Fork 0

neuro-netw0rk/server-golib

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
文件
Clone or Download
errors.go 1.56 KB
Copy Edit Raw Blame History
LeoWang authored 2024-12-17 17:34 +08:00 . 增加message和db的一些封装
package message
import (
"fmt"
"github.com/pkg/errors"
)
type Error struct {
Code int `json:"-"`
Msg string `json:"msg"`
Args []interface{} `json:"-"`
}
func NewMessageError(message string) Error {
return Error{
Msg: message,
}
}
func NewBaseError(code int, message string, args ...interface{}) *Error {
return &Error{
Code: code,
Msg: message,
Args: args,
}
}
func NewError(code int, message, userMsg string) Error {
return Error{
Code: code,
Msg: message,
}
}
func (err Error) Error() string {
return err.Msg
}
func (err Error) WithArgs(args ...interface{}) Error {
err.Args = args
return err
}
func (err Error) Sprintf(v ...interface{}) Error {
err.Msg = fmt.Sprintf(err.Msg+": %v", v...)
return err
}
func (err Error) Equal(e error) bool {
switch errors.Cause(e).(type) {
case Error:
return err.Code == errors.Cause(e).(Error).Code
default:
return false
}
}
func (err Error) WrapPrint(core error, message string, user ...interface{}) error {
if core == nil {
return nil
}
ret := err
SetErrPrintfMsg(&ret, core)
return errors.Wrap(ret, message)
}
func (err Error) WrapPrintf(core error, format string, message ...interface{}) error {
if core == nil {
return nil
}
ret := err
SetErrPrintfMsg(&ret, core)
return errors.Wrap(ret, fmt.Sprintf(format, message...))
}
func (err Error) Wrap(core error) error {
if core == nil {
return nil
}
msg := err.Msg
err.Msg = core.Error()
return errors.Wrap(err, msg)
}
func SetErrPrintfMsg(err *Error, v ...interface{}) {
err.Msg = fmt.Sprintf(err.Msg+": %v", v...)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/neuro-netw0rk/server-golib.git
git@gitee.com:neuro-netw0rk/server-golib.git
neuro-netw0rk
server-golib
server-golib
v0.0.5-beta2

Search