diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2021-09-24 11:10:42 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-24 11:10:42 -0400 |
commit | 01da1d0adc0d09d60eb765ac583be8108eb31e36 (patch) | |
tree | 21819769192f9b86c0c95f8a1bdcc911ceb2bd7b /cli/module_loader.rs | |
parent | 703ca905fd2ddd1860d704bf43aa66679a47a1e5 (diff) |
refactor: Rename ProgramState to ProcState (#12204)
Move Arc into struct
Diffstat (limited to 'cli/module_loader.rs')
-rw-r--r-- | cli/module_loader.rs | 50 |
1 files changed, 22 insertions, 28 deletions
diff --git a/cli/module_loader.rs b/cli/module_loader.rs index 575919495..faf1492bb 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -1,7 +1,7 @@ // Copyright 2018-2021 the Deno authors. All rights reserved. MIT license. use crate::module_graph::TypeLib; -use crate::program_state::ProgramState; +use crate::proc_state::ProcState; use deno_core::error::AnyError; use deno_core::futures::future::FutureExt; use deno_core::futures::Future; @@ -15,7 +15,6 @@ use std::cell::RefCell; use std::pin::Pin; use std::rc::Rc; use std::str; -use std::sync::Arc; pub struct CliModuleLoader { /// When flags contains a `.import_map_path` option, the content of the @@ -26,32 +25,29 @@ pub struct CliModuleLoader { /// worker. They are decoupled from the worker (dynamic) permissions since /// read access errors must be raised based on the parent thread permissions. pub root_permissions: Permissions, - pub program_state: Arc<ProgramState>, + pub ps: ProcState, } impl CliModuleLoader { - pub fn new(program_state: Arc<ProgramState>) -> Rc<Self> { - let lib = if program_state.flags.unstable { + pub fn new(ps: ProcState) -> Rc<Self> { + let lib = if ps.flags.unstable { TypeLib::UnstableDenoWindow } else { TypeLib::DenoWindow }; - let import_map = program_state.maybe_import_map.clone(); + let import_map = ps.maybe_import_map.clone(); Rc::new(CliModuleLoader { import_map, lib, root_permissions: Permissions::allow_all(), - program_state, + ps, }) } - pub fn new_for_worker( - program_state: Arc<ProgramState>, - permissions: Permissions, - ) -> Rc<Self> { - let lib = if program_state.flags.unstable { + pub fn new_for_worker(ps: ProcState, permissions: Permissions) -> Rc<Self> { + let lib = if ps.flags.unstable { TypeLib::UnstableDenoWorker } else { TypeLib::DenoWorker @@ -61,7 +57,7 @@ impl CliModuleLoader { import_map: None, lib, root_permissions: permissions, - program_state, + ps, }) } } @@ -75,7 +71,7 @@ impl ModuleLoader for CliModuleLoader { is_main: bool, ) -> Result<ModuleSpecifier, AnyError> { // FIXME(bartlomieju): hacky way to provide compatibility with repl - let referrer = if referrer.is_empty() && self.program_state.flags.repl { + let referrer = if referrer.is_empty() && self.ps.flags.repl { deno_core::DUMMY_SPECIFIER } else { referrer @@ -102,13 +98,12 @@ impl ModuleLoader for CliModuleLoader { _is_dynamic: bool, ) -> Pin<Box<deno_core::ModuleSourceFuture>> { let module_specifier = module_specifier.clone(); - let program_state = self.program_state.clone(); + let ps = self.ps.clone(); // NOTE: this block is async only because of `deno_core` // interface requirements; module was already loaded // when constructing module graph during call to `prepare_load`. - async move { program_state.load(module_specifier, maybe_referrer) } - .boxed_local() + async move { ps.load(module_specifier, maybe_referrer) }.boxed_local() } fn prepare_load( @@ -120,7 +115,7 @@ impl ModuleLoader for CliModuleLoader { is_dynamic: bool, ) -> Pin<Box<dyn Future<Output = Result<(), AnyError>>>> { let specifier = specifier.clone(); - let program_state = self.program_state.clone(); + let ps = self.ps.clone(); let maybe_import_map = self.import_map.clone(); let state = op_state.borrow(); @@ -132,16 +127,15 @@ impl ModuleLoader for CliModuleLoader { // TODO(bartlomieju): `prepare_module_load` should take `load_id` param async move { - program_state - .prepare_module_load( - specifier, - lib, - root_permissions, - dynamic_permissions, - is_dynamic, - maybe_import_map, - ) - .await + ps.prepare_module_load( + specifier, + lib, + root_permissions, + dynamic_permissions, + is_dynamic, + maybe_import_map, + ) + .await } .boxed_local() } |