Extract control flow analysis to separate module

Extract a service interface out of ControlFlowInformationProviderImpl
and register its implementation in two "leaf" modules: 'cli',
'idea-core'.

This improves parallel build, since a lot of modules depend on
'frontend' but only these two modules reference the implementation and
thus depend on the full CFA implementation now.
This commit is contained in:
Alexander Udalov
2020-03-16 01:13:51 +01:00
committed by Alexander Udalov
parent c744515832
commit 2e2caae05c
70 changed files with 113 additions and 29 deletions
@@ -5,10 +5,13 @@
package org.jetbrains.kotlin.resolve
import org.jetbrains.kotlin.cfg.ControlFlowInformationProviderImpl
import org.jetbrains.kotlin.container.StorageComponentContainer
import org.jetbrains.kotlin.container.useInstance
object CompilerEnvironment : TargetEnvironment("Compiler") {
override fun configure(container: StorageComponentContainer) {
configureCompilerEnvironment(container)
container.useInstance(ControlFlowInformationProviderImpl.Factory)
}
}