pub enum ProximaError {
Show 23 variants
Upstream(String),
Timeout(Duration),
RateLimited,
NoData,
Config(String),
Io(Error),
Decode(String),
Encode(String),
Body(String),
NotFound(String),
Forbidden(String),
Registry(String),
RetriesExhausted {
attempts: usize,
last: String,
},
Record(String),
ReplayMiss {
fingerprint: String,
},
DecodeKind(DecodeError),
EncodeKind(EncodeError),
UpstreamKind(UpstreamError),
ConfigKind(ConfigError),
BodyKind(BodyError),
NotFoundKind(NotFoundError),
RegistryKind(RegistryError),
RecordKind(RecordError),
}Variants§
Upstream(String)
Legacy String-payload variants. Construct via ProximaError::Decode(...)
today; migrate to ProximaError::DecodeKind(DecodeError::...) over time.
Timeout(Duration)
RateLimited
NoData
Config(String)
Io(Error)
Decode(String)
Encode(String)
Body(String)
NotFound(String)
Forbidden(String)
A deliberate refusal, not a failure — the payload is the response
body verbatim (e.g. a filter predicate’s RejectMode::Drop, which
renders as 403 with this payload as the body).
Registry(String)
RetriesExhausted
Record(String)
ReplayMiss
DecodeKind(DecodeError)
Typed payload variants. Carry sub-enum kinds with concrete fields
(e.g. Decode(format!("missing field 'name'")) becomes
DecodeKind(DecodeError::MissingField { field: "name" })). Match
callers can now inspect the kind without parsing strings.
EncodeKind(EncodeError)
UpstreamKind(UpstreamError)
ConfigKind(ConfigError)
BodyKind(BodyError)
NotFoundKind(NotFoundError)
RegistryKind(RegistryError)
RecordKind(RecordError)
Implementations§
Source§impl ProximaError
impl ProximaError
Sourcepub fn is_retryable(&self) -> bool
pub fn is_retryable(&self) -> bool
Whether this error class is worth retrying. Covers both legacy and
typed variants — the heuristic matches Upstream* (transient I/O),
Timeout, Body* (worker churn), and (under std) Io.
Trait Implementations§
Source§impl Debug for ProximaError
impl Debug for ProximaError
Source§impl Display for ProximaError
impl Display for ProximaError
Source§impl Error for ProximaError
impl Error for ProximaError
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()