#[cfg(feature = "micro-profiling")]
#[macro_export]
macro_rules! micro_count {
($name:literal, $value:expr) => {{
static SITE: $crate::profiler::micro::Site = $crate::profiler::micro::Site::new(
concat!($name, "@", file!(), ":", line!()),
$name,
file!(),
module_path!(),
line!(),
"counter",
);
$crate::profiler::micro::count(&SITE, $value as u64);
}};
}
#[cfg(feature = "micro-profiling")]
#[macro_export]
macro_rules! micro_span {
($name:literal, $block:expr) => {{
static SITE: $crate::profiler::micro::Site = $crate::profiler::micro::Site::new(
concat!($name, "@", file!(), ":", line!()),
$name,
file!(),
module_path!(),
line!(),
"span",
);
let _micro_guard = $crate::profiler::micro::span(&SITE);
$block
}};
}
#[cfg(not(feature = "micro-profiling"))]
#[macro_export]
macro_rules! micro_count {
($name:literal, $value:expr) => {{}};
}
#[cfg(not(feature = "micro-profiling"))]
#[macro_export]
macro_rules! micro_span {
($name:literal, $block:expr) => {{ $block }};
}