pub struct Delay<T> {
pub value: T,
/* private fields */
}
Expand description
Wraps a value that should be delayed.
Implements Delayed
and Eq
. Two Delay
objects are equal iff their wrapped value
s are
equal and they are delayed until the same Instant
.
§Examples
Basic usage:
use delay_queue::{Delay, Delayed};
use std::time::{Duration, Instant};
let delayed_one_hour = Delay::for_duration(123, Duration::from_secs(3600));
let delayed_now = Delay::until_instant("abc", Instant::now());
assert!(delayed_one_hour.delayed_until() > delayed_now.delayed_until());
assert_eq!(delayed_one_hour.value, 123);
Fields§
§value: T
The value that is delayed.
Implementations§
Source§impl<T> Delay<T>
impl<T> Delay<T>
Sourcepub fn until_instant(value: T, until: Instant) -> Delay<T>
pub fn until_instant(value: T, until: Instant) -> Delay<T>
Creates a new Delay<T>
holding value
and that is delayed until the given Instant
.
§Examples
Basic usage:
use delay_queue::Delay;
use std::time::Instant;
let delayed_now = Delay::until_instant("abc", Instant::now());
Sourcepub fn for_duration(value: T, duration: Duration) -> Delay<T>
pub fn for_duration(value: T, duration: Duration) -> Delay<T>
Creates a new Delay<T>
holding value
and that is delayed until the given Duration
has
elapsed.
§Examples
Basic usage:
use delay_queue::Delay;
use std::time::Duration;
let delayed_one_hour = Delay::for_duration("abc", Duration::from_secs(3600));
Trait Implementations§
Source§impl<T> Delayed for Delay<T>
impl<T> Delayed for Delay<T>
Source§fn delayed_until(&self) -> Instant
fn delayed_until(&self) -> Instant
Returns the
Instant
until which this value is delayed.impl<T: Eq> Eq for Delay<T>
impl<T> StructuralPartialEq for Delay<T>
Auto Trait Implementations§
impl<T> Freeze for Delay<T>where
T: Freeze,
impl<T> RefUnwindSafe for Delay<T>where
T: RefUnwindSafe,
impl<T> Send for Delay<T>where
T: Send,
impl<T> Sync for Delay<T>where
T: Sync,
impl<T> Unpin for Delay<T>where
T: Unpin,
impl<T> UnwindSafe for Delay<T>where
T: UnwindSafe,
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
Mutably borrows from an owned value. Read more