Trait rama::http::layer::retry::managed::CloneInput

pub trait CloneInput<S>:
    Sealed<(S,)>
    + Send
    + Sync
    + 'static {
    // Required method
    fn clone_input(
        &self,
        ctx: &Context<S>,
        req: &Request<RetryBody>,
    ) -> Option<(Context<S>, Request<RetryBody>)>;
}
Expand description

A trait that is used to umbrella-cover all possible implementation kinds for the cloning functionality.

Required Methods§

fn clone_input( &self, ctx: &Context<S>, req: &Request<RetryBody>, ) -> Option<(Context<S>, Request<RetryBody>)>

Clone the input request if necessary.

See Policy::clone_input for more details.

Implementors§

§

impl<F, S> CloneInput<S> for F
where F: Fn(&Context<S>, &Request<RetryBody>) -> Option<(Context<S>, Request<RetryBody>)> + Send + Sync + 'static,

§

impl<S> CloneInput<S> for Undefined
where S: Clone,