Rename IdSignatureSerializer to IdSignatureFactory
^KT-61642
This commit is contained in:
+4
-4
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.backend.common.linkage.partial.PartialLinkageSupport
|
||||
import org.jetbrains.kotlin.backend.common.serialization.CompatibilityMode
|
||||
import org.jetbrains.kotlin.backend.common.serialization.DeclarationTable
|
||||
import org.jetbrains.kotlin.backend.common.serialization.GlobalDeclarationTable
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureFactory
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.PublicIdSignatureComputer
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildFun
|
||||
import org.jetbrains.kotlin.ir.builders.declarations.buildProperty
|
||||
@@ -48,10 +48,10 @@ class FakeOverrideGlobalDeclarationTable(
|
||||
open class FakeOverrideDeclarationTable(
|
||||
mangler: KotlinMangler.IrMangler,
|
||||
globalTable: FakeOverrideGlobalDeclarationTable = FakeOverrideGlobalDeclarationTable(mangler),
|
||||
signatureSerializerFactory: (PublicIdSignatureComputer, DeclarationTable) -> IdSignatureSerializer
|
||||
signatureSerializerFactory: (PublicIdSignatureComputer, DeclarationTable) -> IdSignatureFactory
|
||||
) : DeclarationTable(globalTable) {
|
||||
override val globalDeclarationTable: FakeOverrideGlobalDeclarationTable = globalTable
|
||||
override val signaturer: IdSignatureSerializer = signatureSerializerFactory(globalTable.publicIdSignatureComputer, this)
|
||||
override val signaturer: IdSignatureFactory = signatureSerializerFactory(globalTable.publicIdSignatureComputer, this)
|
||||
|
||||
fun clear() {
|
||||
this.table.clear()
|
||||
@@ -81,7 +81,7 @@ class FakeOverrideBuilder(
|
||||
private val partialLinkageSupport: PartialLinkageSupportForLinker,
|
||||
val platformSpecificClassFilter: FakeOverrideClassFilter = DefaultFakeOverrideClassFilter,
|
||||
private val fakeOverrideDeclarationTable: DeclarationTable = FakeOverrideDeclarationTable(mangler) { builder, table ->
|
||||
IdSignatureSerializer(builder, table)
|
||||
IdSignatureFactory(builder, table)
|
||||
},
|
||||
externalOverridabilityConditions: List<IrExternalOverridabilityCondition> = emptyList(),
|
||||
) : FakeOverrideBuilderStrategy(
|
||||
|
||||
+2
-2
@@ -5,7 +5,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.backend.common.serialization
|
||||
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureFactory
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.PublicIdSignatureComputer
|
||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||
import org.jetbrains.kotlin.ir.declarations.IrDeclaration
|
||||
@@ -56,7 +56,7 @@ open class DeclarationTable(globalTable: GlobalDeclarationTable) {
|
||||
protected val table = hashMapOf<IrDeclaration, IdSignature>()
|
||||
protected open val globalDeclarationTable: GlobalDeclarationTable = globalTable
|
||||
// TODO: we need to disentangle signature construction with declaration tables.
|
||||
open val signaturer: IdSignatureSerializer = IdSignatureSerializer(globalTable.publicIdSignatureComputer, this)
|
||||
open val signaturer: IdSignatureFactory = IdSignatureFactory(globalTable.publicIdSignatureComputer, this)
|
||||
|
||||
fun inFile(file: IrFile?, block: () -> Unit) {
|
||||
signaturer.inFile(file?.symbol, block)
|
||||
|
||||
+16
-1
@@ -188,7 +188,22 @@ class PublicIdSignatureComputer(val mangler: KotlinMangler.IrMangler) : IdSignat
|
||||
}
|
||||
}
|
||||
|
||||
class IdSignatureSerializer(
|
||||
/**
|
||||
* `IdSignatureSerializer` has been renamed to [IdSignatureFactory]. The [IdSignatureSerializer] type alias is added here
|
||||
* in place of the original `IdSignatureSerializer` class to keep source compatibility with the Compose compiler plugin
|
||||
* (this is only needed for a short duration of time).
|
||||
*
|
||||
* The [Deprecated] annotation was commented out because it leads to compilation errors in Compose plugin due to the use of `-Werror`.
|
||||
*/
|
||||
//@Deprecated(
|
||||
// message = "IdSignatureSerializer has been renamed to IdSignatureFactory." +
|
||||
// " Need to maintain this type alias for a while to keep source compatibility with the Compose plugin.",
|
||||
// replaceWith = ReplaceWith("IdSignatureFactory")
|
||||
//)
|
||||
@Suppress("unused")
|
||||
typealias IdSignatureSerializer = IdSignatureFactory
|
||||
|
||||
class IdSignatureFactory(
|
||||
private val publicSignatureBuilder: PublicIdSignatureComputer,
|
||||
private val table: DeclarationTable,
|
||||
startIndex: Int
|
||||
+2
-2
@@ -12,7 +12,7 @@ import org.jetbrains.kotlin.backend.common.overrides.FakeOverrideDeclarationTabl
|
||||
import org.jetbrains.kotlin.backend.common.overrides.FileLocalAwareLinker
|
||||
import org.jetbrains.kotlin.backend.common.serialization.*
|
||||
import org.jetbrains.kotlin.backend.common.serialization.encodings.BinarySymbolData
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureSerializer
|
||||
import org.jetbrains.kotlin.backend.common.serialization.signature.IdSignatureFactory
|
||||
import org.jetbrains.kotlin.backend.jvm.serialization.proto.JvmIr
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibilities
|
||||
import org.jetbrains.kotlin.ir.IrBuiltIns
|
||||
@@ -193,7 +193,7 @@ private fun buildFakeOverridesForLocalClasses(
|
||||
|
||||
class PrePopulatedDeclarationTable(
|
||||
sig2symbol: Map<IdSignature, IrSymbol>
|
||||
) : FakeOverrideDeclarationTable(JvmIrMangler, signatureSerializerFactory = ::IdSignatureSerializer) {
|
||||
) : FakeOverrideDeclarationTable(JvmIrMangler, signatureSerializerFactory = ::IdSignatureFactory) {
|
||||
private val symbol2Sig = sig2symbol.entries.associate { (x, y) -> y to x }
|
||||
|
||||
override fun tryComputeBackendSpecificSignature(declaration: IrDeclaration): IdSignature? {
|
||||
|
||||
Reference in New Issue
Block a user