diff options
Diffstat (limited to 'cli/ops/random.rs')
-rw-r--r-- | cli/ops/random.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/cli/ops/random.rs b/cli/ops/random.rs index 53aedb73f..20296c667 100644 --- a/cli/ops/random.rs +++ b/cli/ops/random.rs @@ -8,8 +8,15 @@ use deno_core::ZeroCopyBuf; use rand::rngs::StdRng; use rand::thread_rng; use rand::Rng; +use rand::SeedableRng; -pub fn init(rt: &mut deno_core::JsRuntime) { +pub fn init(rt: &mut deno_core::JsRuntime, maybe_seed: Option<u64>) { + if let Some(seed) = maybe_seed { + let rng = StdRng::seed_from_u64(seed); + let op_state = rt.op_state(); + let mut state = op_state.borrow_mut(); + state.put::<StdRng>(rng); + } super::reg_json_sync(rt, "op_get_random_values", op_get_random_values); } |