webnn_graph/debug.rs
1use std::sync::atomic::{AtomicBool, Ordering};
2
3static DEBUG: AtomicBool = AtomicBool::new(false);
4
5/// Enable debug logging
6pub fn enable() {
7 DEBUG.store(true, Ordering::Relaxed);
8}
9
10/// Check if debug logging is enabled
11pub fn is_enabled() -> bool {
12 DEBUG.load(Ordering::Relaxed)
13}
14
15/// Print debug message if debug mode is enabled
16#[macro_export]
17macro_rules! debug_println {
18 ($($arg:tt)*) => {
19 if $crate::debug::is_enabled() {
20 eprintln!($($arg)*);
21 }
22 };
23}