[FIR] Create session component with registered checkers

This commit is contained in:
Dmitriy Novozhilov
2020-05-08 12:32:50 +03:00
parent b61b4e4a97
commit 6d6ed1e755
18 changed files with 201 additions and 69 deletions
+1
View File
@@ -8,6 +8,7 @@ dependencies {
compile(project(":compiler:frontend.common"))
compile(project(":compiler:frontend.java"))
compile(project(":compiler:fir:resolve"))
compile(project(":compiler:fir:checkers"))
implementation(project(":compiler:fir:jvm"))
compileOnly(intellijCoreDep()) { includeJars("intellij-core") }
@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.fir.FirModuleBasedSession
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.FirSessionBase
import org.jetbrains.kotlin.fir.FirSessionProvider
import org.jetbrains.kotlin.fir.analysis.CheckersComponent
import org.jetbrains.kotlin.fir.extensions.FirExtensionsService
import org.jetbrains.kotlin.fir.java.deserialization.KotlinDeserializedJvmSymbolsProvider
import org.jetbrains.kotlin.fir.resolve.FirProvider
@@ -68,6 +69,11 @@ class FirJavaModuleBasedSession(
JvmCallConflictResolverFactory
)
registerComponent(
CheckersComponent::class,
CheckersComponent.componentWithDefaultCheckers()
)
Extensions.getArea(sessionProvider.project)
.getExtensionPoint(PsiElementFinder.EP_NAME)
.registerExtension(FirJavaElementFinder(this, sessionProvider.project))