pub trait Host {
// Required methods
fn now(&mut self) -> Result<Instant>;
fn resolution(&mut self) -> Result<Duration>;
fn subscribe_instant(&mut self, when: Instant) -> Result<Resource<Pollable>>;
fn subscribe_duration(
&mut self,
when: Duration,
) -> Result<Resource<Pollable>>;
}Required Methods§
Sourcefn now(&mut self) -> Result<Instant>
fn now(&mut self) -> Result<Instant>
Read the current value of the clock.
The clock is monotonic, therefore calling this function repeatedly will produce a sequence of non-decreasing values.
For completeness, this function traps if it’s not possible to represent
the value of the clock in an instant. Consequently, implementations
should ensure that the starting time is low enough to avoid the
possibility of overflow in practice.
Sourcefn resolution(&mut self) -> Result<Duration>
fn resolution(&mut self) -> Result<Duration>
Query the resolution of the clock. Returns the duration of time corresponding to a clock tick.
Sourcefn subscribe_instant(&mut self, when: Instant) -> Result<Resource<Pollable>>
fn subscribe_instant(&mut self, when: Instant) -> Result<Resource<Pollable>>
Create a pollable which will resolve once the specified instant
has occurred.
Sourcefn subscribe_duration(&mut self, when: Duration) -> Result<Resource<Pollable>>
fn subscribe_duration(&mut self, when: Duration) -> Result<Resource<Pollable>>
Create a pollable that will resolve after the specified duration has
elapsed from the time this function is invoked.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
Source§impl<_T: Host + ?Sized> Host for &mut _T
impl<_T: Host + ?Sized> Host for &mut _T
Source§fn now(&mut self) -> Result<Instant>
fn now(&mut self) -> Result<Instant>
Read the current value of the clock.
The clock is monotonic, therefore calling this function repeatedly will produce a sequence of non-decreasing values.
For completeness, this function traps if it’s not possible to represent
the value of the clock in an instant. Consequently, implementations
should ensure that the starting time is low enough to avoid the
possibility of overflow in practice.
Source§fn resolution(&mut self) -> Result<Duration>
fn resolution(&mut self) -> Result<Duration>
Query the resolution of the clock. Returns the duration of time corresponding to a clock tick.