devela/work/process/thread/sleep/
macros.rs
1#[macro_export]
13#[cfg(feature = "std")]
14#[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "std")))]
15#[cfg_attr(cargo_primary_package, doc(hidden))]
16macro_rules! sleep4 {
17 ($s:expr) => {
18 std::thread::sleep(core::time::Duration::from_secs($s));
19 };
20 ($s:expr, $ms:expr) => {
21 std::thread::sleep(core::time::Duration::from_millis($s * 1000 + $ms));
22 };
23 ($s:expr, $ms:expr, $us:expr) => {
24 std::thread::sleep(core::time::Duration::from_micros($s * 1_000_000 + $ms * 1_000 + $us));
25 };
26 ($s:expr, $ms:expr, $us:expr, $ns:expr) => {
27 std::thread::sleep(core::time::Duration::from_nanos(
28 $s * 1_000_000_000 + $ms * 1_000_000 + $us * 1_000 + $ns,
29 ));
30 };
31}
32#[cfg(feature = "std")]
33#[doc(inline)]
34pub use sleep4;