[FIR] DeprecationsProvider: caching results
This commit is contained in:
committed by
teamcity
parent
25fc948d95
commit
a80870bc8f
+2
-1
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.fir.deserialization
|
||||
import org.jetbrains.kotlin.builtins.jvm.JvmBuiltInsSignatures
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.caches.firCachesFactory
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.builder.*
|
||||
import org.jetbrains.kotlin.fir.declarations.comparators.FirMemberDeclarationComparator
|
||||
@@ -226,7 +227,7 @@ fun deserializeClassToSymbol(
|
||||
|
||||
it.sourceElement = containerSource
|
||||
|
||||
it.replaceDeprecationsProvider(it.getDeprecationsProvider())
|
||||
it.replaceDeprecationsProvider(it.getDeprecationsProvider(session.firCachesFactory))
|
||||
|
||||
classProto.getExtensionOrNull(JvmProtoBuf.classModuleName)?.let { idx ->
|
||||
it.moduleName = nameResolver.getString(idx)
|
||||
|
||||
+4
-3
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.fir.deserialization
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.caches.firCachesFactory
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.builder.*
|
||||
import org.jetbrains.kotlin.fir.declarations.impl.FirDefaultPropertyGetter
|
||||
@@ -421,7 +422,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
}
|
||||
this.containerSource = c.containerSource
|
||||
this.initializer = c.constDeserializer.loadConstant(proto, symbol.callableId, c.nameResolver)
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false)
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false, c.session.firCachesFactory)
|
||||
|
||||
proto.contextReceiverTypes(c.typeTable).mapTo(contextReceivers, ::loadContextReceiver)
|
||||
}.apply {
|
||||
@@ -499,7 +500,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
)
|
||||
annotations +=
|
||||
c.annotationDeserializer.loadFunctionAnnotations(c.containerSource, proto, local.nameResolver, local.typeTable)
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false)
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false, c.session.firCachesFactory)
|
||||
this.containerSource = c.containerSource
|
||||
|
||||
proto.contextReceiverTypes(c.typeTable).mapTo(contextReceivers, ::loadContextReceiver)
|
||||
@@ -578,7 +579,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
annotations +=
|
||||
c.annotationDeserializer.loadConstructorAnnotations(c.containerSource, proto, local.nameResolver, local.typeTable)
|
||||
containerSource = c.containerSource
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false)
|
||||
deprecationsProvider = annotations.getDeprecationsProviderFromAnnotations(false, c.session.firCachesFactory)
|
||||
|
||||
contextReceivers.addAll(createContextReceiversForClass(classProto))
|
||||
}.build().apply {
|
||||
|
||||
Reference in New Issue
Block a user