Skip to content

Commit ad4403e

Browse files
ajafffAndy
authored and
Andy
committed
moduleNameResolver: fix invalid assertion and avoid unnecessary work (#26319)
* moduleNameResolver: fix invalid assertion and avoid unnecessary work Part of #18217 * assert nonRelativeModuleName
1 parent a6c5d50 commit ad4403e

File tree

1 file changed

+5
-8
lines changed

1 file changed

+5
-8
lines changed

src/compiler/moduleNameResolver.ts

+5-8
Original file line numberDiff line numberDiff line change
@@ -362,9 +362,7 @@ namespace ts {
362362
}
363363

364364
function getOrCreateCacheForModuleName(nonRelativeModuleName: string): PerModuleNameCache {
365-
if (isExternalModuleNameRelative(nonRelativeModuleName)) {
366-
return undefined!; // TODO: GH#18217
367-
}
365+
Debug.assert(!isExternalModuleNameRelative(nonRelativeModuleName));
368366
let perModuleNameCache = moduleNameToDirectoryMap.get(nonRelativeModuleName);
369367
if (!perModuleNameCache) {
370368
perModuleNameCache = createPerModuleNameCache();
@@ -493,10 +491,9 @@ namespace ts {
493491

494492
if (perFolderCache) {
495493
perFolderCache.set(moduleName, result);
496-
// put result in per-module name cache
497-
const perModuleNameCache = cache!.getOrCreateCacheForModuleName(moduleName);
498-
if (perModuleNameCache) {
499-
perModuleNameCache.set(containingDirectory, result);
494+
if (!isExternalModuleNameRelative(moduleName)) {
495+
// put result in per-module name cache
496+
cache!.getOrCreateCacheForModuleName(moduleName).set(containingDirectory, result);
500497
}
501498
}
502499
}
@@ -1253,9 +1250,9 @@ namespace ts {
12531250
if (resolvedUsingSettings) {
12541251
return { value: resolvedUsingSettings };
12551252
}
1256-
const perModuleNameCache = cache && cache.getOrCreateCacheForModuleName(moduleName);
12571253

12581254
if (!isExternalModuleNameRelative(moduleName)) {
1255+
const perModuleNameCache = cache && cache.getOrCreateCacheForModuleName(moduleName);
12591256
// Climb up parent directories looking for a module.
12601257
const resolved = forEachAncestorDirectory(containingDirectory, directory => {
12611258
const resolutionFromCache = tryFindNonRelativeModuleNameInCache(perModuleNameCache, moduleName, directory, traceEnabled, host, failedLookupLocations);

0 commit comments

Comments
 (0)