[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 package org.jetbrains.kotlin.commonizer.cir
interface CirExtensionReceiver : CirHasAnnotations { data class CirExtensionReceiver(
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(
override val annotations: List<CirAnnotation>, override val annotations: List<CirAnnotation>,
override val type: CirType val type: CirType
) : CirExtensionReceiver ) : CirHasAnnotations
@@ -14,7 +14,7 @@ class ExtensionReceiverCommonizer(classifiers: CirKnownClassifiers) :
wrappedCommonizerFactory = { TypeCommonizer(classifiers).asCommonizer() }, wrappedCommonizerFactory = { TypeCommonizer(classifiers).asCommonizer() },
extractor = { it.type }, extractor = { it.type },
builder = { receiverType -> builder = { receiverType ->
CirExtensionReceiver.create( CirExtensionReceiver(
annotations = emptyList(), annotations = emptyList(),
type = receiverType type = receiverType
) )
@@ -84,7 +84,7 @@ object CirDeserializers {
private fun extensionReceiver( private fun extensionReceiver(
receiverParameterType: KmType, receiverParameterType: KmType,
typeResolver: CirTypeResolver typeResolver: CirTypeResolver
): CirExtensionReceiver = CirExtensionReceiver.create( ): CirExtensionReceiver = CirExtensionReceiver(
annotations = emptyList(), // TODO nowhere to read receiver annotations from, see KT-42490 annotations = emptyList(), // TODO nowhere to read receiver annotations from, see KT-42490
type = type(receiverParameterType, typeResolver) type = type(receiverParameterType, typeResolver)
) )
@@ -50,7 +50,7 @@ class ExtensionReceiverCommonizerTest : AbstractCommonizerTest<CirExtensionRecei
override fun createCommonizer() = ExtensionReceiverCommonizer(MOCK_CLASSIFIERS) override fun createCommonizer() = ExtensionReceiverCommonizer(MOCK_CLASSIFIERS)
} }
private fun mockExtensionReceiver(receiverClassId: String) = CirExtensionReceiver.create( private fun mockExtensionReceiver(receiverClassId: String) = CirExtensionReceiver(
annotations = emptyList(), annotations = emptyList(),
type = mockClassType(receiverClassId) type = mockClassType(receiverClassId)
) )