diff options
Diffstat (limited to 'resolvers/node/npm.rs')
-rw-r--r-- | resolvers/node/npm.rs | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/resolvers/node/npm.rs b/resolvers/node/npm.rs index 6b5f21db6..ab3a17942 100644 --- a/resolvers/node/npm.rs +++ b/resolvers/node/npm.rs @@ -13,16 +13,25 @@ use crate::sync::MaybeSend; use crate::sync::MaybeSync; #[allow(clippy::disallowed_types)] -pub type NpmResolverRc = crate::sync::MaybeArc<dyn NpmResolver>; +pub type NpmPackageFolderResolverRc = + crate::sync::MaybeArc<dyn NpmPackageFolderResolver>; -pub trait NpmResolver: std::fmt::Debug + MaybeSend + MaybeSync { - /// Resolves an npm package folder path from an npm package referrer. +pub trait NpmPackageFolderResolver: + std::fmt::Debug + MaybeSend + MaybeSync +{ + /// Resolves an npm package folder path from the specified referrer. fn resolve_package_folder_from_package( &self, specifier: &str, referrer: &Url, ) -> Result<PathBuf, errors::PackageFolderResolveError>; +} + +#[allow(clippy::disallowed_types)] +pub type InNpmPackageCheckerRc = crate::sync::MaybeArc<dyn InNpmPackageChecker>; +/// Checks if a provided specifier is in an npm package. +pub trait InNpmPackageChecker: std::fmt::Debug + MaybeSend + MaybeSync { fn in_npm_package(&self, specifier: &Url) -> bool; fn in_npm_package_at_dir_path(&self, path: &Path) -> bool { |