pub trait InfraMonotonic: Sized {
    type Instant: Ord + Copy + Add<Self::Duration, Output = Self::Instant> + Sub<Self::Duration, Output = Self::Instant> + Sub<Self::Instant, Output = Self::Duration>;
    type Duration: PartialOrd + Copy + Add<Self::Duration, Output = Self::Duration> + Debug;

    const ZERO_INSTANT: Self::Instant;
    const ZERO_DURATION: Self::Duration;

    fn checked_sub(a: Self::Instant, b: Self::Instant) -> Option<Self::Duration>;
    fn create_span(freq: u32, p: u32, t: u32) -> Span<Self::Duration>;
}

Required Associated Types§

Required Associated Constants§

Required Methods§

Implementations on Foreign Types§

Implementors§