pub mod cancel;
pub mod clock;
pub mod sleep;
pub mod task;
pub mod timeout;
pub use cancel::CancellationToken;
pub use clock::{now, timestamp_secs, Instant, SystemTime, UNIX_EPOCH};
pub use sleep::sleep;
pub use task::spawn;
pub use timeout::{timeout, Elapsed};
#[cfg(not(target_arch = "wasm32"))]
pub trait MaybeSend: Send {}
#[cfg(not(target_arch = "wasm32"))]
impl<T: Send> MaybeSend for T {}
#[cfg(target_arch = "wasm32")]
pub trait MaybeSend {}
#[cfg(target_arch = "wasm32")]
impl<T> MaybeSend for T {}
#[cfg(not(target_arch = "wasm32"))]
pub trait MaybeSync: Sync {}
#[cfg(not(target_arch = "wasm32"))]
impl<T: Sync> MaybeSync for T {}
#[cfg(target_arch = "wasm32")]
pub trait MaybeSync {}
#[cfg(target_arch = "wasm32")]
impl<T> MaybeSync for T {}