#[doc(hidden)]
#[macro_export]
macro_rules! span_inner {
($args:expr, $block:expr) => {{
let span = async_log::Span::new($args);
let res = $block;
drop(span);
res
}};
}
#[macro_export]
macro_rules! span {
($args:expr, $block:expr) => {{
async_log::span_inner!($args, $block)
}};
($args:expr, $a:expr, $block:expr) => {{
let args = format!($args, $a);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $block:expr) => {{
let args = format!($args, $a, $b);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $c:expr, $block:expr) => {{
let args = format!($args, $a, $b, $c);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $c:expr, $d:expr, $block:expr) => {{
let args = format!($args, $a, $b, $c, $d);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $c:expr, $d:expr, $e:expr, $block:expr) => {{
let args = format!($args, $a, $b, $c, $d, $e);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $c:expr, $d:expr, $e:expr, $f:expr, $block:expr) => {{
let args = format!($args, $a, $b, $c, $d, $e, $f);
async_log::span_inner!(args, $block)
}};
($args:expr, $a:expr, $b:expr, $c:expr, $d:expr, $e:expr, $f:expr, $g:expr, $block:expr) => {{
let args = format!($args, $a, $b, $c, $d, $e, $f, $g);
async_log::span_inner!(args, $block)
}};
}