pub trait NpmResolver: Debug + Send + Sync {
    // Required methods
    fn resolve_package_folder_from_package(
        &self,
        specifier: &str,
        referrer: &ModuleSpecifier,
        mode: NodeResolutionMode
    ) -> Result<PathBuf, AnyError>;
    fn resolve_package_folder_from_path(
        &self,
        path: &Path
    ) -> Result<PathBuf, AnyError>;
    fn resolve_package_folder_from_deno_module(
        &self,
        pkg_nv: &NpmPackageNv
    ) -> Result<PathBuf, AnyError>;
    fn resolve_pkg_id_from_pkg_req(
        &self,
        req: &NpmPackageReq
    ) -> Result<NpmPackageId, PackageReqNotFoundError>;
    fn resolve_nv_ref_from_pkg_req_ref(
        &self,
        req_ref: &NpmPackageReqReference
    ) -> Result<NpmPackageNvReference, PackageReqNotFoundError>;
    fn in_npm_package(&self, specifier: &ModuleSpecifier) -> bool;
    fn ensure_read_permission(
        &self,
        permissions: &dyn NodePermissions,
        path: &Path
    ) -> Result<(), AnyError>;

    // Provided method
    fn in_npm_package_at_path(&self, path: &Path) -> bool { ... }
}

Required Methods§

source

fn resolve_package_folder_from_package( &self, specifier: &str, referrer: &ModuleSpecifier, mode: NodeResolutionMode ) -> Result<PathBuf, AnyError>

Resolves an npm package folder path from an npm package referrer.

source

fn resolve_package_folder_from_path( &self, path: &Path ) -> Result<PathBuf, AnyError>

Resolves the npm package folder path from the specified path.

source

fn resolve_package_folder_from_deno_module( &self, pkg_nv: &NpmPackageNv ) -> Result<PathBuf, AnyError>

Resolves an npm package folder path from a Deno module.

source

fn resolve_pkg_id_from_pkg_req( &self, req: &NpmPackageReq ) -> Result<NpmPackageId, PackageReqNotFoundError>

source

fn resolve_nv_ref_from_pkg_req_ref( &self, req_ref: &NpmPackageReqReference ) -> Result<NpmPackageNvReference, PackageReqNotFoundError>

source

fn in_npm_package(&self, specifier: &ModuleSpecifier) -> bool

source

fn ensure_read_permission( &self, permissions: &dyn NodePermissions, path: &Path ) -> Result<(), AnyError>

Provided Methods§

Implementors§