pub struct ClientError { /* private fields */ }Expand description
Client error type for all XRPC client operations
Implementations§
Source§impl ClientError
impl ClientError
Sourcepub fn new(kind: ClientErrorKind, source: Option<BoxError>) -> Self
pub fn new(kind: ClientErrorKind, source: Option<BoxError>) -> Self
Create a new error with the given kind and optional source
Sourcepub fn kind(&self) -> &ClientErrorKind
pub fn kind(&self) -> &ClientErrorKind
Get the error kind
Sourcepub fn source_err(&self) -> Option<&BoxError>
pub fn source_err(&self) -> Option<&BoxError>
Get the source error if present
Sourcepub fn with_context(self, context: impl Into<SmolStr>) -> Self
pub fn with_context(self, context: impl Into<SmolStr>) -> Self
Add context to this error
Sourcepub fn with_details(self, details: impl Into<SmolStr>) -> Self
pub fn with_details(self, details: impl Into<SmolStr>) -> Self
Add details to this error
Sourcepub fn with_location(self, location: impl Into<SmolStr>) -> Self
pub fn with_location(self, location: impl Into<SmolStr>) -> Self
Add location to this error
Sourcepub fn append_context(self, additional: impl AsRef<str>) -> Self
pub fn append_context(self, additional: impl AsRef<str>) -> Self
Append additional context to existing context string.
If context already exists, appends with “: “ separator. If no context exists, sets it directly.
Sourcepub fn for_nsid(self, nsid: &str) -> Self
pub fn for_nsid(self, nsid: &str) -> Self
Add NSID context for XRPC operations.
Appends the NSID in brackets to existing context, e.g. "network timeout: [com.atproto.repo.getRecord]".
Sourcepub fn for_collection(self, operation: &str, collection_nsid: &str) -> Self
pub fn for_collection(self, operation: &str, collection_nsid: &str) -> Self
Add collection context for record operations.
Use this when a record operation fails to indicate the target collection.
Sourcepub fn invalid_request(msg: impl Into<SmolStr>) -> Self
pub fn invalid_request(msg: impl Into<SmolStr>) -> Self
Create an invalid request error
Sourcepub fn http(status: StatusCode, body: Option<Bytes>) -> Self
pub fn http(status: StatusCode, body: Option<Bytes>) -> Self
Create an HTTP error with status code and optional body
Sourcepub fn identity_resolution(source: impl Error + Send + Sync + 'static) -> Self
pub fn identity_resolution(source: impl Error + Send + Sync + 'static) -> Self
Create an identity resolution error
Trait Implementations§
Source§impl Debug for ClientError
impl Debug for ClientError
Source§impl Diagnostic for ClientError
impl Diagnostic for ClientError
Source§fn help(&self) -> Option<Box<dyn Display + '_>>
fn help(&self) -> Option<Box<dyn Display + '_>>
Diagnostic. Do you have any
advice for the poor soul who’s just run into this issue?Source§fn diagnostic_source<'a>(&'a self) -> Option<&'a dyn Diagnostic>
fn diagnostic_source<'a>(&'a self) -> Option<&'a dyn Diagnostic>
Source§fn code<'a>(&'a self) -> Option<Box<dyn Display + 'a>>
fn code<'a>(&'a self) -> Option<Box<dyn Display + 'a>>
Diagnostic. Ideally also globally unique, and documented
in the toplevel crate’s documentation for easy searching. Rust path
format (foo::bar::baz) is recommended, but more classic codes like
E0123 or enums will work just fine.Source§fn severity(&self) -> Option<Severity>
fn severity(&self) -> Option<Severity>
ReportHandlers to change the display format
of this diagnostic. Read moreSource§fn url<'a>(&'a self) -> Option<Box<dyn Display + 'a>>
fn url<'a>(&'a self) -> Option<Box<dyn Display + 'a>>
Diagnostic.Source§fn source_code(&self) -> Option<&dyn SourceCode>
fn source_code(&self) -> Option<&dyn SourceCode>
Diagnostic’s Diagnostic::labels to.Source§fn labels(&self) -> Option<Box<dyn Iterator<Item = LabeledSpan> + '_>>
fn labels(&self) -> Option<Box<dyn Iterator<Item = LabeledSpan> + '_>>
Diagnostic’s Diagnostic::source_codeDiagnostics.Source§impl Display for ClientError
impl Display for ClientError
Source§impl Error for ClientError
impl Error for ClientError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Source§impl From<AuthError> for ClientError
impl From<AuthError> for ClientError
Source§impl From<DecodeError<Error>> for ClientError
Available on crate feature std only.
impl From<DecodeError<Error>> for ClientError
std only.Source§fn from(e: DecodeError<Error>) -> Self
fn from(e: DecodeError<Error>) -> Self
Source§impl From<DecodeError<HttpError>> for ClientError
impl From<DecodeError<HttpError>> for ClientError
Source§fn from(e: DecodeError<HttpError>) -> Self
fn from(e: DecodeError<HttpError>) -> Self
Source§impl From<DecodeError<Infallible>> for ClientError
impl From<DecodeError<Infallible>> for ClientError
Source§fn from(e: DecodeError<Infallible>) -> Self
fn from(e: DecodeError<Infallible>) -> Self
Source§impl From<DecodeError> for ClientError
impl From<DecodeError> for ClientError
Source§fn from(e: DecodeError) -> Self
fn from(e: DecodeError) -> Self
Source§impl From<EncodeError> for ClientError
impl From<EncodeError> for ClientError
Source§fn from(e: EncodeError) -> Self
fn from(e: EncodeError) -> Self
Source§impl From<Error> for ClientError
Available on crate feature reqwest-client only.
impl From<Error> for ClientError
reqwest-client only.Source§impl From<Error> for ClientError
impl From<Error> for ClientError
Source§impl From<HttpError> for ClientError
impl From<HttpError> for ClientError
Source§impl From<ParseError> for ClientError
impl From<ParseError> for ClientError
Source§fn from(e: ParseError) -> Self
fn from(e: ParseError) -> Self
Source§impl From<SessionStoreError> for ClientError
impl From<SessionStoreError> for ClientError
Source§fn from(e: SessionStoreError) -> Self
fn from(e: SessionStoreError) -> Self
Auto Trait Implementations§
impl !Freeze for ClientError
impl !RefUnwindSafe for ClientError
impl Send for ClientError
impl Sync for ClientError
impl Unpin for ClientError
impl UnsafeUnpin for ClientError
impl !UnwindSafe for ClientError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.