#[macro_export]
macro_rules! info {
($string:expr) => ({
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("[ {:>3}.{:06}] ", $string, "\n"),
timestamp.as_secs(),
timestamp.subsec_micros(),
);
});
($format_string:expr, $($arg:tt)*) => ({
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("[ {:>3}.{:06}] ", $format_string, "\n"),
timestamp.as_secs(),
timestamp.subsec_micros(),
$($arg)*
);
})
}
#[macro_export]
macro_rules! warn {
($string:expr) => ({
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("[W {:>3}.{:06}] ", $string),
timestamp.as_secs(),
timestamp.subsec_micros(),
);
});
($format_string:expr, $($arg:tt)*) => ({
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("[W {:>3}.{:06}] ", $format_string),
timestamp.as_secs(),
timestamp.subsec_micros(),
$($arg)*
);
})
}
#[macro_export]
macro_rules! debug {
($string:expr) => ({
if cfg!(feature = "debug_prints") {
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("<[>D {:>3}.{:06}> ", $string, "\n"),
timestamp.as_secs(),
timestamp.subsec_micros(),
);
}
});
($format_string:expr, $($arg:tt)*) => ({
if cfg!(feature = "debug_prints") {
let timestamp = $crate::TIME.lock().get_uptime_or(0);
$crate::println!(
concat!("<D {:>3}.{:06}> ", $format_string, "\n"),
timestamp.as_secs(),
timestamp.subsec_micros(),
$($arg)*
);
}
})
}