pub struct JsEnv(/* private fields */);
Implementations§
source§impl JsEnv
impl JsEnv
pub fn new(env: napi_env) -> Self
pub fn inner(&self) -> napi_env
pub fn create_string_utf8(&self, r_string: &str) -> Result<napi_value, NjError>
pub fn create_string_utf8_from_bytes( &self, r_string: &[u8] ) -> Result<napi_value, NjError>
pub fn create_double(&self, value: f64) -> Result<napi_value, NjError>
pub fn create_int64(&self, value: i64) -> Result<napi_value, NjError>
pub fn create_int32(&self, value: i32) -> Result<napi_value, NjError>
pub fn create_uint32(&self, value: u32) -> Result<napi_value, NjError>
pub fn create_bigint_uint64(&self, value: u64) -> Result<napi_value, NjError>
pub fn create_object(&self) -> Result<napi_value, NjError>
pub fn create_boolean(&self, value: bool) -> Result<napi_value, NjError>
pub fn create_array_with_len(&self, len: usize) -> Result<napi_value, NjError>
pub fn set_element( &self, object: napi_value, element: napi_value, index: usize ) -> Result<(), NjError>
pub fn get_element( &self, array: napi_value, index: u32 ) -> Result<napi_value, NjError>
sourcepub fn is_array(&self, array: napi_value) -> Result<bool, NjError>
pub fn is_array(&self, array: napi_value) -> Result<bool, NjError>
check if napi value is array
sourcepub fn is_array_buffer(&self, array: napi_value) -> Result<bool, NjError>
pub fn is_array_buffer(&self, array: napi_value) -> Result<bool, NjError>
check if napi value is array buffer
pub fn is_buffer(&self, n_value: napi_value) -> Result<bool, NjError>
pub fn is_date(&self, n_value: napi_value) -> Result<bool, NjError>
pub fn is_error(&self, n_value: napi_value) -> Result<bool, NjError>
pub fn get_global(&self) -> Result<napi_value, NjError>
pub fn call_function( &self, recv: napi_value, func: napi_value, argv: Vec<napi_value> ) -> Result<napi_value, NjError>
sourcepub fn get_cb_info(
&self,
info: napi_callback_info,
max_count: usize
) -> Result<JsCallback, NjError>
pub fn get_cb_info( &self, info: napi_callback_info, max_count: usize ) -> Result<JsCallback, NjError>
get callback information
sourcepub fn define_class(
&self,
name: &str,
constructor: napi_callback_raw,
properties: PropertiesBuilder
) -> Result<napi_value, NjError>
pub fn define_class( &self, name: &str, constructor: napi_callback_raw, properties: PropertiesBuilder ) -> Result<napi_value, NjError>
define classes
pub fn create_reference( &self, cons: napi_value, count: u32 ) -> Result<napi_ref, NjError>
pub fn delete_reference(&self, ref_: napi_ref) -> Result<(), NjError>
pub fn get_new_target( &self, info: napi_callback_info ) -> Result<napi_value, NjError>
pub fn wrap( &self, js_object: napi_value, rust_obj: *mut u8, finalize: napi_finalize_raw ) -> Result<napi_ref, NjError>
pub fn unwrap<T>(&self, js_this: napi_value) -> Result<&'static T, NjError>
pub fn unwrap_mut<T>( &self, js_this: napi_value ) -> Result<&'static mut T, NjError>
pub fn new_instance( &self, constructor: napi_value, args: Vec<napi_value> ) -> Result<napi_value, NjError>
pub fn get_reference_value( &self, obj_ref: napi_ref ) -> Result<napi_value, NjError>
sourcepub fn create_promise(&self) -> Result<(napi_value, napi_deferred), NjError>
pub fn create_promise(&self) -> Result<(napi_value, napi_deferred), NjError>
create promise and deferred
pub fn resolve_deferred( &self, deferred: napi_deferred, resolution: napi_value ) -> Result<(), NjError>
pub fn reject_deferred( &self, deferred: napi_deferred, rejection: napi_value ) -> Result<(), NjError>
pub fn create_thread_safe_function( &self, name: &str, js_func: Option<napi_value>, call_js_cb: napi_threadsafe_function_call_js ) -> Result<ThreadSafeFunction, NjError>
pub fn is_exception_pending(&self) -> bool
pub fn throw(&self, value: napi_value)
pub fn throw_type_error(&self, message: &str)
pub fn create_error(&self, message: &str) -> Result<napi_value, NjError>
sourcepub fn value_type(
&self,
napi_value: napi_value
) -> Result<napi_valuetype, NjError>
pub fn value_type( &self, napi_value: napi_value ) -> Result<napi_valuetype, NjError>
get value type
sourcepub fn value_type_string(
&self,
napi_value: napi_value
) -> Result<&'static str, NjError>
pub fn value_type_string( &self, napi_value: napi_value ) -> Result<&'static str, NjError>
get string representation of value type
sourcepub fn assert_type(
&self,
napi_value: napi_value,
should_be_type: napi_valuetype
) -> Result<(), NjError>
pub fn assert_type( &self, napi_value: napi_value, should_be_type: napi_valuetype ) -> Result<(), NjError>
assert that napi value is certain type, otherwise raise exception
sourcepub fn convert_to_rust<'a, T>(
&'a self,
napi_value: napi_value
) -> Result<T, NjError>where
T: JSValue<'a>,
pub fn convert_to_rust<'a, T>( &'a self, napi_value: napi_value ) -> Result<T, NjError>where T: JSValue<'a>,
convert napi value to rust value
pub fn get_undefined(&self) -> Result<napi_value, NjError>
pub fn get_null(&self) -> Result<napi_value, NjError>
sourcepub fn get_buffer_info(&self, napi_value: napi_value) -> Result<&[u8], NjError>
pub fn get_buffer_info(&self, napi_value: napi_value) -> Result<&[u8], NjError>
get buffer info
sourcepub fn detach_arraybuffer(&self, napi_value: napi_value) -> Result<(), NjError>
pub fn detach_arraybuffer(&self, napi_value: napi_value) -> Result<(), NjError>
Detach ArrayBuffer
sourcepub fn is_detached_arraybuffer(
&self,
napi_value: napi_value
) -> Result<bool, NjError>
pub fn is_detached_arraybuffer( &self, napi_value: napi_value ) -> Result<bool, NjError>
Is this ArrayBuffer Detached?
pub unsafe fn add_env_clean_up_hook( &self, init_func: Option<unsafe extern "C" fn(arg: *mut c_void)>, arg: *mut c_void ) -> Result<(), NjError>
Trait Implementations§
source§impl ExtractArgFromJs<'_> for JsEnv
impl ExtractArgFromJs<'_> for JsEnv
source§impl ExtractFromJs<'_> for JsEnv
impl ExtractFromJs<'_> for JsEnv
impl Copy for JsEnv
impl Send for JsEnv
impl Sync for JsEnv
Auto Trait Implementations§
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more