@@ -37,15 +37,15 @@ where
3737 if NODE_VERSION_MAJOR >= 20 && NODE_VERSION_MINOR >= 18 {
3838 fast_set_property ( raw_env, obj. 0 . value , k, v) ?;
3939 } else {
40- set_property ( raw_env , obj. 0 . value , k , v) ?;
40+ obj. set ( k . as_ref ( ) , v) ?;
4141 }
4242 }
4343 #[ cfg( not( all(
4444 feature = "experimental" ,
4545 feature = "node_version_detect" ,
4646 any( all( target_os = "linux" , feature = "dyn-symbols" ) , target_os = "macos" )
4747 ) ) ) ]
48- set_property ( raw_env , obj. 0 . value , k , v) ?;
48+ obj. set ( k . as_ref ( ) , v) ?;
4949 }
5050
5151 unsafe { Object :: to_napi_value ( raw_env, obj) }
6262 let obj = unsafe { Object :: from_napi_value ( env, napi_val) ? } ;
6363 let mut map = HashMap :: default ( ) ;
6464 for key in Object :: keys ( & obj) ?. into_iter ( ) {
65- if let Some ( val) = get_property ( env , obj. 0 . value , & key) ? {
66- map. insert ( K :: from ( key) , V :: from_napi_value ( env , val) ? ) ;
65+ if let Some ( val) = obj. get ( & key) ? {
66+ map. insert ( K :: from ( key) , val) ;
6767 }
6868 }
6969
@@ -102,15 +102,15 @@ where
102102 if crate :: bindgen_runtime:: NODE_VERSION_MAJOR >= 20 && NODE_VERSION_MINOR >= 18 {
103103 fast_set_property ( raw_env, obj. 0 . value , k, v) ?;
104104 } else {
105- set_property ( raw_env , obj. 0 . value , k , v) ?;
105+ obj. set ( k . as_ref ( ) , v) ?;
106106 }
107107 }
108108 #[ cfg( not( all(
109109 feature = "experimental" ,
110110 feature = "node_version_detect" ,
111111 any( all( target_os = "linux" , feature = "dyn-symbols" ) , target_os = "macos" )
112112 ) ) ) ]
113- set_property ( raw_env , obj. 0 . value , k , v) ?;
113+ obj. set ( k . as_ref ( ) , v) ?;
114114 }
115115
116116 unsafe { Object :: to_napi_value ( raw_env, obj) }
@@ -126,8 +126,8 @@ where
126126 let obj = unsafe { Object :: from_napi_value ( env, napi_val) ? } ;
127127 let mut map = BTreeMap :: default ( ) ;
128128 for key in Object :: keys ( & obj) ?. into_iter ( ) {
129- if let Some ( val) = get_property ( env , obj. 0 . value , & key) ? {
130- map. insert ( K :: from ( key) , V :: from_napi_value ( env , val) ? ) ;
129+ if let Some ( val) = obj. get ( & key) ? {
130+ map. insert ( K :: from ( key) , val) ;
131131 }
132132 }
133133
@@ -170,15 +170,15 @@ where
170170 if crate :: bindgen_runtime:: NODE_VERSION_MAJOR >= 20 && NODE_VERSION_MINOR >= 18 {
171171 fast_set_property ( raw_env, obj. 0 . value , k, v) ?;
172172 } else {
173- set_property ( raw_env , obj. 0 . value , k , v) ?;
173+ obj. set ( k . as_ref ( ) , v) ?;
174174 }
175175 }
176176 #[ cfg( not( all(
177177 feature = "experimental" ,
178178 feature = "node_version_detect" ,
179179 any( all( target_os = "linux" , feature = "dyn-symbols" ) , target_os = "macos" )
180180 ) ) ) ]
181- set_property ( raw_env , obj. 0 . value , k , v) ?;
181+ obj. set ( k . as_ref ( ) , v) ?;
182182 }
183183
184184 unsafe { Object :: to_napi_value ( raw_env, obj) }
@@ -196,8 +196,8 @@ where
196196 let obj = unsafe { Object :: from_napi_value ( env, napi_val) ? } ;
197197 let mut map = IndexMap :: default ( ) ;
198198 for key in Object :: keys ( & obj) ?. into_iter ( ) {
199- if let Some ( val) = get_property ( env , obj. 0 . value , & key) ? {
200- map. insert ( K :: from ( key) , V :: from_napi_value ( env , val) ? ) ;
199+ if let Some ( val) = obj. get ( & key) ? {
200+ map. insert ( K :: from ( key) , val) ;
201201 }
202202 }
203203
@@ -234,62 +234,3 @@ fn fast_set_property<K: AsRef<str>, V: ToNapiValue>(
234234 ) ?;
235235 Ok ( ( ) )
236236}
237-
238- fn set_property < K : AsRef < str > , V : ToNapiValue > (
239- raw_env : sys:: napi_env ,
240- obj : sys:: napi_value ,
241- k : K ,
242- v : V ,
243- ) -> Result < ( ) > {
244- let mut property_key = std:: ptr:: null_mut ( ) ;
245- check_status ! (
246- unsafe {
247- sys:: napi_create_string_utf8(
248- raw_env,
249- k. as_ref( ) . as_ptr( ) . cast( ) ,
250- k. as_ref( ) . len( ) as isize ,
251- & mut property_key,
252- )
253- } ,
254- "Create property key failed"
255- ) ?;
256- check_status ! (
257- unsafe { sys:: napi_set_property( raw_env, obj, property_key, V :: to_napi_value( raw_env, v) ?, ) } ,
258- "Failed to set property"
259- ) ?;
260- Ok ( ( ) )
261- }
262-
263- fn get_property < K : AsRef < str > > (
264- raw_env : sys:: napi_env ,
265- obj : sys:: napi_value ,
266- k : K ,
267- ) -> Result < Option < sys:: napi_value > > {
268- let mut property_key = std:: ptr:: null_mut ( ) ;
269- check_status ! (
270- unsafe {
271- sys:: napi_create_string_utf8(
272- raw_env,
273- k. as_ref( ) . as_ptr( ) . cast( ) ,
274- k. as_ref( ) . len( ) as isize ,
275- & mut property_key,
276- )
277- } ,
278- "Create property key failed"
279- ) ?;
280-
281- let mut ret = std:: ptr:: null_mut ( ) ;
282-
283- check_status ! (
284- unsafe { sys:: napi_get_property( raw_env, obj, property_key, & mut ret) } ,
285- "Failed to get property" ,
286- ) ?;
287-
288- let ty = type_of ! ( raw_env, ret) ?;
289-
290- Ok ( if ty == ValueType :: Undefined {
291- None
292- } else {
293- Some ( ret)
294- } )
295- }
0 commit comments