1#[cfg(target_os = "none")]
7#[macro_export]
8#[clippy::format_args]
9macro_rules! print {
10 ($($arg:tt)*) => {{
11 $crate::console::_print(::core::format_args!($($arg)*));
12 }};
13}
14
15#[allow(unused_imports)]
16pub(crate) use print;
17
18#[cfg(target_os = "none")]
24#[macro_export]
25#[clippy::format_args]
26macro_rules! println {
27 () => {
28 $crate::macros::print!("\n")
29 };
30 ($($arg:tt)*) => {{
31 $crate::console::_print(::core::format_args!("{}\n", ::core::format_args!($($arg)*)));
32 }};
33}
34
35#[allow(unused_imports)]
36pub(crate) use println;
37
38#[cfg(target_os = "none")]
40#[macro_export]
41#[clippy::format_args]
42macro_rules! panic_println {
43 () => {{
44 $crate::console::_panic_print(::core::format_args!("\n"));
45 }};
46 ($($arg:tt)*) => {{
47 $crate::console::_panic_print(::core::format_args!("{}\n", ::core::format_args!($($arg)*)));
48 }};
49}
50
51#[cfg(not(target_os = "none"))]
52#[macro_export]
53#[clippy::format_args]
54macro_rules! panic_println {
55 ($($arg:tt)*) => {
56 ::std::println!($($arg)*);
57 };
58}
59
60#[cfg(target_os = "none")]
64#[macro_export]
65macro_rules! dbg {
66 () => {
71 $crate::macros::println!("[{}:{}]", ::core::file!(), ::core::line!())
72 };
73 ($val:expr $(,)?) => {
74 match $val {
77 tmp => {
78 $crate::macros::println!("[{}:{}] {} = {:#?}",
79 ::core::file!(), ::core::line!(), ::core::stringify!($val), &tmp);
80 tmp
81 }
82 }
83 };
84 ($($val:expr),+ $(,)?) => {
85 ($($crate::macros::dbg!($val)),+,)
86 };
87}
88
89#[allow(unused_imports)]
90pub(crate) use dbg;
91
92#[allow(unused_macros)]
98macro_rules! hermit_var {
99 ($name:expr) => {
100 match $crate::env::var($name) {
101 ::core::option::Option::Some(val) => {
102 ::core::option::Option::Some(::alloc::borrow::Cow::from(val))
103 }
104 ::core::option::Option::None => {
105 ::core::option_env!($name).map(::alloc::borrow::Cow::Borrowed)
106 }
107 }
108 };
109}
110
111#[allow(unused_imports)]
112pub(crate) use hermit_var;
113
114#[allow(unused_macros)]
118macro_rules! hermit_var_or {
119 ($name:expr, $default:expr) => {
120 $crate::macros::hermit_var!($name)
121 .as_deref()
122 .unwrap_or($default)
123 };
124}