pub use tari_template_abi::{call_debug, rust};
pub use crate::types::LogLevel;
#[macro_export]
macro_rules! engine_debug {
($fmt:expr) => {
$crate::macros::call_debug($fmt)
};
($fmt:expr, $($args:tt)*) => {
$crate::macros::call_debug($crate::macros::rust::format!($fmt, $($args)*))
};
}
#[macro_export]
macro_rules! log {
($lvl:expr, $fmt:expr) => {
$crate::engine().emit_log($lvl, $crate::macros::rust::format!($fmt))
};
($lvl:expr, $fmt:expr, $($args:tt)*) => {
$crate::engine().emit_log($lvl, $crate::macros::rust::format!($fmt, $($args)*))
};
}
#[macro_export]
macro_rules! debug {
($fmt:expr) => {
$crate::log!($crate::macros::LogLevel::Debug, $fmt)
};
($fmt:expr, $($args:tt)*) => {
$crate::log!($crate::macros::LogLevel::Debug, $fmt, $($args)*)
};
}
#[macro_export]
macro_rules! info {
($fmt:expr) => {
$crate::log!($crate::macros::LogLevel::Info, $fmt)
};
($fmt:expr, $($args:tt)*) => {
$crate::log!($crate::macros::LogLevel::Info, $fmt, $($args)*)
};
}
#[macro_export]
macro_rules! warn {
($fmt:expr) => {
$crate::log!($crate::macros::LogLevel::Warn, $fmt)
};
($fmt:expr, $($args:tt)*) => {
$crate::log!($crate::macros::LogLevel::Warn, $fmt, $($args)*)
};
}
#[macro_export]
macro_rules! error {
($fmt:expr) => {
$crate::log!($crate::macros::LogLevel::Error, $fmt)
};
($fmt:expr, $($args:tt)*) => {
$crate::log!($crate::macros::LogLevel::Error, $fmt, $($args)*)
};
}