summaryrefslogtreecommitdiff
path: root/cli/ops/resources.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/ops/resources.rs')
-rw-r--r--cli/ops/resources.rs18
1 files changed, 7 insertions, 11 deletions
diff --git a/cli/ops/resources.rs b/cli/ops/resources.rs
index d7c2fd142..78e35828e 100644
--- a/cli/ops/resources.rs
+++ b/cli/ops/resources.rs
@@ -1,31 +1,28 @@
// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license.
-use crate::state::State;
use deno_core::ErrBox;
-use deno_core::OpRegistry;
+use deno_core::OpState;
use deno_core::ZeroCopyBuf;
use serde_derive::Deserialize;
use serde_json::Value;
-use std::rc::Rc;
-pub fn init(s: &Rc<State>) {
- s.register_op_json_sync("op_resources", op_resources);
- s.register_op_json_sync("op_close", op_close);
+pub fn init(rt: &mut deno_core::JsRuntime) {
+ super::reg_json_sync(rt, "op_resources", op_resources);
+ super::reg_json_sync(rt, "op_close", op_close);
}
fn op_resources(
- state: &State,
+ state: &mut OpState,
_args: Value,
_zero_copy: &mut [ZeroCopyBuf],
) -> Result<Value, ErrBox> {
- let resource_table = state.resource_table.borrow();
- let serialized_resources = resource_table.entries();
+ let serialized_resources = state.resource_table.entries();
Ok(json!(serialized_resources))
}
/// op_close removes a resource from the resource table.
fn op_close(
- state: &State,
+ state: &mut OpState,
args: Value,
_zero_copy: &mut [ZeroCopyBuf],
) -> Result<Value, ErrBox> {
@@ -36,7 +33,6 @@ fn op_close(
let args: CloseArgs = serde_json::from_value(args)?;
state
.resource_table
- .borrow_mut()
.close(args.rid as u32)
.ok_or_else(ErrBox::bad_resource_id)?;
Ok(json!({}))