errwrap is a package for Go that formalizes the pattern of wrapping errors and
checking if an error contains another error.
.
There is a common pattern in Go of taking a returned error value and then
wrapping it (such as with fmt.Errorf) before returning it. The problem with
this pattern is that you completely lose the original error structure.
.
Arguably the correct approach is that you should make a custom structure
implementing the error interface, and have the original error as a field on
that structure, such as this example. This is a good approach, but you have to
know the entire chain of possible rewrapping that happens, when you might just
care about one.
.
errwrap formalizes this pattern (it doesn't matter what approach you use above)
by giving a single interface for wrapping errors, checking if a specific error
is wrapped, and extracting that error.
.
This package contains the source.
Installed Size: 24.6 kB
Architectures: all