lib/model, lib/util: Replace IsComplete with NoRestartErr (ref #6947) (#7126)

This commit is contained in:
Simon Frei
2020-11-18 13:43:57 +01:00
committed by GitHub
parent 53fd54e308
commit e11b309379
2 changed files with 34 additions and 12 deletions
+25
View File
@@ -246,6 +246,31 @@ func (e *FatalErr) Is(target error) bool {
return target == suture.ErrTerminateSupervisorTree
}
// NoRestartErr wraps the given error err (which may be nil) to make sure that
// `errors.Is(err, suture.ErrDoNotRestart) == true`.
func NoRestartErr(err error) error {
if err == nil {
return suture.ErrDoNotRestart
}
return &noRestartErr{err}
}
type noRestartErr struct {
err error
}
func (e *noRestartErr) Error() string {
return e.err.Error()
}
func (e *noRestartErr) Unwrap() error {
return e.err
}
func (e *noRestartErr) Is(target error) bool {
return target == suture.ErrDoNotRestart
}
type ExitStatus int
const (