| 1234567891011121314151617181920212223242526272829 |
- package errutil
- import (
- "fmt"
- "golang.org/x/xerrors"
- )
- // Wrap is a simple wrapper around Errorf that is doing error wrapping. You can read how that works in
- // https://godoc.org/golang.org/x/xerrors#Errorf but its API is very implicit which is a reason for this wrapper.
- // There is also a discussion (https://github.com/golang/go/issues/29934) where many comments make arguments for such
- // wrapper so hopefully it will be added in the standard lib later.
- func Wrap(message string, err error) error {
- if err == nil {
- return nil
- }
- return xerrors.Errorf("%v: %w", message, err)
- }
- // Wrapf is a simple wrapper around Errorf that is doing error wrapping
- // Wrapf allows you to send a format and args instead of just a message.
- func Wrapf(err error, message string, a ...interface{}) error {
- if err == nil {
- return nil
- }
- return Wrap(fmt.Sprintf(message, a...), err)
- }
|