devela/lang/ffi/js/
console.rs1#[allow(unused_imports)]
7use devela::{_js_doc, _js_extern};
8
9#[doc = crate::TAG_NAMESPACE!()]
10#[derive(Debug)]
12pub struct JsConsole;
13
14#[rustfmt::skip]
19#[cfg(not(feature = "safe_lang"))]
20#[cfg(all(feature = "unsafe_ffi", not(windows)))]
21#[cfg_attr(nightly_doc, doc(cfg(all(feature = "unsafe_ffi", target_arch = "wasm32"))))]
22impl JsConsole {
23 #[doc = _js_doc!(console "clear")]
24 pub fn clear() { console_clear() }
26
27 #[doc = _js_doc!(console "debug")]
28 pub fn debug(text: &str) { unsafe { console_debug(text.as_ptr(), text.len()); } }
30
31 #[doc = _js_doc!(console "error")]
32 pub fn error(text: &str) { unsafe { console_error(text.as_ptr(), text.len()); } }
34
35 #[doc = _js_doc!(console "info")]
36 pub fn info(text: &str) { unsafe { console_info(text.as_ptr(), text.len()); } }
38
39 #[doc = _js_doc!(console "log")]
40 pub fn log(text: &str) { unsafe { console_log(text.as_ptr(), text.len()); } }
42
43 #[doc = _js_doc!(console "trace")]
44 pub fn trace() { console_trace(); }
46
47 #[doc = _js_doc!(console "warn")]
48 pub fn warn(text: &str) { unsafe { console_warn(text.as_ptr(), text.len()); } }
50
51 #[doc = _js_doc!(console "count")]
54 pub fn count(label: &str) { unsafe { console_count(label.as_ptr(), label.len()); } }
56
57 #[doc = _js_doc!(console "countReset")]
58 pub fn count_reset(label: &str) {
60 unsafe { console_count_reset(label.as_ptr(), label.len()); } }
61
62 #[doc = _js_doc!(console "group")]
65 pub fn group(text: &str) { unsafe { console_group(text.as_ptr(), text.len()); } }
67
68 #[doc = _js_doc!(console "groupCollapsed")]
69 pub fn group_collapsed(text: &str) {
71 unsafe { console_group_collapsed(text.as_ptr(), text.len()); } }
72
73 #[doc = _js_doc!(console "groupEnd")]
74 pub fn group_end() { console_group_end(); }
76
77 #[doc = _js_doc!(console "time")]
80 pub fn time(name: &str) { unsafe { console_time(name.as_ptr(), name.len()); } }
82
83 #[doc = _js_doc!(console "timeEnd")]
84 pub fn time_end(name: &str) { unsafe { console_time_end(name.as_ptr(), name.len()); } }
86
87 #[doc = _js_doc!(console "timeLog")]
88 pub fn time_log(name: &str) { unsafe { console_time_log(name.as_ptr(), name.len()); } }
90}
91_js_extern! {
92 [ module: "api_console" ]
93 safe fn console_clear();
94 unsafe fn console_debug(str_ptr: *const u8, str_len: usize);
95 unsafe fn console_error(str_ptr: *const u8, str_len: usize);
96 unsafe fn console_info(str_ptr: *const u8, str_len: usize);
97 unsafe fn console_log(str_ptr: *const u8, str_len: usize);
98 safe fn console_trace();
99 unsafe fn console_warn(str_ptr: *const u8, str_len: usize);
100 unsafe fn console_count(str_ptr: *const u8, str_len: usize);
102 unsafe fn console_count_reset(str_ptr: *const u8, str_len: usize);
103 unsafe fn console_group(str_ptr: *const u8, str_len: usize);
105 unsafe fn console_group_collapsed(str_ptr: *const u8, str_len: usize);
106 safe fn console_group_end();
107 unsafe fn console_time(str_ptr: *const u8, str_len: usize);
109 unsafe fn console_time_end(str_ptr: *const u8, str_len: usize);
110 unsafe fn console_time_log(str_ptr: *const u8, str_len: usize);
111}