[FIR] Get rid of FirSymbolProvider.getInstance(session)`

Replace with `session.firSymbolProvider`
This commit is contained in:
Dmitriy Novozhilov
2020-05-19 11:12:27 +03:00
parent 24c8a659ee
commit 67a259a903
6 changed files with 11 additions and 16 deletions
@@ -13,7 +13,7 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.descriptors.PackageViewDescriptor
import org.jetbrains.kotlin.descriptors.annotations.Annotations
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import org.jetbrains.kotlin.platform.TargetPlatform
@@ -30,7 +30,7 @@ class FirModuleDescriptor(val session: FirSession) : ModuleDescriptor {
get() = null
override fun getPackage(fqName: FqName): PackageViewDescriptor {
val symbolProvider = FirSymbolProvider.getInstance(session)
val symbolProvider = session.firSymbolProvider
if (symbolProvider.getPackage(fqName) != null) {
return FirPackageViewDescriptor(fqName, this)
}
@@ -7,8 +7,6 @@ package org.jetbrains.kotlin.fir.resolve
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.FirSessionComponent
import org.jetbrains.kotlin.fir.FirSymbolOwner
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
import org.jetbrains.kotlin.fir.scopes.FirScope
import org.jetbrains.kotlin.fir.scopes.impl.declaredMemberScope
import org.jetbrains.kotlin.fir.scopes.impl.nestedClassifierScope
@@ -60,10 +58,6 @@ abstract class FirSymbolProvider : FirSessionComponent {
open fun getNestedClassesNamesInClass(classId: ClassId): Set<Name> = emptySet()
abstract fun getPackage(fqName: FqName): FqName? // TODO: Replace to symbol sometime
companion object {
fun getInstance(session: FirSession) = session.firSymbolProvider
}
}
fun FirSession.getNestedClassifierScope(lookupTag: ConeClassLikeLookupTag): FirScope? =
@@ -12,6 +12,7 @@ import org.jetbrains.kotlin.fir.declarations.FirImport
import org.jetbrains.kotlin.fir.declarations.FirResolvePhase
import org.jetbrains.kotlin.fir.declarations.builder.buildResolvedImport
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
import org.jetbrains.kotlin.fir.visitors.CompositeTransformResult
import org.jetbrains.kotlin.fir.visitors.compose
@@ -32,13 +33,13 @@ open class FirImportResolveTransformer protected constructor(phase: FirResolvePh
constructor(session: FirSession) : this() {
this.session = session
// TODO: clarify this
symbolProvider = FirSymbolProvider.getInstance(session)
symbolProvider = session.firSymbolProvider
}
override fun transformFile(file: FirFile, data: Nothing?): CompositeTransformResult<FirFile> {
file.replaceResolvePhase(transformerPhase)
session = file.session
symbolProvider = FirSymbolProvider.getInstance(file.session)
symbolProvider = file.session.firSymbolProvider
return file.also { it.transformChildren(this, null) }.compose()
}
@@ -6,14 +6,14 @@
package org.jetbrains.kotlin.fir.scopes.impl
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.fir.resolve.impl.FirCompositeSymbolProvider
import org.jetbrains.kotlin.fir.resolve.impl.FirDependenciesSymbolProviderImpl
import org.jetbrains.kotlin.fir.scopes.FirScope
abstract class FirAbstractProviderBasedScope(val session: FirSession, lookupInFir: Boolean = true) :
FirScope() {
val provider = when (val symbolProvider = FirSymbolProvider.getInstance(session)) {
val provider = when (val symbolProvider = session.firSymbolProvider) {
is FirCompositeSymbolProvider -> symbolProvider.takeIf { !lookupInFir }?.providers?.find {
it is FirDependenciesSymbolProviderImpl
} ?: symbolProvider
@@ -7,9 +7,9 @@ package org.jetbrains.kotlin.fir.scopes.impl
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.declarations.FirResolvedImport
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.ScopeSession
import org.jetbrains.kotlin.fir.resolve.calls.tower.TowerScopeLevel
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor
import org.jetbrains.kotlin.fir.symbols.impl.FirCallableSymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirClassifierSymbol
@@ -26,7 +26,7 @@ abstract class FirAbstractSimpleImportingScope(
override fun processClassifiersByNameWithSubstitution(name: Name, processor: (FirClassifierSymbol<*>, ConeSubstitutor) -> Unit) {
val imports = simpleImports[name] ?: return
if (imports.isEmpty()) return
val provider = FirSymbolProvider.getInstance(session)
val provider = session.firSymbolProvider
for (import in imports) {
val importedName = import.importedName ?: continue
val classId =
@@ -6,7 +6,7 @@
package org.jetbrains.kotlin.fir.scopes.impl
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.resolve.FirSymbolProvider
import org.jetbrains.kotlin.fir.resolve.firSymbolProvider
import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor
import org.jetbrains.kotlin.fir.scopes.FirScope
import org.jetbrains.kotlin.fir.symbols.impl.*
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.name.Name
class FirPackageMemberScope(val fqName: FqName, val session: FirSession) : FirScope() {
private val symbolProvider = FirSymbolProvider.getInstance(session)
private val symbolProvider = session.firSymbolProvider
private val classifierCache = mutableMapOf<Name, FirClassifierSymbol<*>?>()