diff options
author | Aaron O'Mullan <aaron.omullan@gmail.com> | 2021-12-29 14:30:08 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-29 14:30:08 +0100 |
commit | 42081994902bab89e24c5f7cd9adf12a158ed5f5 (patch) | |
tree | c12facbabb6973063ebe4877fcdea574d96ce5a7 /cli/ops/mod.rs | |
parent | 6d017d42aaa5a04002af4c224dc8c3997e39293a (diff) |
cleanup(cli): use op Extensions (#13223)
Enabling op-middleware for overrides in lieu of imperative .replace_op() etc...
Impacts #13219, #12938, #13122
Diffstat (limited to 'cli/ops/mod.rs')
-rw-r--r-- | cli/ops/mod.rs | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/cli/ops/mod.rs b/cli/ops/mod.rs index a3df77fac..3584bdbef 100644 --- a/cli/ops/mod.rs +++ b/cli/ops/mod.rs @@ -1,7 +1,29 @@ // Copyright 2018-2021 the Deno authors. All rights reserved. MIT license. -pub mod errors; -pub mod runtime_compiler; +use crate::proc_state::ProcState; +use deno_core::Extension; + +mod errors; +mod runtime_compiler; pub mod testing; -pub use deno_runtime::ops::{reg_async, reg_sync}; +pub fn cli_exts(ps: ProcState, enable_compiler: bool) -> Vec<Extension> { + if enable_compiler { + vec![ + init_proc_state(ps), + errors::init(), + runtime_compiler::init(), + ] + } else { + vec![init_proc_state(ps), errors::init()] + } +} + +fn init_proc_state(ps: ProcState) -> Extension { + Extension::builder() + .state(move |state| { + state.put(ps.clone()); + Ok(()) + }) + .build() +} |