From 14e23dbb5fd0d87c4387287c289e1b28e43d01c3 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Thu, 17 May 2018 09:15:47 -0700 Subject: [PATCH] Reduce map lookups --- src/compiler/checker.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index d0780406f1186..cec14246a04ba 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -15366,10 +15366,11 @@ namespace ts { links.resolvedSignatures = createMap(); } const cacheKey = "" + getTypeId(valueType); - if (links.resolvedSignatures.get(cacheKey) && links.resolvedSignatures.get(cacheKey) !== resolvingSignaturesArray) { - signatures = links.resolvedSignatures.get(cacheKey); + const cachedResolved = links.resolvedSignatures.get(cacheKey); + if (cachedResolved && cachedResolved !== resolvingSignaturesArray) { + signatures = cachedResolved; } - else if (!links.resolvedSignatures.get(cacheKey)) { + else if (!cachedResolved) { links.resolvedSignatures.set(cacheKey, resolvingSignaturesArray); links.resolvedSignatures.set(cacheKey, signatures = instantiateJsxSignatures(context, signatures)); }