From 5de04f49cafb9609f65b3cc300325bd00a2e7d7c Mon Sep 17 00:00:00 2001 From: Anton Bannykh Date: Fri, 2 Apr 2021 17:46:29 +0300 Subject: [PATCH] JS PIR: updated declarations --- .../persistent/PersistentIrClass.kt | 36 ++++++------- .../persistent/PersistentIrConstructor.kt | 37 +++++++++---- .../persistent/PersistentIrEnumEntry.kt | 7 +++ .../persistent/PersistentIrField.kt | 11 +--- .../persistent/PersistentIrFunctionCommon.kt | 49 +++++++++-------- .../PersistentIrLocalDelegatedProperty.kt | 24 +++++---- .../persistent/PersistentIrPropertyCommon.kt | 42 ++++++++------- .../persistent/PersistentIrTypeAlias.kt | 7 +++ .../carriers/AnonymousInitializerCarrier.kt | 6 +-- .../persistent/carriers/ClassCarrier.kt | 34 ++++++------ .../persistent/carriers/ConstructorCarrier.kt | 45 ++++++++++------ .../persistent/carriers/EnumEntryCarrier.kt | 18 ++++--- .../carriers/ErrorDeclarationCarrier.kt | 6 +-- .../persistent/carriers/FieldCarrier.kt | 14 ++--- .../persistent/carriers/FunctionCarrier.kt | 53 +++++++++++-------- .../carriers/LocalDelegatedPropertyCarrier.kt | 30 ++++++----- .../persistent/carriers/PropertyCarrier.kt | 43 ++++++++------- .../persistent/carriers/TypeAliasCarrier.kt | 17 +++--- .../carriers/TypeParameterCarrier.kt | 6 +-- .../carriers/ValueParameterCarrier.kt | 6 +-- .../persistent/PersistentIrDeclarationBase.kt | 17 ++++++ .../persistent/carriers/BodyCarrier.kt | 13 ++++- .../persistent/carriers/DeclarationCarrier.kt | 8 +++ 23 files changed, 319 insertions(+), 210 deletions(-) diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrClass.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrClass.kt index 73273f33650..9c8dba9aad9 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrClass.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrClass.kt @@ -25,6 +25,8 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.ClassCarrier import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrClassSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.name.Name @@ -83,6 +85,12 @@ internal class PersistentIrClass( override var thisReceiverField: IrValueParameter? = null + override var thisReceiverSymbolField: IrValueParameterSymbol? + get() = thisReceiverField?.symbol + set(v) { + thisReceiverField = v?.owner + } + override var thisReceiver: IrValueParameter? get() = getCarrier().thisReceiverField set(v) { @@ -110,6 +118,12 @@ internal class PersistentIrClass( override var typeParametersField: List = emptyList() + override var typeParametersSymbolField: List + get() = typeParametersField.map { it.symbol } + set(v) { + typeParametersField = v.map { it.owner } + } + override var typeParameters: List get() = getCarrier().typeParametersField set(v) { @@ -130,16 +144,7 @@ internal class PersistentIrClass( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null override var modalityField: Modality = modality @@ -152,14 +157,5 @@ internal class PersistentIrClass( } } - override var attributeOwnerIdField: IrAttributeContainer = this - - override var attributeOwnerId: IrAttributeContainer - get() = getCarrier().attributeOwnerIdField - set(v) { - if (attributeOwnerId !== v) { - setCarrier() - attributeOwnerIdField = v - } - } + override var attributeOwnerId: IrAttributeContainer = this } diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrConstructor.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrConstructor.kt index 19d8055eed2..fe01e996c4a 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrConstructor.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrConstructor.kt @@ -19,6 +19,8 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.ConstructorCarri import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrConstructorSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.ir.types.impl.IrUninitializedType import org.jetbrains.kotlin.ir.types.impl.ReturnTypeIsNotInitializedException @@ -80,6 +82,12 @@ internal class PersistentIrConstructor( override var typeParametersField: List = emptyList() + override var typeParametersSymbolField: List + get() = typeParametersField.map { it.symbol } + set(v) { + typeParametersField = v.map { it.owner } + } + override var typeParameters: List get() = getCarrier().typeParametersField set(v) { @@ -91,6 +99,12 @@ internal class PersistentIrConstructor( override var dispatchReceiverParameterField: IrValueParameter? = null + override var dispatchReceiverParameterSymbolField: IrValueParameterSymbol? + get() = dispatchReceiverParameterField?.symbol + set(v) { + dispatchReceiverParameterField = v?.owner + } + override var dispatchReceiverParameter: IrValueParameter? get() = getCarrier().dispatchReceiverParameterField set(v) { @@ -102,6 +116,12 @@ internal class PersistentIrConstructor( override var extensionReceiverParameterField: IrValueParameter? = null + override var extensionReceiverParameterSymbolField: IrValueParameterSymbol? + get() = extensionReceiverParameterField?.symbol + set(v) { + extensionReceiverParameterField = v?.owner + } + override var extensionReceiverParameter: IrValueParameter? get() = getCarrier().extensionReceiverParameterField set(v) { @@ -113,6 +133,12 @@ internal class PersistentIrConstructor( override var valueParametersField: List = emptyList() + override var valueParametersSymbolField: List + get() = valueParametersField.map { it.symbol } + set(v) { + valueParametersField = v.map { it.owner } + } + override var valueParameters: List get() = getCarrier().valueParametersField set(v) { @@ -136,16 +162,7 @@ internal class PersistentIrConstructor( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null override var visibilityField: DescriptorVisibility = visibility diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrEnumEntry.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrEnumEntry.kt index a79f9003725..ebfd3cd8cf5 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrEnumEntry.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrEnumEntry.kt @@ -15,6 +15,7 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.EnumEntryCarrier import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrExpressionBody +import org.jetbrains.kotlin.ir.symbols.IrClassSymbol import org.jetbrains.kotlin.ir.symbols.IrEnumEntrySymbol import org.jetbrains.kotlin.name.Name @@ -51,6 +52,12 @@ internal class PersistentIrEnumEntry( override var correspondingClassField: IrClass? = null + override var correspondingClassSymbolField: IrClassSymbol? + get() = correspondingClassField?.symbol + set(v) { + correspondingClassField = v?.owner + } + override var correspondingClass: IrClass? get() = getCarrier().correspondingClassField set(v) { diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrField.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrField.kt index e66e13e1cc8..1977274a1df 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrField.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrField.kt @@ -82,16 +82,7 @@ internal class PersistentIrField( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null override var typeField: IrType = type diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrFunctionCommon.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrFunctionCommon.kt index 706e73fde30..0cc43fd38b2 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrFunctionCommon.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrFunctionCommon.kt @@ -19,6 +19,8 @@ import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.ir.types.impl.IrUninitializedType import org.jetbrains.kotlin.ir.types.impl.ReturnTypeIsNotInitializedException @@ -78,6 +80,12 @@ internal abstract class PersistentIrFunctionCommon( override var typeParametersField: List = emptyList() + override var typeParametersSymbolField: List + get() = typeParametersField.map { it.symbol } + set(v) { + typeParametersField = v.map { it.owner } + } + override var typeParameters: List get() = getCarrier().typeParametersField set(v) { @@ -89,6 +97,12 @@ internal abstract class PersistentIrFunctionCommon( override var dispatchReceiverParameterField: IrValueParameter? = null + override var dispatchReceiverParameterSymbolField: IrValueParameterSymbol? + get() = dispatchReceiverParameterField?.symbol + set(v) { + dispatchReceiverParameterField = v?.owner + } + override var dispatchReceiverParameter: IrValueParameter? get() = getCarrier().dispatchReceiverParameterField set(v) { @@ -100,6 +114,12 @@ internal abstract class PersistentIrFunctionCommon( override var extensionReceiverParameterField: IrValueParameter? = null + override var extensionReceiverParameterSymbolField: IrValueParameterSymbol? + get() = extensionReceiverParameterField?.symbol + set(v) { + extensionReceiverParameterField = v?.owner + } + override var extensionReceiverParameter: IrValueParameter? get() = getCarrier().extensionReceiverParameterField set(v) { @@ -111,6 +131,12 @@ internal abstract class PersistentIrFunctionCommon( override var valueParametersField: List = emptyList() + override var valueParametersSymbolField: List + get() = valueParametersField.map { it.symbol } + set(v) { + valueParametersField = v.map { it.owner } + } + override var valueParameters: List get() = getCarrier().valueParametersField set(v) { @@ -134,16 +160,7 @@ internal abstract class PersistentIrFunctionCommon( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null override var visibilityField: DescriptorVisibility = visibility @@ -167,17 +184,7 @@ internal abstract class PersistentIrFunctionCommon( } } - @Suppress("LeakingThis") - override var attributeOwnerIdField: IrAttributeContainer = this - - override var attributeOwnerId: IrAttributeContainer - get() = getCarrier().attributeOwnerIdField - set(v) { - if (attributeOwnerId !== v) { - setCarrier() - attributeOwnerIdField = v - } - } + override var attributeOwnerId: IrAttributeContainer = this override var correspondingPropertySymbolField: IrPropertySymbol? = null diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrLocalDelegatedProperty.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrLocalDelegatedProperty.kt index bef5d54fb94..d2b2c58542b 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrLocalDelegatedProperty.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrLocalDelegatedProperty.kt @@ -17,6 +17,7 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.LocalDelegatedPropertyCarrier import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrLocalDelegatedPropertySymbol +import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.name.Name @@ -78,6 +79,12 @@ internal class PersistentIrLocalDelegatedProperty( override var getterField: IrSimpleFunction? = null + override var getterSymbolField: IrSimpleFunctionSymbol? + get() = getterField?.symbol + set(v) { + getterField = v?.owner + } + override var getter: IrSimpleFunction get() = getCarrier().getterField!! set(v) { @@ -89,6 +96,12 @@ internal class PersistentIrLocalDelegatedProperty( override var setterField: IrSimpleFunction? = null + override var setterSymbolField: IrSimpleFunctionSymbol? + get() = setterField?.symbol + set(v) { + setterField = v?.owner + } + override var setter: IrSimpleFunction? get() = getCarrier().setterField set(v) { @@ -98,14 +111,5 @@ internal class PersistentIrLocalDelegatedProperty( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null } diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrPropertyCommon.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrPropertyCommon.kt index 94676906e8c..71957244dcf 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrPropertyCommon.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrPropertyCommon.kt @@ -16,6 +16,8 @@ import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.PropertyCarrier import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrFieldSymbol +import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource @@ -51,6 +53,12 @@ internal abstract class PersistentIrPropertyCommon( override var backingFieldField: IrField? = null + override var backingFieldSymbolField: IrFieldSymbol? + get() = backingFieldField?.symbol + set(v) { + backingFieldField = v?.owner + } + override var backingField: IrField? get() = getCarrier().backingFieldField set(v) { @@ -62,6 +70,12 @@ internal abstract class PersistentIrPropertyCommon( override var getterField: IrSimpleFunction? = null + override var getterSymbolField: IrSimpleFunctionSymbol? + get() = getterField?.symbol + set(v) { + getterField = v?.owner + } + override var getter: IrSimpleFunction? get() = getCarrier().getterField set(v) { @@ -73,6 +87,12 @@ internal abstract class PersistentIrPropertyCommon( override var setterField: IrSimpleFunction? = null + override var setterSymbolField: IrSimpleFunctionSymbol? + get() = setterField?.symbol + set(v) { + setterField = v?.owner + } + override var setter: IrSimpleFunction? get() = getCarrier().setterField set(v) { @@ -82,26 +102,8 @@ internal abstract class PersistentIrPropertyCommon( } } - override var metadataField: MetadataSource? = null - - override var metadata: MetadataSource? - get() = getCarrier().metadataField - set(v) { - if (metadata !== v) { - setCarrier() - metadataField = v - } - } + override var metadata: MetadataSource? = null @Suppress("LeakingThis") - override var attributeOwnerIdField: IrAttributeContainer = this - - override var attributeOwnerId: IrAttributeContainer - get() = getCarrier().attributeOwnerIdField - set(v) { - if (attributeOwnerId !== v) { - setCarrier() - attributeOwnerIdField = v - } - } + override var attributeOwnerId: IrAttributeContainer = this } diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrTypeAlias.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrTypeAlias.kt index cd48f91a6d0..a7cffb90e16 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrTypeAlias.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrTypeAlias.kt @@ -16,6 +16,7 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.TypeAliasCarrier import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrTypeAliasSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol import org.jetbrains.kotlin.ir.types.IrType import org.jetbrains.kotlin.name.Name @@ -55,6 +56,12 @@ internal class PersistentIrTypeAlias( override var typeParametersField: List = emptyList() + override var typeParametersSymbolField: List + get() = typeParametersField.map { it.symbol } + set(v) { + typeParametersField = v.map { it.owner } + } + override var typeParameters: List get() = getCarrier().typeParametersField set(v) { diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/AnonymousInitializerCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/AnonymousInitializerCarrier.kt index 502c1e0a596..07ac3a9cb4b 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/AnonymousInitializerCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/AnonymousInitializerCarrier.kt @@ -6,9 +6,9 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.expressions.IrBlockBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -18,7 +18,7 @@ internal interface AnonymousInitializerCarrier : DeclarationCarrier{ override fun clone(): AnonymousInitializerCarrier { return AnonymousInitializerCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, bodyField @@ -28,7 +28,7 @@ internal interface AnonymousInitializerCarrier : DeclarationCarrier{ internal class AnonymousInitializerCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val bodyField: IrBlockBody? diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ClassCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ClassCarrier.kt index 900d3b510f7..38962c85c3b 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ClassCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ClassCarrier.kt @@ -7,38 +7,36 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.descriptors.DescriptorVisibility import org.jetbrains.kotlin.descriptors.Modality -import org.jetbrains.kotlin.ir.declarations.IrAttributeContainer import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrTypeParameter import org.jetbrains.kotlin.ir.declarations.IrValueParameter -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! internal interface ClassCarrier : DeclarationCarrier{ val thisReceiverField: IrValueParameter? - val metadataField: MetadataSource? + val thisReceiverSymbolField: IrValueParameterSymbol? val visibilityField: DescriptorVisibility val modalityField: Modality - val attributeOwnerIdField: IrAttributeContainer val typeParametersField: List + val typeParametersSymbolField: List val superTypesField: List override fun clone(): ClassCarrier { return ClassCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, - thisReceiverField, - metadataField, + thisReceiverSymbolField, visibilityField, modalityField, - attributeOwnerIdField, - typeParametersField, + typeParametersSymbolField, superTypesField ) } @@ -46,14 +44,18 @@ internal interface ClassCarrier : DeclarationCarrier{ internal class ClassCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, - override val thisReceiverField: IrValueParameter?, - override val metadataField: MetadataSource?, + override val thisReceiverSymbolField: IrValueParameterSymbol?, override val visibilityField: DescriptorVisibility, override val modalityField: Modality, - override val attributeOwnerIdField: IrAttributeContainer, - override val typeParametersField: List, + override val typeParametersSymbolField: List, override val superTypesField: List -) : ClassCarrier +) : ClassCarrier { + + override val thisReceiverField: IrValueParameter? + get() = thisReceiverSymbolField?.owner + + override val typeParametersField: List by lazy { typeParametersSymbolField.map { it.owner } } +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ConstructorCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ConstructorCarrier.kt index 4495036cd15..ebca177c6cf 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ConstructorCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ConstructorCarrier.kt @@ -7,12 +7,13 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.descriptors.DescriptorVisibility import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrTypeParameter import org.jetbrains.kotlin.ir.declarations.IrValueParameter -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -20,42 +21,54 @@ import org.jetbrains.kotlin.ir.types.IrType internal interface ConstructorCarrier : DeclarationCarrier{ val returnTypeFieldField: IrType val dispatchReceiverParameterField: IrValueParameter? + val dispatchReceiverParameterSymbolField: IrValueParameterSymbol? val extensionReceiverParameterField: IrValueParameter? + val extensionReceiverParameterSymbolField: IrValueParameterSymbol? val bodyField: IrBody? - val metadataField: MetadataSource? val visibilityField: DescriptorVisibility val typeParametersField: List + val typeParametersSymbolField: List val valueParametersField: List + val valueParametersSymbolField: List override fun clone(): ConstructorCarrier { return ConstructorCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, returnTypeFieldField, - dispatchReceiverParameterField, - extensionReceiverParameterField, + dispatchReceiverParameterSymbolField, + extensionReceiverParameterSymbolField, bodyField, - metadataField, visibilityField, - typeParametersField, - valueParametersField + typeParametersSymbolField, + valueParametersSymbolField ) } } internal class ConstructorCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val returnTypeFieldField: IrType, - override val dispatchReceiverParameterField: IrValueParameter?, - override val extensionReceiverParameterField: IrValueParameter?, + override val dispatchReceiverParameterSymbolField: IrValueParameterSymbol?, + override val extensionReceiverParameterSymbolField: IrValueParameterSymbol?, override val bodyField: IrBody?, - override val metadataField: MetadataSource?, override val visibilityField: DescriptorVisibility, - override val typeParametersField: List, - override val valueParametersField: List -) : ConstructorCarrier + override val typeParametersSymbolField: List, + override val valueParametersSymbolField: List +) : ConstructorCarrier { + + override val dispatchReceiverParameterField: IrValueParameter? + get() = dispatchReceiverParameterSymbolField?.owner + + override val extensionReceiverParameterField: IrValueParameter? + get() = extensionReceiverParameterSymbolField?.owner + + override val typeParametersField: List by lazy { typeParametersSymbolField.map { it.owner } } + + override val valueParametersField: List by lazy { valueParametersSymbolField.map { it.owner } } +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/EnumEntryCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/EnumEntryCarrier.kt index 3cdfcf358ec..0c4eb91cf89 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/EnumEntryCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/EnumEntryCarrier.kt @@ -7,23 +7,25 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrExpressionBody +import org.jetbrains.kotlin.ir.symbols.IrClassSymbol +import org.jetbrains.kotlin.ir.symbols.IrSymbol // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! internal interface EnumEntryCarrier : DeclarationCarrier{ val correspondingClassField: IrClass? + val correspondingClassSymbolField: IrClassSymbol? val initializerExpressionField: IrExpressionBody? override fun clone(): EnumEntryCarrier { return EnumEntryCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, - correspondingClassField, + correspondingClassSymbolField, initializerExpressionField ) } @@ -31,9 +33,13 @@ internal interface EnumEntryCarrier : DeclarationCarrier{ internal class EnumEntryCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, - override val correspondingClassField: IrClass?, + override val correspondingClassSymbolField: IrClassSymbol?, override val initializerExpressionField: IrExpressionBody? -) : EnumEntryCarrier +) : EnumEntryCarrier { + + override val correspondingClassField: IrClass? + get() = correspondingClassSymbolField?.owner +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ErrorDeclarationCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ErrorDeclarationCarrier.kt index 66527a15912..e085a0e9da1 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ErrorDeclarationCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ErrorDeclarationCarrier.kt @@ -6,8 +6,8 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -16,7 +16,7 @@ internal interface ErrorDeclarationCarrier : DeclarationCarrier{ override fun clone(): ErrorDeclarationCarrier { return ErrorDeclarationCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField ) @@ -25,7 +25,7 @@ internal interface ErrorDeclarationCarrier : DeclarationCarrier{ internal class ErrorDeclarationCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List ) : ErrorDeclarationCarrier diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FieldCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FieldCarrier.kt index 5131c2fdf5b..d3e644e4bcc 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FieldCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FieldCarrier.kt @@ -6,11 +6,10 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrExpressionBody import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol +import org.jetbrains.kotlin.ir.symbols.IrSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -19,29 +18,26 @@ internal interface FieldCarrier : DeclarationCarrier{ val typeField: IrType val initializerField: IrExpressionBody? val correspondingPropertySymbolField: IrPropertySymbol? - val metadataField: MetadataSource? override fun clone(): FieldCarrier { return FieldCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, typeField, initializerField, - correspondingPropertySymbolField, - metadataField + correspondingPropertySymbolField ) } } internal class FieldCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val typeField: IrType, override val initializerField: IrExpressionBody?, - override val correspondingPropertySymbolField: IrPropertySymbol?, - override val metadataField: MetadataSource? + override val correspondingPropertySymbolField: IrPropertySymbol? ) : FieldCarrier diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FunctionCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FunctionCarrier.kt index 189c7528345..5255479a85a 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FunctionCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/FunctionCarrier.kt @@ -6,16 +6,16 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.descriptors.DescriptorVisibility -import org.jetbrains.kotlin.ir.declarations.IrAttributeContainer import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrTypeParameter import org.jetbrains.kotlin.ir.declarations.IrValueParameter -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.symbols.IrPropertySymbol import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol +import org.jetbrains.kotlin.ir.symbols.IrValueParameterSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -23,51 +23,60 @@ import org.jetbrains.kotlin.ir.types.IrType internal interface FunctionCarrier : DeclarationCarrier{ val returnTypeFieldField: IrType val dispatchReceiverParameterField: IrValueParameter? + val dispatchReceiverParameterSymbolField: IrValueParameterSymbol? val extensionReceiverParameterField: IrValueParameter? + val extensionReceiverParameterSymbolField: IrValueParameterSymbol? val bodyField: IrBody? - val metadataField: MetadataSource? val visibilityField: DescriptorVisibility val typeParametersField: List + val typeParametersSymbolField: List val valueParametersField: List + val valueParametersSymbolField: List val correspondingPropertySymbolField: IrPropertySymbol? val overriddenSymbolsField: List - val attributeOwnerIdField: IrAttributeContainer override fun clone(): FunctionCarrier { return FunctionCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, returnTypeFieldField, - dispatchReceiverParameterField, - extensionReceiverParameterField, + dispatchReceiverParameterSymbolField, + extensionReceiverParameterSymbolField, bodyField, - metadataField, visibilityField, - typeParametersField, - valueParametersField, + typeParametersSymbolField, + valueParametersSymbolField, correspondingPropertySymbolField, - overriddenSymbolsField, - attributeOwnerIdField + overriddenSymbolsField ) } } internal class FunctionCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val returnTypeFieldField: IrType, - override val dispatchReceiverParameterField: IrValueParameter?, - override val extensionReceiverParameterField: IrValueParameter?, + override val dispatchReceiverParameterSymbolField: IrValueParameterSymbol?, + override val extensionReceiverParameterSymbolField: IrValueParameterSymbol?, override val bodyField: IrBody?, - override val metadataField: MetadataSource?, override val visibilityField: DescriptorVisibility, - override val typeParametersField: List, - override val valueParametersField: List, + override val typeParametersSymbolField: List, + override val valueParametersSymbolField: List, override val correspondingPropertySymbolField: IrPropertySymbol?, - override val overriddenSymbolsField: List, - override val attributeOwnerIdField: IrAttributeContainer -) : FunctionCarrier + override val overriddenSymbolsField: List +) : FunctionCarrier { + + override val dispatchReceiverParameterField: IrValueParameter? + get() = dispatchReceiverParameterSymbolField?.owner + + override val extensionReceiverParameterField: IrValueParameter? + get() = extensionReceiverParameterSymbolField?.owner + + override val typeParametersField: List by lazy { typeParametersSymbolField.map { it.owner } } + + override val valueParametersField: List by lazy { valueParametersSymbolField.map { it.owner } } +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/LocalDelegatedPropertyCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/LocalDelegatedPropertyCarrier.kt index 90a9494b02f..cffb1b812cb 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/LocalDelegatedPropertyCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/LocalDelegatedPropertyCarrier.kt @@ -6,11 +6,11 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction import org.jetbrains.kotlin.ir.declarations.IrVariable -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol +import org.jetbrains.kotlin.ir.symbols.IrSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -19,32 +19,38 @@ internal interface LocalDelegatedPropertyCarrier : DeclarationCarrier{ val typeField: IrType val delegateField: IrVariable? val getterField: IrSimpleFunction? + val getterSymbolField: IrSimpleFunctionSymbol? val setterField: IrSimpleFunction? - val metadataField: MetadataSource? + val setterSymbolField: IrSimpleFunctionSymbol? override fun clone(): LocalDelegatedPropertyCarrier { return LocalDelegatedPropertyCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, typeField, delegateField, - getterField, - setterField, - metadataField + getterSymbolField, + setterSymbolField ) } } internal class LocalDelegatedPropertyCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val typeField: IrType, override val delegateField: IrVariable?, - override val getterField: IrSimpleFunction?, - override val setterField: IrSimpleFunction?, - override val metadataField: MetadataSource? -) : LocalDelegatedPropertyCarrier + override val getterSymbolField: IrSimpleFunctionSymbol?, + override val setterSymbolField: IrSimpleFunctionSymbol? +) : LocalDelegatedPropertyCarrier { + + override val getterField: IrSimpleFunction? + get() = getterSymbolField?.owner + + override val setterField: IrSimpleFunction? + get() = setterSymbolField?.owner +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/PropertyCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/PropertyCarrier.kt index d1fc7407db1..eac8b6b3a38 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/PropertyCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/PropertyCarrier.kt @@ -5,46 +5,53 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers -import org.jetbrains.kotlin.ir.declarations.IrAttributeContainer import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrField import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction -import org.jetbrains.kotlin.ir.declarations.MetadataSource import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrFieldSymbol +import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol +import org.jetbrains.kotlin.ir.symbols.IrSymbol // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! internal interface PropertyCarrier : DeclarationCarrier{ val backingFieldField: IrField? + val backingFieldSymbolField: IrFieldSymbol? val getterField: IrSimpleFunction? + val getterSymbolField: IrSimpleFunctionSymbol? val setterField: IrSimpleFunction? - val metadataField: MetadataSource? - val attributeOwnerIdField: IrAttributeContainer + val setterSymbolField: IrSimpleFunctionSymbol? override fun clone(): PropertyCarrier { return PropertyCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, - backingFieldField, - getterField, - setterField, - metadataField, - attributeOwnerIdField + backingFieldSymbolField, + getterSymbolField, + setterSymbolField ) } } internal class PropertyCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, - override val backingFieldField: IrField?, - override val getterField: IrSimpleFunction?, - override val setterField: IrSimpleFunction?, - override val metadataField: MetadataSource?, - override val attributeOwnerIdField: IrAttributeContainer -) : PropertyCarrier + override val backingFieldSymbolField: IrFieldSymbol?, + override val getterSymbolField: IrSimpleFunctionSymbol?, + override val setterSymbolField: IrSimpleFunctionSymbol? +) : PropertyCarrier { + + override val backingFieldField: IrField? + get() = backingFieldSymbolField?.owner + + override val getterField: IrSimpleFunction? + get() = getterSymbolField?.owner + + override val setterField: IrSimpleFunction? + get() = setterSymbolField?.owner +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeAliasCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeAliasCarrier.kt index 7d4d291dd4e..d9a05d295f2 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeAliasCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeAliasCarrier.kt @@ -6,24 +6,26 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.declarations.IrTypeParameter import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.ir.symbols.IrTypeParameterSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! internal interface TypeAliasCarrier : DeclarationCarrier{ val typeParametersField: List + val typeParametersSymbolField: List val expandedTypeField: IrType override fun clone(): TypeAliasCarrier { return TypeAliasCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, - typeParametersField, + typeParametersSymbolField, expandedTypeField ) } @@ -31,9 +33,12 @@ internal interface TypeAliasCarrier : DeclarationCarrier{ internal class TypeAliasCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, - override val typeParametersField: List, + override val typeParametersSymbolField: List, override val expandedTypeField: IrType -) : TypeAliasCarrier +) : TypeAliasCarrier { + + override val typeParametersField: List by lazy { typeParametersSymbolField.map { it.owner } } +} diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeParameterCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeParameterCarrier.kt index 10378317a9d..a9fd6c53af7 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeParameterCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/TypeParameterCarrier.kt @@ -6,8 +6,8 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -18,7 +18,7 @@ internal interface TypeParameterCarrier : DeclarationCarrier{ override fun clone(): TypeParameterCarrier { return TypeParameterCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, superTypesField @@ -28,7 +28,7 @@ internal interface TypeParameterCarrier : DeclarationCarrier{ internal class TypeParameterCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val superTypesField: List diff --git a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ValueParameterCarrier.kt b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ValueParameterCarrier.kt index 88498d3ac2e..fbfebfd33e5 100644 --- a/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ValueParameterCarrier.kt +++ b/compiler/ir/ir.tree.persistent/gen/org/jetbrains/kotlin/ir/declarations/persistent/carriers/ValueParameterCarrier.kt @@ -6,9 +6,9 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin -import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent import org.jetbrains.kotlin.ir.expressions.IrConstructorCall import org.jetbrains.kotlin.ir.expressions.IrExpressionBody +import org.jetbrains.kotlin.ir.symbols.IrSymbol import org.jetbrains.kotlin.ir.types.IrType // Auto-generated by compiler/ir/ir.tree.persistent/generator/src/org/jetbrains/kotlin/ir/persistentIrGenerator/Main.kt. DO NOT EDIT! @@ -21,7 +21,7 @@ internal interface ValueParameterCarrier : DeclarationCarrier{ override fun clone(): ValueParameterCarrier { return ValueParameterCarrierImpl( lastModified, - parentField, + parentSymbolField, originField, annotationsField, defaultValueField, @@ -33,7 +33,7 @@ internal interface ValueParameterCarrier : DeclarationCarrier{ internal class ValueParameterCarrierImpl( override val lastModified: Int, - override val parentField: IrDeclarationParent?, + override val parentSymbolField: IrSymbol?, override val originField: IrDeclarationOrigin, override val annotationsField: List, override val defaultValueField: IrExpressionBody?, diff --git a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrDeclarationBase.kt b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrDeclarationBase.kt index dc08c7dad53..e63513d1b1b 100644 --- a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrDeclarationBase.kt +++ b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/PersistentIrDeclarationBase.kt @@ -13,6 +13,8 @@ import org.jetbrains.kotlin.ir.declarations.persistent.carriers.Carrier import org.jetbrains.kotlin.ir.declarations.persistent.carriers.DeclarationCarrier import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.utils.addToStdlib.cast interface PersistentIrDeclarationBase : PersistentIrElementBase, IrDeclaration, DeclarationCarrier { var removedOn: Int @@ -20,6 +22,12 @@ interface PersistentIrDeclarationBase : PersistentIrElem override var parentField: IrDeclarationParent? + override var parentSymbolField: IrSymbol? + get() = parentField?.let { (it as IrSymbolOwner).symbol } + set(v) { + parentField = v?.owner?.cast() + } + override var originField: IrDeclarationOrigin override var annotationsField: List @@ -135,6 +143,15 @@ interface PersistentIrBodyBase> : PersistentIrElemen override var containerField: IrDeclaration? + override var containerFieldSymbol: IrSymbol? + get() = (containerField as? IrSymbolOwner)?.symbol + set(s) { + containerField = s?.owner?.cast() + } + + val hasContainer: Boolean + get() = getCarrier().containerField != null + var container: IrDeclaration get() = getCarrier().containerField!! set(p) { diff --git a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/BodyCarrier.kt b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/BodyCarrier.kt index 54abd274f65..119d0b617ff 100644 --- a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/BodyCarrier.kt +++ b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/BodyCarrier.kt @@ -6,16 +6,25 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclaration +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.utils.addToStdlib.cast interface BodyCarrier : Carrier { + var containerFieldSymbol: IrSymbol? + var containerField: IrDeclaration? + get() = containerFieldSymbol?.owner?.cast() + set(v) { + containerFieldSymbol = v?.symbol + } + override fun clone(): BodyCarrier { - return BodyCarrierImpl(lastModified, containerField) + return BodyCarrierImpl(lastModified, containerFieldSymbol) } } internal class BodyCarrierImpl( override val lastModified: Int, - override var containerField: IrDeclaration? + override var containerFieldSymbol: IrSymbol? ) : BodyCarrier diff --git a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/DeclarationCarrier.kt b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/DeclarationCarrier.kt index a2623507b20..634c24533e3 100644 --- a/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/DeclarationCarrier.kt +++ b/compiler/ir/ir.tree.persistent/src/org/jetbrains/kotlin/ir/declarations/persistent/carriers/DeclarationCarrier.kt @@ -7,10 +7,18 @@ package org.jetbrains.kotlin.ir.declarations.persistent.carriers import org.jetbrains.kotlin.ir.declarations.IrDeclarationOrigin import org.jetbrains.kotlin.ir.declarations.IrDeclarationParent +import org.jetbrains.kotlin.ir.declarations.IrSymbolOwner import org.jetbrains.kotlin.ir.expressions.IrConstructorCall +import org.jetbrains.kotlin.ir.symbols.IrSymbol +import org.jetbrains.kotlin.utils.addToStdlib.cast interface DeclarationCarrier : Carrier { + val parentSymbolField: IrSymbol? + get() = parentField?.cast()?.symbol + val parentField: IrDeclarationParent? + get() = parentSymbolField?.owner?.cast() + val originField: IrDeclarationOrigin val annotationsField: List }