Add a pure now helper to time module

This commit is contained in:
Héctor Ramón Jiménez 2025-09-06 17:07:24 +02:00
parent ebe223cb5d
commit d9f24dddb9
No known key found for this signature in database
GPG key ID: 7CC46565708259A7

View file

@ -11,3 +11,17 @@ pub use crate::core::time::*;
)))
)]
pub use iced_futures::backend::default::time::*;
use crate::Task;
/// Returns a [`Task`] that produces the current [`Instant`]
/// by calling [`Instant::now`].
///
/// While you can call [`Instant::now`] directly in your application,
/// this is an "impure" operation (i.e. it's not referentially transparent).
///
/// You may care about purity if you want to leverage the `time-travel`
/// feature properly.
pub fn now() -> Task<Instant> {
Task::future(async { Instant::now() })
}