diff options
Diffstat (limited to 'cli/ops/random.rs')
-rw-r--r-- | cli/ops/random.rs | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/cli/ops/random.rs b/cli/ops/random.rs index 3ff5ad49f..fb2286116 100644 --- a/cli/ops/random.rs +++ b/cli/ops/random.rs @@ -1,25 +1,29 @@ // Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. -use super::dispatch_json::{JsonOp, Value}; +use super::dispatch_json::Value; use crate::state::State; use deno_core::CoreIsolate; use deno_core::ErrBox; +use deno_core::ResourceTable; use deno_core::ZeroCopyBuf; use rand::thread_rng; use rand::Rng; use std::rc::Rc; pub fn init(i: &mut CoreIsolate, s: &Rc<State>) { + let t = &CoreIsolate::state(i).borrow().resource_table.clone(); + i.register_op( "op_get_random_values", - s.stateful_json_op(op_get_random_values), + s.stateful_json_op_sync(t, op_get_random_values), ); } fn op_get_random_values( - state: &Rc<State>, + state: &State, + _resource_table: &mut ResourceTable, _args: Value, zero_copy: &mut [ZeroCopyBuf], -) -> Result<JsonOp, ErrBox> { +) -> Result<Value, ErrBox> { assert_eq!(zero_copy.len(), 1); if let Some(seeded_rng) = &state.seeded_rng { @@ -29,5 +33,5 @@ fn op_get_random_values( rng.fill(&mut *zero_copy[0]); } - Ok(JsonOp::Sync(json!({}))) + Ok(json!({})) } |