Skip to main content

thruput_sdk/
log.rs

1//! System functions: logging
2
3use crate::re_throw::OrSyscallThrow;
4use crate::sys;
5
6pub fn log(buffer: &[u8]) {
7    sys::raw_ConsoleLog(buffer)
8        .or_syscall_throw(crate::sys::SyscallNo::kConsoleLog);
9}
10
11#[cfg(feature = "dev")]
12pub fn log_str<S: AsRef<str>>(msg: S) {
13    std::println!("::LOG:: {}", msg.as_ref());
14}
15
16#[cfg(feature = "std")]
17#[macro_export]
18macro_rules! debug_log {
19    ($($arg:tt)*) => {
20        std::println!($($arg)*);
21    };
22}
23
24#[cfg(not(feature = "std"))]
25#[macro_export]
26macro_rules! debug_log {
27    ($($arg:tt)*) => {};
28}