summaryrefslogtreecommitdiff
path: root/runtime/ops/runtime.rs
diff options
context:
space:
mode:
authorAaron O'Mullan <aaron.omullan@gmail.com>2021-05-03 01:22:57 +0200
committerGitHub <noreply@github.com>2021-05-02 19:22:57 -0400
commit8377957666d6ca80d48d6fa78afd3e16bf3f7aa8 (patch)
tree071564d391846624c18b81cdccf3350c2e73ed13 /runtime/ops/runtime.rs
parent40961cda583faaba128b555caebf284fd6298bb1 (diff)
refactor(runtime): use Extensions (#10461)
Diffstat (limited to 'runtime/ops/runtime.rs')
-rw-r--r--runtime/ops/runtime.rs17
1 files changed, 10 insertions, 7 deletions
diff --git a/runtime/ops/runtime.rs b/runtime/ops/runtime.rs
index 7d84fadff..6c9f02784 100644
--- a/runtime/ops/runtime.rs
+++ b/runtime/ops/runtime.rs
@@ -3,17 +3,20 @@
use crate::permissions::Permissions;
use deno_core::error::AnyError;
use deno_core::error::Context;
+use deno_core::op_sync;
+use deno_core::Extension;
use deno_core::ModuleSpecifier;
use deno_core::OpState;
use deno_core::ZeroCopyBuf;
-pub fn init(rt: &mut deno_core::JsRuntime, main_module: ModuleSpecifier) {
- {
- let op_state = rt.op_state();
- let mut state = op_state.borrow_mut();
- state.put::<ModuleSpecifier>(main_module);
- }
- super::reg_sync(rt, "op_main_module", op_main_module);
+pub fn init(main_module: ModuleSpecifier) -> Extension {
+ Extension::builder()
+ .ops(vec![("op_main_module", op_sync(op_main_module))])
+ .state(move |state| {
+ state.put::<ModuleSpecifier>(main_module.clone());
+ Ok(())
+ })
+ .build()
}
fn op_main_module(