diff options
-rw-r--r-- | ops/lib.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/ops/lib.rs b/ops/lib.rs index c6b7816e9..3200a6d34 100644 --- a/ops/lib.rs +++ b/ops/lib.rs @@ -284,7 +284,7 @@ fn opstate_arg(arg: &FnArg) -> Option<TokenStream2> { match arg { arg if is_rc_refcell_opstate(arg) => Some(quote! { ctx.state.clone(), }), arg if is_mut_ref_opstate(arg) => { - Some(quote! { &mut ctx.state.borrow_mut(), }) + Some(quote! { &mut std::cell::RefCell::borrow_mut(&ctx.state), }) } _ => None, } @@ -439,7 +439,7 @@ fn codegen_fast_impl( &*(#core::v8::Local::<#core::v8::External>::cast(data).value() as *const #core::_ops::OpCtx) }; - let #op_state_name = &mut ctx.state.borrow_mut(); + let #op_state_name = &mut std::cell::RefCell::borrow_mut(&ctx.state); } } else { quote! {} @@ -542,7 +542,7 @@ fn codegen_v8_sync( let fast_error_handler = if has_fallible_fast_call { quote! { { - let op_state = &mut ctx.state.borrow_mut(); + let op_state = &mut std::cell::RefCell::borrow_mut(&ctx.state); if let Some(err) = op_state.last_fast_op_error.take() { let exception = #core::error::to_v8_error(scope, op_state.get_error_class_fn, &err); scope.throw_exception(exception); |