[IR] Rename IrAnnotationsFromPluginRegistrar to IrGeneratedDeclarationsRegistrar

In further commits, this service will be used not only for registering
  annotations, but newly generated IR declarations too
This commit is contained in:
Dmitriy Novozhilov
2023-11-24 15:20:37 +02:00
parent 751defc812
commit 1cdc8361d6
19 changed files with 33 additions and 30 deletions
@@ -8,7 +8,7 @@ package org.jetbrains.kotlin.fir.serialization
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
abstract class FirAdditionalMetadataAnnotationsProvider {
abstract class FirAdditionalMetadataProvider {
abstract fun findGeneratedAnnotationsFor(declaration: FirDeclaration): List<FirAnnotation>
abstract fun hasGeneratedAnnotationsFor(declaration: FirDeclaration): Boolean
}
@@ -30,7 +30,7 @@ class FirKLibSerializerExtension(
override val constValueProvider: ConstValueProvider?,
private val allowErrorTypes: Boolean,
private val exportKDoc: Boolean,
override val additionalAnnotationsProvider: FirAdditionalMetadataAnnotationsProvider?
override val additionalMetadataProvider: FirAdditionalMetadataProvider?
) : FirSerializerExtensionBase(KlibMetadataSerializerProtocol) {
override fun shouldUseTypeTable(): Boolean = true
@@ -27,7 +27,7 @@ abstract class FirSerializerExtension {
val annotationSerializer by lazy { FirAnnotationSerializer(session, stringTable, constValueProvider) }
protected abstract val constValueProvider: ConstValueProvider?
protected abstract val additionalAnnotationsProvider: FirAdditionalMetadataAnnotationsProvider?
protected abstract val additionalMetadataProvider: FirAdditionalMetadataProvider?
@OptIn(ConstValueProviderInternals::class)
internal inline fun <T> processFile(firFile: FirFile, crossinline action: () -> T): T {
@@ -107,12 +107,12 @@ abstract class FirSerializerExtension {
}
fun hasAdditionalAnnotations(declaration: FirDeclaration): Boolean {
return additionalAnnotationsProvider?.hasGeneratedAnnotationsFor(declaration) ?: false
return additionalMetadataProvider?.hasGeneratedAnnotationsFor(declaration) ?: false
}
// TODO: add usages
fun getAnnotationsGeneratedByPlugins(declaration: FirDeclaration): List<FirAnnotation> {
return additionalAnnotationsProvider?.findGeneratedAnnotationsFor(declaration) ?: emptyList()
return additionalMetadataProvider?.findGeneratedAnnotationsFor(declaration) ?: emptyList()
}
open fun serializeErrorType(type: ConeErrorType, builder: ProtoBuf.Type.Builder) {
@@ -152,7 +152,7 @@ abstract class FirSerializerExtensionBase(
private fun FirAnnotationContainer.allRequiredAnnotations(session: FirSession): List<FirAnnotation> {
val nonSourceAnnotations = nonSourceAnnotations(session)
val additionalMetadataAnnotationsProvider = additionalAnnotationsProvider
val additionalMetadataAnnotationsProvider = additionalMetadataProvider
return if (this is FirDeclaration && additionalMetadataAnnotationsProvider != null) {
nonSourceAnnotations + additionalMetadataAnnotationsProvider.findGeneratedAnnotationsFor(this)
} else {