pub trait ClassifyEos {
    type FailureClass;
    // Required methods
    fn classify_eos(
        self,
        trailers: Option<&HeaderMap>,
    ) -> Result<(), Self::FailureClass>;
    fn classify_error<E>(self, error: &E) -> Self::FailureClass
       where E: Display + 'static;
    // Provided method
    fn map_failure_class<F, NewClass>(self, f: F) -> MapFailureClass<Self, F>
       where Self: Sized,
             F: FnOnce(Self::FailureClass) -> NewClass { ... }
}Expand description
Trait for classifying end of streams (EOS) as either success or failure.
Required Associated Types§
Sourcetype FailureClass
 
type FailureClass
The type of failure classifications.
Required Methods§
Sourcefn classify_eos(
    self,
    trailers: Option<&HeaderMap>,
) -> Result<(), Self::FailureClass>
 
fn classify_eos( self, trailers: Option<&HeaderMap>, ) -> Result<(), Self::FailureClass>
Perform the classification from response trailers.
Sourcefn classify_error<E>(self, error: &E) -> Self::FailureClasswhere
    E: Display + 'static,
 
fn classify_error<E>(self, error: &E) -> Self::FailureClasswhere
    E: Display + 'static,
Classify an error.
Errors are always errors (doh) but sometimes it might be useful to have multiple classes of errors. A retry policy might allow retrying some errors and not others.
Provided Methods§
Sourcefn map_failure_class<F, NewClass>(self, f: F) -> MapFailureClass<Self, F>
 
fn map_failure_class<F, NewClass>(self, f: F) -> MapFailureClass<Self, F>
Transform the failure classification using a function.
See ClassifyResponse::map_failure_class for more details.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.