use super::{
bindings as napi,
raw::{Env, Local},
};
pub unsafe fn undefined(out: &mut Local, env: Env) {
napi::get_undefined(env, out as *mut Local).unwrap();
}
pub unsafe fn null(out: &mut Local, env: Env) {
napi::get_null(env, out as *mut Local).unwrap();
}
pub unsafe fn boolean(out: &mut Local, env: Env, b: bool) {
napi::get_boolean(env, b, out as *mut Local).unwrap();
}
pub unsafe fn boolean_value(env: Env, p: Local) -> bool {
let mut value = false;
assert_eq!(
napi::get_value_bool(env, p, &mut value as *mut bool),
Ok(())
);
value
}
pub unsafe fn number(out: &mut Local, env: Env, v: f64) {
napi::create_double(env, v, out as *mut Local).unwrap();
}
pub unsafe fn number_value(env: Env, p: Local) -> f64 {
let mut value = 0.0;
napi::get_value_double(env, p, &mut value as *mut f64).unwrap();
value
}