pkg/errors/error.go

35 lines
569 B
Go
Raw Normal View History

2023-09-18 15:58:52 +08:00
package errors
2023-09-18 15:51:20 +08:00
import (
"fmt"
)
func WarpErrs(es ...error) (err error) {
for idx, e := range es {
if idx == 0 {
err = fmt.Errorf("[%d]: %w", idx, e)
continue
}
err = fmt.Errorf("%s\n[%d]: %w", err.Error(), idx, e)
}
return
}
const (
WarpNameFormat = "err[%s]"
)
func WarpErrsWithName(name string, es ...error) (err error) {
if len(es) == 0 {
return nil
}
for idx, e := range es {
if idx == 0 {
err = fmt.Errorf(WarpNameFormat+" [%d]: %w", name, idx, e)
continue
}
err = fmt.Errorf("%s\n[%d]: %w", err.Error(), idx, e)
}
return
}