diff options
Diffstat (limited to 'runtime/ops/os.rs')
-rw-r--r-- | runtime/ops/os.rs | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/runtime/ops/os.rs b/runtime/ops/os.rs index c2c9fb550..801a4252a 100644 --- a/runtime/ops/os.rs +++ b/runtime/ops/os.rs @@ -3,7 +3,9 @@ use super::utils::into_string; use crate::permissions::Permissions; use deno_core::error::{type_error, AnyError}; +use deno_core::op_sync; use deno_core::url::Url; +use deno_core::Extension; use deno_core::OpState; use deno_core::ZeroCopyBuf; use serde::Deserialize; @@ -11,18 +13,22 @@ use serde::Serialize; use std::collections::HashMap; use std::env; -pub fn init(rt: &mut deno_core::JsRuntime) { - super::reg_sync(rt, "op_exit", op_exit); - super::reg_sync(rt, "op_env", op_env); - super::reg_sync(rt, "op_exec_path", op_exec_path); - super::reg_sync(rt, "op_set_env", op_set_env); - super::reg_sync(rt, "op_get_env", op_get_env); - super::reg_sync(rt, "op_delete_env", op_delete_env); - super::reg_sync(rt, "op_hostname", op_hostname); - super::reg_sync(rt, "op_loadavg", op_loadavg); - super::reg_sync(rt, "op_os_release", op_os_release); - super::reg_sync(rt, "op_system_memory_info", op_system_memory_info); - super::reg_sync(rt, "op_system_cpu_info", op_system_cpu_info); +pub fn init() -> Extension { + Extension::builder() + .ops(vec![ + ("op_exit", op_sync(op_exit)), + ("op_env", op_sync(op_env)), + ("op_exec_path", op_sync(op_exec_path)), + ("op_set_env", op_sync(op_set_env)), + ("op_get_env", op_sync(op_get_env)), + ("op_delete_env", op_sync(op_delete_env)), + ("op_hostname", op_sync(op_hostname)), + ("op_loadavg", op_sync(op_loadavg)), + ("op_os_release", op_sync(op_os_release)), + ("op_system_memory_info", op_sync(op_system_memory_info)), + ("op_system_cpu_info", op_sync(op_system_cpu_info)), + ]) + .build() } fn op_exec_path( |