Trait DynProvider

Source
trait DynProvider:
    DynClone
    + Send
    + Sync
    + 'static {
    // Required methods
    fn dyn_now(&self) -> Instant;
    fn dyn_wallclock(&self) -> SystemTime;
    fn dyn_sleep(
        &self,
        duration: Duration,
    ) -> Pin<Box<dyn Future<Output = ()> + Send + 'static>>;
    fn dyn_block_advance(&self, reason: String);
    fn dyn_release_advance(&self, _reason: String);
    fn dyn_allow_one_advance(&self, duration: Duration);
    fn dyn_now_coarse(&self) -> CoarseInstant;
}
Expand description

Object-safe version of SleepProvider and CoarseTimeProvider

The methods mirror those in SleepProvider and CoarseTimeProvider

Required Methods§

Source

fn dyn_now(&self) -> Instant

Source

fn dyn_wallclock(&self) -> SystemTime

Source

fn dyn_sleep( &self, duration: Duration, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'static>>

Source

fn dyn_block_advance(&self, reason: String)

Source

fn dyn_release_advance(&self, _reason: String)

Source

fn dyn_allow_one_advance(&self, duration: Duration)

Source

fn dyn_now_coarse(&self) -> CoarseInstant

Implementors§