matterbridge/vendor/github.com/wiggin77/merror/append.go
Wim d16645c952
Update mattermost library (#2152)
* Update mattermost library

* Fix linting
2024-05-24 23:08:09 +02:00

26 lines
529 B
Go

package merror
// Append an error to a multi-error.
// If `to` is `nil` it will just assign `err`.
// If `to` is not a `*MError` it will create a new `*MError` and append both errors.
// If `err` is `nil` it will just return `to`.
// Otherwise it will just append to the existing `*MError`.
func Append(to, err error) error {
if err == nil {
return to
}
if to == nil {
return err
}
if merr, ok := to.(*MError); ok {
merr.Append(err)
return merr
}
merr := New()
merr.Append(to)
merr.Append(err)
return merr
}