[FIR] Extract java related effective visibility calculation to platform component

This commit is contained in:
Dmitriy Novozhilov
2020-08-28 13:28:02 +03:00
parent ed4c6a38b6
commit 3379d9b619
10 changed files with 75 additions and 198 deletions
@@ -13,7 +13,6 @@ import org.jetbrains.kotlin.analyzer.ModuleInfo
import org.jetbrains.kotlin.fir.*
import org.jetbrains.kotlin.fir.analysis.registerCheckersComponent
import org.jetbrains.kotlin.fir.java.deserialization.KotlinDeserializedJvmSymbolsProvider
import org.jetbrains.kotlin.fir.resolve.calls.jvm.registerJvmCallConflictResolverFactory
import org.jetbrains.kotlin.fir.resolve.providers.FirProvider
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.providers.impl.*
@@ -38,8 +37,7 @@ class FirJavaModuleBasedSession private constructor(
registerCommonComponents()
registerResolveComponents()
registerCheckersComponent()
registerJvmCallConflictResolverFactory()
registerJavaVisibilityChecker()
registerJavaSpecificComponents()
val kotlinScopeProvider = KotlinScopeProvider(::wrapScopeWithJvmMapped)
@@ -0,0 +1,16 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
*/
package org.jetbrains.kotlin.fir.java
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.registerJvmEffectiveVisibilityResolver
import org.jetbrains.kotlin.fir.resolve.calls.jvm.registerJvmCallConflictResolverFactory
fun FirSession.registerJavaSpecificComponents() {
registerJavaVisibilityChecker()
registerJvmCallConflictResolverFactory()
registerJvmEffectiveVisibilityResolver()
}