NodeResolver

Struct NodeResolver 

Source
pub struct NodeResolver<TInNpmPackageChecker: InNpmPackageChecker, TIsBuiltInNodeModuleChecker: IsBuiltInNodeModuleChecker, TNpmPackageFolderResolver: NpmPackageFolderResolver, TSys: NodeResolverSys> { /* private fields */ }

Implementations§

Source§

impl<TInNpmPackageChecker: InNpmPackageChecker, TIsBuiltInNodeModuleChecker: IsBuiltInNodeModuleChecker, TNpmPackageFolderResolver: NpmPackageFolderResolver, TSys: NodeResolverSys> NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

Source

pub fn new( in_npm_pkg_checker: TInNpmPackageChecker, is_built_in_node_module_checker: TIsBuiltInNodeModuleChecker, npm_pkg_folder_resolver: TNpmPackageFolderResolver, pkg_json_resolver: PackageJsonResolverRc<TSys>, sys: NodeResolutionSys<TSys>, options: NodeResolverOptions, ) -> Self

Source

pub fn require_conditions(&self) -> &[Cow<'static, str>]

Source

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

Source

pub fn is_builtin_node_module(&self, specifier: &str) -> bool

Source

pub fn resolve( &self, specifier: &str, referrer: &Url, resolution_mode: ResolutionMode, resolution_kind: NodeResolutionKind, ) -> Result<NodeResolution, NodeResolveError>

This function is an implementation of defaultResolve in lib/internal/modules/esm/resolve.js from Node.

Source

pub fn resolve_package_subpath_from_deno_module( &self, package_dir: &Path, package_subpath: Option<&str>, maybe_referrer: Option<&Url>, resolution_mode: ResolutionMode, resolution_kind: NodeResolutionKind, ) -> Result<UrlOrPath, PackageSubpathFromDenoModuleResolveError>

Source

pub fn resolve_binary_export( &self, package_folder: &Path, sub_path: Option<&str>, ) -> Result<BinValue, ResolvePkgJsonBinExportError>

Source

pub fn resolve_npm_binary_commands_for_package( &self, package_folder: &Path, ) -> Result<BTreeMap<String, BinValue>, ResolvePkgNpmBinaryCommandsError>

Source

pub fn resolve_npm_commands_from_bin_dir( &self, bin_dir: &Path, ) -> BTreeMap<String, BinValue>

Source

pub fn resolve_package_folder_from_package( &self, specifier: &str, referrer: &UrlOrPathRef<'_>, ) -> Result<PathBuf, PackageFolderResolveError>

Resolves an npm package folder path from the specified referrer.

Source

pub fn resolve_package_import( &self, name: &str, maybe_referrer: Option<&UrlOrPathRef<'_>>, referrer_pkg_json: Option<&PackageJson>, resolution_mode: ResolutionMode, resolution_kind: NodeResolutionKind, ) -> Result<UrlOrPath, PackageImportsResolveError>

Source

pub fn package_exports_resolve( &self, package_json_path: &Path, package_subpath: &str, package_exports: &Map<String, Value>, maybe_referrer: Option<&UrlOrPathRef<'_>>, resolution_mode: ResolutionMode, conditions: &[Cow<'static, str>], resolution_kind: NodeResolutionKind, ) -> Result<UrlOrPath, PackageExportsResolveError>

Source

pub fn handle_if_in_node_modules(&self, specifier: &Url) -> Option<Url>

Resolves a specifier that is pointing into a node_modules folder by canonicalizing it.

Returns None when the specifier is not in a node_modules folder.

Trait Implementations§

Source§

impl<TInNpmPackageChecker: Debug + InNpmPackageChecker, TIsBuiltInNodeModuleChecker: Debug + IsBuiltInNodeModuleChecker, TNpmPackageFolderResolver: Debug + NpmPackageFolderResolver, TSys: Debug + NodeResolverSys> Debug for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> Freeze for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>
where TInNpmPackageChecker: Freeze, TIsBuiltInNodeModuleChecker: Freeze, TNpmPackageFolderResolver: Freeze, TSys: Freeze,

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> !RefUnwindSafe for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> !Send for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> !Sync for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> Unpin for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>
where TInNpmPackageChecker: Unpin, TIsBuiltInNodeModuleChecker: Unpin, TNpmPackageFolderResolver: Unpin, TSys: Unpin,

§

impl<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys> !UnwindSafe for NodeResolver<TInNpmPackageChecker, TIsBuiltInNodeModuleChecker, TNpmPackageFolderResolver, TSys>

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSend for T
where T: ?Sized,

Source§

impl<T> MaybeSendSync for T

Source§

impl<T> MaybeSync for T
where T: ?Sized,