#[macro_export]
macro_rules! log_result {
($expression:expr) => {{
const NAME: &str = stringify!($expression).trim_ascii();
let future = $expression;
async move {
match future.await {
Ok(value) => {
log::trace!("{NAME} returned: {value:?}");
Ok(value)
}
Err(error) => {
log::error!("{NAME} failed with: {error}");
Err(error)
}
}
}
}};
}