chore(napi): add log_js_value helper
This commit is contained in:
parent
25231b6ae1
commit
92aa3fcf53
1 changed files with 29 additions and 0 deletions
|
@ -155,6 +155,35 @@ macro_rules! assert_type_of {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[allow(dead_code)]
|
||||||
|
#[cfg(debug_assertions)]
|
||||||
|
pub(crate) unsafe fn log_js_value<V: AsRef<[sys::napi_value]>>(
|
||||||
|
// `info`, `log`, `warning` or `error`
|
||||||
|
method: &str,
|
||||||
|
env: sys::napi_env,
|
||||||
|
values: V,
|
||||||
|
) {
|
||||||
|
use std::ffi::CString;
|
||||||
|
use std::ptr;
|
||||||
|
|
||||||
|
let mut g = ptr::null_mut();
|
||||||
|
sys::napi_get_global(env, &mut g);
|
||||||
|
let mut console = ptr::null_mut();
|
||||||
|
let console_c_string = CString::new("console").unwrap();
|
||||||
|
let method_c_string = CString::new(method).unwrap();
|
||||||
|
sys::napi_get_named_property(env, g, console_c_string.as_ptr(), &mut console);
|
||||||
|
let mut method_js_fn = ptr::null_mut();
|
||||||
|
sys::napi_get_named_property(env, console, method_c_string.as_ptr(), &mut method_js_fn);
|
||||||
|
sys::napi_call_function(
|
||||||
|
env,
|
||||||
|
console,
|
||||||
|
method_js_fn,
|
||||||
|
values.as_ref().len(),
|
||||||
|
values.as_ref().as_ptr(),
|
||||||
|
ptr::null_mut(),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
pub mod bindgen_prelude {
|
pub mod bindgen_prelude {
|
||||||
#[cfg(feature = "compat-mode")]
|
#[cfg(feature = "compat-mode")]
|
||||||
pub use crate::bindgen_runtime::register_module_exports;
|
pub use crate::bindgen_runtime::register_module_exports;
|
||||||
|
|
Loading…
Reference in a new issue