From 40668e3f96deb5408e0cd53b2923cf77de5bd99c Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Tue, 19 Jun 2018 15:52:38 +0300 Subject: [PATCH] Partial cleanup of ResolveElementCache --- .../kotlin/idea/project/ResolveElementCache.kt | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt index 4a4bfddc21d..aa57e787243 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/project/ResolveElementCache.kt @@ -31,8 +31,6 @@ import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.descriptors.annotations.Annotations import org.jetbrains.kotlin.frontend.di.createContainerForBodyResolve import org.jetbrains.kotlin.idea.caches.resolve.CodeFragmentAnalyzer -import org.jetbrains.kotlin.idea.stubindex.KotlinProbablyNothingFunctionShortNameIndex -import org.jetbrains.kotlin.idea.stubindex.KotlinProbablyNothingPropertyShortNameIndex import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.forEachDescendantOfType @@ -179,7 +177,8 @@ class ResolveElementCache( val (bindingContext, statementFilter) = performElementAdditionalResolve(resolveElement, contextElements, bodyResolveMode) - if (statementFilter == StatementFilter.NONE) { // partial resolve is not supported for the given declaration - full resolve performed instead + if (statementFilter == StatementFilter.NONE) { + // partial resolve is not supported for the given declaration - full resolve performed instead fullResolveMap[resolveElement] = CachedFullResolve(bindingContext, resolveElement) return bindingContext } @@ -542,12 +541,12 @@ class ResolveElementCache( val descriptor = resolveSession.resolveToDescriptor(property) as PropertyDescriptor ForceResolveUtil.forceResolveAllContents(descriptor) - val bodyResolveContext = BodyResolveContextForLazy(TopDownAnalysisMode.LocalDeclarations, { declaration -> + val bodyResolveContext = BodyResolveContextForLazy(TopDownAnalysisMode.LocalDeclarations) { declaration -> assert(declaration.parent == property || declaration == property) { "Must be called only for property accessors or for property, but called for $declaration" } resolveSession.declarationScopeProvider.getResolutionScopeForDeclaration(declaration) - }) + } bodyResolver.resolveProperty(bodyResolveContext, property, descriptor) @@ -696,7 +695,7 @@ class ResolveElementCache( statementFilter, file.jvmTarget, file.languageVersionSettings - ).get() + ).get() } // All additional resolve should be done to separate trace