You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Go 1.26 introduces errors.AsType, a generic helper that makes typed error extraction more concise and safer than the classic errors.As(err, &target) pattern without reflect.
cockroachdb/errors is widely used as a drop-in replacement for the standard library errors for wrapping, stack traces, and utilities. Adding an AsType-style API (or mirroring stdlib when building with Go 1.26+) would:
reduce boilerplate (var t *T; if errors.As(err, &t) { ... })
improve readability and reduce misuse
align the package with modern Go idioms (generic helpers)
help projects keep a single “errors surface” without mixing stdlib + cockroachdb/errors
Request
Add errors.AsType to this package with semantics matching Go 1.26 errors.AsType.
On Go 1.26+: delegate to stdlib errors.AsType.
Use go:build constraints to keep compatibility clean.
//go:build go1.26package errors
import (
sterrors "errors"
)
// AsType delegates to the standard library implementation on Go 1.26+.funcAsType[Tany](errerror) (T, bool) {
return sterrors.AsType[T](err)
}
Activity