···1717//
1818// # Errors
1919//
2020-// You can use [ErrCannotParse] to check if there is an error while parsing arguments.
2020+// You can use [IsErrCannotParse] to check if there is an error while parsing arguments.
2121//
2222// var err error
2323-// if errors.Is(err, atproto.ErrCannotParse{}) {
2323+// if atproto.IsErrCannotParse(err) {
2424// // err comes from an arg
2525// }
2626//
+11-39
atproto/errors.go
···55 "net/http"
66)
7788-// ErrCannotParse is a generic error containing a cannot parse error like.
99-//
1010-// See [AsCannotParse] to converts an error into [ErrCannotParse].
1111-// The standard [errors.As] does not work: this is mainly a meta error.
1212-type ErrCannotParse struct {
1313- inner error
1414-}
1515-1616-func (err ErrCannotParse) Error() string {
1717- return err.inner.Error()
1818-}
1919-2020-func (err ErrCannotParse) Unwrap() error {
2121- return err.inner
2222-}
2323-2424-func (err ErrCannotParse) Is(e error) bool {
2525- if _, ok := e.(ErrCannotParse); ok {
2626- return true
2727- }
2828- return errors.Is(e, ErrCannotParseHandle) ||
2929- errors.Is(e, ErrCannotParseRecordKey) ||
3030- errors.Is(e, ErrCannotParseURI) ||
3131- errors.Is(e, ErrCannotParseCID) ||
3232- errors.Is(e, ErrCannotParseDID) ||
3333- errors.Is(e, ErrCannotParseNSID) ||
3434- errors.Is(e, ErrCannotParseTID) ||
3535- errors.Is(e, ErrCannotParseTime)
3636-}
3737-3838-// AsCannotParse converts an error into [ErrCannotParse].
3939-//
4040-// Panics if [ErrCannotParse.Is] returns false.
4141-func AsCannotParse(err error) ErrCannotParse {
4242- if !errors.Is(err, ErrCannotParse{}) {
4343- panic("cannot convert " + err.Error() + " to parse error")
4444- }
4545- return ErrCannotParse{err}
88+// IsErrCannotParse returns true if the error is a cannot parse error like.
99+func IsErrCannotParse(err error) bool {
1010+ return errors.Is(err, ErrCannotParseHandle) ||
1111+ errors.Is(err, ErrCannotParseRecordKey) ||
1212+ errors.Is(err, ErrCannotParseURI) ||
1313+ errors.Is(err, ErrCannotParseCID) ||
1414+ errors.Is(err, ErrCannotParseDID) ||
1515+ errors.Is(err, ErrCannotParseNSID) ||
1616+ errors.Is(err, ErrCannotParseTID) ||
1717+ errors.Is(err, ErrCannotParseTime)
4618}
47194820// ErrDIDNotFound indicates that the [DID] was not found.
···5325}
54265527func (err ErrDIDNotFound) Error() string {
5656- return err.inner.Error()
2828+ return "did not found: " + err.inner.Error()
5729}
58305931func (err ErrDIDNotFound) Unwrap() error {