//! A runtime-agnostic timer.
use Duration;
/// Completes once `duration` has passed.
///
/// Native targets park on `async-io`'s reactor. wasm32 has no reactor, and the
/// browser timer is not `Send` while the futures built on this one must be, so
/// the timer runs on the JS event loop and is awaited through a channel.
pub async