Struct composition::START_TIME[][src]

pub struct START_TIME { /* fields omitted */ }

Methods from Deref<Target = Instant>

pub fn duration_since(&self, earlier: Instant) -> Duration1.8.0[src]

Returns the amount of time elapsed from another instant to this one.

Panics

This function will panic if earlier is later than self.

Examples

use std::time::{Duration, Instant};
use std::thread::sleep;

let now = Instant::now();
sleep(Duration::new(1, 0));
let new_now = Instant::now();
println!("{:?}", new_now.duration_since(now));

pub fn checked_duration_since(&self, earlier: Instant) -> Option<Duration>1.39.0[src]

Returns the amount of time elapsed from another instant to this one, or None if that instant is later than this one.

Examples

use std::time::{Duration, Instant};
use std::thread::sleep;

let now = Instant::now();
sleep(Duration::new(1, 0));
let new_now = Instant::now();
println!("{:?}", new_now.checked_duration_since(now));
println!("{:?}", now.checked_duration_since(new_now)); // None

pub fn saturating_duration_since(&self, earlier: Instant) -> Duration1.39.0[src]

Returns the amount of time elapsed from another instant to this one, or zero duration if that instant is later than this one.

Examples

use std::time::{Duration, Instant};
use std::thread::sleep;

let now = Instant::now();
sleep(Duration::new(1, 0));
let new_now = Instant::now();
println!("{:?}", new_now.saturating_duration_since(now));
println!("{:?}", now.saturating_duration_since(new_now)); // 0ns

pub fn elapsed(&self) -> Duration1.8.0[src]

Returns the amount of time elapsed since this instant was created.

Panics

This function may panic if the current time is earlier than this instant, which is something that can happen if an Instant is produced synthetically.

Examples

use std::thread::sleep;
use std::time::{Duration, Instant};

let instant = Instant::now();
let three_secs = Duration::from_secs(3);
sleep(three_secs);
assert!(instant.elapsed() >= three_secs);

pub fn checked_add(&self, duration: Duration) -> Option<Instant>1.34.0[src]

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.

pub fn checked_sub(&self, duration: Duration) -> Option<Instant>1.34.0[src]

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.

Trait Implementations

impl Deref for START_TIME[src]

type Target = Instant

The resulting type after dereferencing.

impl LazyStatic for START_TIME[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.