summaryrefslogtreecommitdiff
path: root/vendor/codeberg.org/gruf/go-errors/v2/errors.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/codeberg.org/gruf/go-errors/v2/errors.go')
-rw-r--r--vendor/codeberg.org/gruf/go-errors/v2/errors.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/vendor/codeberg.org/gruf/go-errors/v2/errors.go b/vendor/codeberg.org/gruf/go-errors/v2/errors.go
new file mode 100644
index 000000000..180fc6799
--- /dev/null
+++ b/vendor/codeberg.org/gruf/go-errors/v2/errors.go
@@ -0,0 +1,36 @@
+package errors
+
+import (
+ "fmt"
+)
+
+// New returns a new error created from message.
+func New(msg string) error {
+ return create(msg, nil)
+}
+
+// Newf returns a new error created from message format and args.
+func Newf(msgf string, args ...interface{}) error {
+ return create(fmt.Sprintf(msgf, args...), nil)
+}
+
+// Wrap will wrap supplied error within a new error created from message.
+func Wrap(err error, msg string) error {
+ return create(msg, err)
+}
+
+// Wrapf will wrap supplied error within a new error created from message format and args.
+func Wrapf(err error, msgf string, args ...interface{}) error {
+ return create(fmt.Sprintf(msgf, args...), err)
+}
+
+// Stacktrace fetches a stored stacktrace of callers from an error, or returns nil.
+func Stacktrace(err error) Callers {
+ var callers Callers
+ if err, ok := err.(interface { //nolint
+ Stacktrace() Callers
+ }); ok {
+ callers = err.Stacktrace()
+ }
+ return callers
+}