Trait deno_node::NpmResolver
source · pub trait NpmResolver: Debug + MaybeSend + MaybeSync {
// Required methods
fn resolve_package_folder_from_package(
&self,
specifier: &str,
referrer: &ModuleSpecifier,
mode: NodeResolutionMode
) -> Result<PathBuf, AnyError>;
fn in_npm_package(&self, specifier: &ModuleSpecifier) -> bool;
fn ensure_read_permission(
&self,
permissions: &dyn NodePermissions,
path: &Path
) -> Result<(), AnyError>;
// Provided methods
fn get_npm_process_state(&self) -> String { ... }
fn in_npm_package_at_dir_path(&self, path: &Path) -> bool { ... }
fn in_npm_package_at_file_path(&self, path: &Path) -> bool { ... }
}
Required Methods§
sourcefn resolve_package_folder_from_package(
&self,
specifier: &str,
referrer: &ModuleSpecifier,
mode: NodeResolutionMode
) -> Result<PathBuf, AnyError>
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.
fn in_npm_package(&self, specifier: &ModuleSpecifier) -> bool
fn ensure_read_permission( &self, permissions: &dyn NodePermissions, path: &Path ) -> Result<(), AnyError>
Provided Methods§
sourcefn get_npm_process_state(&self) -> String
fn get_npm_process_state(&self) -> String
Gets a string containing the serialized npm state of the process.
This will be set on the DENO_DONT_USE_INTERNAL_NODE_COMPAT_STATE
environment
variable when doing a child_process.fork
. The implementor can then check this environment
variable on startup to repopulate the internal npm state.