diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2023-05-05 12:44:24 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-05 16:44:24 +0000 |
commit | a6c47ee74023f6ef683988cabc8caa95406e3c99 (patch) | |
tree | 74026c558a175b9cf6f881ec7229499878dd6a1a /ext/node/resolution.rs | |
parent | 5270c43e412cc636cd9923182169d166d181f78a (diff) |
refactor(ext/node): combine `deno_node::Fs` with `deno_fs::FileSystem` (#18991)
Diffstat (limited to 'ext/node/resolution.rs')
-rw-r--r-- | ext/node/resolution.rs | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/ext/node/resolution.rs b/ext/node/resolution.rs index 046c774fa..71b988c19 100644 --- a/ext/node/resolution.rs +++ b/ext/node/resolution.rs @@ -19,7 +19,6 @@ use deno_semver::npm::NpmPackageReqReference; use crate::errors; use crate::AllowAllNodePermissions; -use crate::NodeFs; use crate::NodePermissions; use crate::NpmResolver; use crate::PackageJson; @@ -107,12 +106,15 @@ impl NodeResolution { #[derive(Debug)] pub struct NodeResolver { - fs: Arc<dyn NodeFs>, + fs: Arc<dyn deno_fs::FileSystem>, npm_resolver: Arc<dyn NpmResolver>, } impl NodeResolver { - pub fn new(fs: Arc<dyn NodeFs>, npm_resolver: Arc<dyn NpmResolver>) -> Self { + pub fn new( + fs: Arc<dyn deno_fs::FileSystem>, + npm_resolver: Arc<dyn NpmResolver>, + ) -> Self { Self { fs, npm_resolver } } @@ -280,8 +282,9 @@ impl NodeResolver { p_str.to_string() }; - let (is_dir, is_file) = if let Ok(stats) = self.fs.metadata(Path::new(&p)) { - (stats.is_dir, stats.is_file) + let (is_dir, is_file) = if let Ok(stats) = self.fs.stat_sync(Path::new(&p)) + { + (stats.is_directory, stats.is_file) } else { (false, false) }; @@ -491,7 +494,7 @@ impl NodeResolver { referrer_kind: NodeModuleKind, ) -> Option<PathBuf> { fn probe_extensions( - fs: &dyn NodeFs, + fs: &dyn deno_fs::FileSystem, path: &Path, referrer_kind: NodeModuleKind, ) -> Option<PathBuf> { @@ -1079,7 +1082,7 @@ impl NodeResolver { ) -> Result<PathBuf, AnyError> { let file_path = url.to_file_path().unwrap(); let current_dir = deno_core::strip_unc_prefix( - self.fs.canonicalize(file_path.parent().unwrap())?, + self.fs.realpath_sync(file_path.parent().unwrap())?, ); let mut current_dir = current_dir.as_path(); let package_json_path = current_dir.join("package.json"); |