From 906aa78af33c8405a47d5446d2a6fb3348c275bb Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Sun, 21 Aug 2022 17:37:53 +0530 Subject: feat(ops): V8 Fast Calls (#15291) --- ext/flash/lib.rs | 8 ++++---- ext/net/lib.rs | 4 +++- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'ext') diff --git a/ext/flash/lib.rs b/ext/flash/lib.rs index abd8502d0..92350db58 100644 --- a/ext/flash/lib.rs +++ b/ext/flash/lib.rs @@ -1344,8 +1344,8 @@ async fn op_flash_next_async( // the ContextScope creation is optimized away and the op is as simple as: // f(info: *const v8::FunctionCallbackInfo) { let rv = ...; rv.set_uint32(op_flash_next()); } #[op] -fn op_flash_next(op_state: &mut OpState) -> u32 { - let flash_ctx = op_state.borrow_mut::(); +fn op_flash_next(state: &mut OpState) -> u32 { + let flash_ctx = state.borrow_mut::(); let ctx = flash_ctx.servers.get_mut(&0).unwrap(); next_request_sync(ctx) } @@ -1353,8 +1353,8 @@ fn op_flash_next(op_state: &mut OpState) -> u32 { // Syncrhonous version of op_flash_next_async. Under heavy load, // this can collect buffered requests from rx channel and return tokens in a single batch. #[op] -fn op_flash_next_server(op_state: &mut OpState, server_id: u32) -> u32 { - let flash_ctx = op_state.borrow_mut::(); +fn op_flash_next_server(state: &mut OpState, server_id: u32) -> u32 { + let flash_ctx = state.borrow_mut::(); let ctx = flash_ctx.servers.get_mut(&server_id).unwrap(); next_request_sync(ctx) } diff --git a/ext/net/lib.rs b/ext/net/lib.rs index c95348020..249170060 100644 --- a/ext/net/lib.rs +++ b/ext/net/lib.rs @@ -81,6 +81,8 @@ pub fn init( unstable: bool, unsafely_ignore_certificate_errors: Option>, ) -> Extension { + let mut ops = ops::init::

(); + ops.extend(ops_tls::init::

()); Extension::builder() .js(include_js_files!( prefix "deno:ext/net", @@ -88,7 +90,7 @@ pub fn init( "02_tls.js", "04_net_unstable.js", )) - .ops([&ops::init::

()[..], &ops_tls::init::

()[..]].concat()) + .ops(ops) .state(move |state| { state.put(DefaultTlsOptions { root_cert_store: root_cert_store.clone(), -- cgit v1.2.3