pub enum SdkError {
Connection {
description: String,
},
Protocol {
description: String,
},
Serialization {
description: String,
},
TypeValidation {
description: String,
},
Backpressure {
reason: String,
},
Conversation {
conversation_id: String,
description: String,
},
Store {
description: String,
},
}Expand description
Error taxonomy returned by the Rust SDK API surface.
The SDK keeps application code independent from transport, protocol framing, and core implementation error types. Concrete embedded and remote adapters map their internal failures into these variants.
Clone is derived so a failure can be both RETAINED and RETURNED at the same
seam. A store failure that bricks a participant handle is exactly that shape:
the error travels to the caller of the failing operation, while a copy stays
behind as the reason every later call reports
RemoteParticipantError::StateUnavailable. Without it the cause is
observable exactly once and only by whoever happened to make the failing
call.
Variants§
Connection
Establishing, keeping, or recovering a client connection failed.
Protocol
Encoding, decoding, or interpreting SDK-internal protocol state failed.
Serialization
Serialising an outbound value or deserialising an inbound value failed.
TypeValidation
A typed message did not satisfy the schema declared for its channel.
Backpressure
A publish operation encountered application-visible backpressure.
Conversation
A conversation operation failed.
Fields
Store
Persisted subscription or recovery state could not be read or written.
Trait Implementations§
impl Eq for SdkError
Source§impl Error for SdkError
impl Error for SdkError
1.30.0 · 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()
impl StructuralPartialEq for SdkError
Auto Trait Implementations§
impl Freeze for SdkError
impl RefUnwindSafe for SdkError
impl Send for SdkError
impl Sync for SdkError
impl Unpin for SdkError
impl UnsafeUnpin for SdkError
impl UnwindSafe for SdkError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.