This commit is contained in:
2018-12-13 20:33:29 +01:00
parent 7bca21522a
commit d0d888c160
63 changed files with 7546 additions and 2 deletions

48
vendor/github.com/crewjam/errset/errset.go generated vendored Normal file
View File

@@ -0,0 +1,48 @@
package errset
// ErrSet represents a list of errors.
//
// Example:
//
// errs := ErrSet{}
// for ... {
// if err := DoSomething(i); err != nil {
// errs = append(errs, err)
// }
// }
// return errs.ReturnValue()
//
type ErrSet []error
// ReturnValue returns the ErrSet object if at least one non-nill error is
// present or nil if there are no errors
func (es ErrSet) ReturnValue() error {
rv := ErrSet{}
for _, err := range es {
if err != nil {
rv = append(rv, err)
}
}
if len(rv) == 0 {
return nil
}
return rv
}
// Error implements the error interface. It returns each error in the list
// concatenated together with "; ".
func (es ErrSet) Error() string {
rv := ""
errCount := 0
for _, err := range es {
if err == nil {
continue
}
if errCount != 0 {
rv += "; "
}
rv += err.Error()
errCount++
}
return rv
}