[Commonizer] Drop CirExtensionReceiver interface for plain data class

This commit is contained in:
sebastian.sellmair
2021-07-07 16:54:55 +02:00
committed by Space
parent fdee49ee59
commit f0feca286e
4 changed files with 6 additions and 21 deletions
@@ -5,22 +5,7 @@
package org.jetbrains.kotlin.commonizer.cir
interface CirExtensionReceiver : CirHasAnnotations {
val type: CirType
companion object {
@Suppress("NOTHING_TO_INLINE")
inline fun create(
annotations: List<CirAnnotation>,
type: CirType
): CirExtensionReceiver = CirExtensionReceiverImpl(
annotations = annotations,
type = type
)
}
}
data class CirExtensionReceiverImpl(
data class CirExtensionReceiver(
override val annotations: List<CirAnnotation>,
override val type: CirType
) : CirExtensionReceiver
val type: CirType
) : CirHasAnnotations
@@ -14,7 +14,7 @@ class ExtensionReceiverCommonizer(classifiers: CirKnownClassifiers) :
wrappedCommonizerFactory = { TypeCommonizer(classifiers).asCommonizer() },
extractor = { it.type },
builder = { receiverType ->
CirExtensionReceiver.create(
CirExtensionReceiver(
annotations = emptyList(),
type = receiverType
)
@@ -84,7 +84,7 @@ object CirDeserializers {
private fun extensionReceiver(
receiverParameterType: KmType,
typeResolver: CirTypeResolver
): CirExtensionReceiver = CirExtensionReceiver.create(
): CirExtensionReceiver = CirExtensionReceiver(
annotations = emptyList(), // TODO nowhere to read receiver annotations from, see KT-42490
type = type(receiverParameterType, typeResolver)
)
@@ -50,7 +50,7 @@ class ExtensionReceiverCommonizerTest : AbstractCommonizerTest<CirExtensionRecei
override fun createCommonizer() = ExtensionReceiverCommonizer(MOCK_CLASSIFIERS)
}
private fun mockExtensionReceiver(receiverClassId: String) = CirExtensionReceiver.create(
private fun mockExtensionReceiver(receiverClassId: String) = CirExtensionReceiver(
annotations = emptyList(),
type = mockClassType(receiverClassId)
)