pub struct Instant { /* private fields */ }
Expand description
A measurement of a monotonically nondecreasing clock.
This corresponds to std::time::Instant
.
This Instant
has no now
or elapsed
methods. To obtain the current
time or measure the duration to the current time, first obtain a
MonotonicClock
, and then call MonotonicClock::now
or
MonotonicClock::elapsed
instead.
Implementations§
source§impl Instant
impl Instant
sourcepub const fn from_std(std: Instant) -> Self
pub const fn from_std(std: Instant) -> Self
Constructs a new instance of Self
from the given
std::time::Instant
.
sourcepub fn duration_since(&self, earlier: Self) -> Duration
pub fn duration_since(&self, earlier: Self) -> Duration
Returns the amount of time elapsed from another instant to this one.
This corresponds to std::time::Instant::duration_since
.
sourcepub fn checked_duration_since(&self, earlier: Self) -> Option<Duration>
pub fn checked_duration_since(&self, earlier: Self) -> Option<Duration>
Returns the amount of time elapsed from another instant to this one, or None if that instant is later than this one.
This corresponds to std::time::Instant::checked_duration_since
.
sourcepub fn saturating_duration_since(&self, earlier: Self) -> Duration
pub fn saturating_duration_since(&self, earlier: Self) -> Duration
Returns the amount of time elapsed from another instant to this one, or zero duration if that instant is later than this one.
This corresponds to std::time::Instant::saturating_duration_since
.
sourcepub fn checked_add(&self, duration: Duration) -> Option<Self>
pub fn checked_add(&self, duration: Duration) -> Option<Self>
Returns Some(t)
where t
is the time self + duration
if t
can be
represented as Instant
(which means it’s inside the bounds of the
underlying data structure), None
otherwise.
This corresponds to std::time::Instant::checked_add
.
sourcepub fn checked_sub(&self, duration: Duration) -> Option<Self>
pub fn checked_sub(&self, duration: Duration) -> Option<Self>
Returns Some(t)
where t
is the time self - duration
if t
can be
represented as Instant
(which means it’s inside the bounds of the
underlying data structure), None
otherwise.
This corresponds to std::time::Instant::checked_sub
.
Trait Implementations§
source§impl AddAssign<Duration> for Instant
impl AddAssign<Duration> for Instant
source§fn add_assign(&mut self, other: Duration)
fn add_assign(&mut self, other: Duration)
+=
operation. Read moresource§impl Ord for Instant
impl Ord for Instant
source§impl PartialOrd for Instant
impl PartialOrd for Instant
source§impl SubAssign<Duration> for Instant
impl SubAssign<Duration> for Instant
source§fn sub_assign(&mut self, other: Duration)
fn sub_assign(&mut self, other: Duration)
-=
operation. Read moreimpl Copy for Instant
impl Eq for Instant
impl StructuralPartialEq for Instant
Auto Trait Implementations§
impl Freeze for Instant
impl RefUnwindSafe for Instant
impl Send for Instant
impl Sync for Instant
impl Unpin for Instant
impl UnwindSafe for Instant
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)