rama_core/layer/timeout/
error.rs

1//! Default Error type for Timeout middleware.
2
3use std::{error, fmt, time::Duration};
4
5/// The timeout elapsed.
6#[derive(Debug, Clone, Default)]
7pub struct Elapsed(Duration);
8
9impl Elapsed {
10    /// Construct a new elapsed error
11    pub(crate) const fn new(duration: Duration) -> Self {
12        Self(duration)
13    }
14}
15
16impl fmt::Display for Elapsed {
17    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
18        write!(f, "timeout elapsed after {:?}", self.0)
19    }
20}
21
22impl error::Error for Elapsed {}