diff options
| author | EuAndreh <eu@euandre.org> | 2024-10-17 13:10:11 -0300 |
|---|---|---|
| committer | EuAndreh <eu@euandre.org> | 2024-10-17 13:10:11 -0300 |
| commit | 2a848c002a6d7863ffa25434d1ce6ccdd14d981f (patch) | |
| tree | 37251d6fc16cc375d8d80f446b15944e429b1b21 /src | |
| parent | src/gobang.go: ValidSQLTablePrefix() -> ValidateSQLTablePrefix() (diff) | |
| download | gobang-2a848c002a6d7863ffa25434d1ce6ccdd14d981f.tar.gz gobang-2a848c002a6d7863ffa25434d1ce6ccdd14d981f.tar.xz | |
src/gobang.go: Add WrapErrors()
Diffstat (limited to 'src')
| -rw-r--r-- | src/gobang.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gobang.go b/src/gobang.go index dd638f2..a35a57e 100644 --- a/src/gobang.go +++ b/src/gobang.go @@ -71,6 +71,25 @@ func ValidateSQLTablePrefix(prefix string) error { return nil } +func WrapErrors(errs ...error) error { + slices.Reverse(errs) + var out error + for _, err := range errs { + if err != nil { + if out == nil { + out = err + } else { + out = fmt.Errorf( + "error %w on top of %w", + err, + out, + ) + } + } + } + return out +} + func SomeError(errs ...error) error { for _, err := range errs { if err != nil { |
