Introduce BodyResolveCache for storing resolve function body task in IDE

This commit is contained in:
Nikolay Krasko
2015-06-19 19:45:01 +03:00
parent 2dfed03b67
commit 8bea21a847
11 changed files with 102 additions and 15 deletions
@@ -33,6 +33,7 @@ import org.jetbrains.kotlin.load.kotlin.DeserializationComponentsForJava
import org.jetbrains.kotlin.load.kotlin.JvmVirtualFileFinderFactory
import org.jetbrains.kotlin.load.kotlin.KotlinJvmCheckerProvider
import org.jetbrains.kotlin.resolve.BindingTrace
import org.jetbrains.kotlin.resolve.BodyResolveCache
import org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer
import org.jetbrains.kotlin.resolve.LazyTopDownAnalyzerForTopLevel
import org.jetbrains.kotlin.resolve.jvm.JavaClassFinderPostConstruct
@@ -76,6 +77,7 @@ public fun createContainerForLazyResolveWithJava(
useInstance(moduleClassResolver)
useInstance(declarationProviderFactory)
useInstance(BodyResolveCache.ThrowException)
useImpl<ScopeProvider>()
useImpl<LazyResolveToken>()
}.let {
@@ -93,6 +95,7 @@ public fun createContainerForTopDownAnalyzerForJvm(
configureModule(moduleContext, KotlinJvmCheckerProvider, bindingTrace)
configureJavaTopDownAnalysis(moduleContentScope, moduleContext.project)
useInstance(declarationProviderFactory)
useInstance(BodyResolveCache.ThrowException)
useImpl<SingleModuleClassResolver>()
useImpl<ScopeProvider>()