...
1 package multierror
2
3 import (
4 "fmt"
5
6 "github.com/hashicorp/errwrap"
7 )
8
9
10
11
12
13
14
15 func Prefix(err error, prefix string) error {
16 if err == nil {
17 return nil
18 }
19
20 format := fmt.Sprintf("%s {{err}}", prefix)
21 switch err := err.(type) {
22 case *Error:
23
24 if err == nil {
25 err = new(Error)
26 }
27
28
29 for i, e := range err.Errors {
30 err.Errors[i] = errwrap.Wrapf(format, e)
31 }
32
33 return err
34 default:
35 return errwrap.Wrapf(format, err)
36 }
37 }
38
View as plain text