From 5b8b3644fcfe3ae6223ac74e3b197fa33d51a6ca Mon Sep 17 00:00:00 2001 From: Sergej Jaskiewicz Date: Wed, 14 Jun 2023 12:44:28 +0200 Subject: [PATCH] [IR] Reorder parameters in IrFactory#createLocalDelegatedProperty This is to prepare for IrFactory auto-generation (KT-59308). --- .../kotlin/fir/backend/Fir2IrDeclarationStorage.kt | 14 +++++++------- .../jetbrains/kotlin/ir/declarations/IrFactory.kt | 2 +- .../kotlin/ir/declarations/impl/IrFactoryImpl.kt | 2 +- .../ir/declarations/impl/IrFactoryImplForJsIC.kt | 4 ++-- .../kotlin/ir/util/DeepCopyIrTreeWithSymbols.kt | 13 +++++++------ .../org/jetbrains/kotlin/ir/util/SymbolTable.kt | 8 +++++++- .../serialization/IrDeclarationDeserializer.kt | 12 +++++++----- 7 files changed, 32 insertions(+), 23 deletions(-) diff --git a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt index 5de2932ecf2..4dc9a0e8fbd 100644 --- a/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt +++ b/compiler/fir/fir2ir/src/org/jetbrains/kotlin/fir/backend/Fir2IrDeclarationStorage.kt @@ -1293,13 +1293,13 @@ class Fir2IrDeclarationStorage( val origin = IrDeclarationOrigin.DEFINED val irProperty = property.convertWithOffsets { startOffset, endOffset -> irFactory.createLocalDelegatedProperty( - startOffset, - endOffset, - origin, - IrLocalDelegatedPropertySymbolImpl(), - property.name, - type, - property.isVar + startOffset = startOffset, + endOffset = endOffset, + origin = origin, + name = property.name, + symbol = IrLocalDelegatedPropertySymbolImpl(), + type = type, + isVar = property.isVar ) }.apply { parent = irParent diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/IrFactory.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/IrFactory.kt index fee3297c094..22cddd7b5d2 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/IrFactory.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/IrFactory.kt @@ -129,8 +129,8 @@ interface IrFactory { startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, - symbol: IrLocalDelegatedPropertySymbol, name: Name, + symbol: IrLocalDelegatedPropertySymbol, type: IrType, isVar: Boolean, ): IrLocalDelegatedProperty diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt index aa07c685fb7..fc6370a770a 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImpl.kt @@ -158,8 +158,8 @@ abstract class AbstractIrFactoryImpl : IrFactory { startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, - symbol: IrLocalDelegatedPropertySymbol, name: Name, + symbol: IrLocalDelegatedPropertySymbol, type: IrType, isVar: Boolean, ): IrLocalDelegatedProperty = diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImplForJsIC.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImplForJsIC.kt index b7848083bab..2ccc6068544 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImplForJsIC.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/declarations/impl/IrFactoryImplForJsIC.kt @@ -238,8 +238,8 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, - symbol: IrLocalDelegatedPropertySymbol, name: Name, + symbol: IrLocalDelegatedPropertySymbol, type: IrType, isVar: Boolean ): IrLocalDelegatedProperty { @@ -247,8 +247,8 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst startOffset, endOffset, origin, - symbol, name, + symbol, type, isVar, ).register() diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DeepCopyIrTreeWithSymbols.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DeepCopyIrTreeWithSymbols.kt index 606d2bf47d4..ceb05721f51 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DeepCopyIrTreeWithSymbols.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/DeepCopyIrTreeWithSymbols.kt @@ -283,12 +283,13 @@ open class DeepCopyIrTreeWithSymbols( override fun visitLocalDelegatedProperty(declaration: IrLocalDelegatedProperty): IrLocalDelegatedProperty = declaration.factory.createLocalDelegatedProperty( - declaration.startOffset, declaration.endOffset, - mapDeclarationOrigin(declaration.origin), - symbolRemapper.getDeclaredLocalDelegatedProperty(declaration.symbol), - declaration.name, - declaration.type.remapType(), - declaration.isVar + startOffset = declaration.startOffset, + endOffset = declaration.endOffset, + origin = mapDeclarationOrigin(declaration.origin), + name = declaration.name, + symbol = symbolRemapper.getDeclaredLocalDelegatedProperty(declaration.symbol), + type = declaration.type.remapType(), + isVar = declaration.isVar, ).apply { transformAnnotations(declaration) delegate = declaration.delegate.transform() diff --git a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt index f64e515795f..f539bd17db6 100644 --- a/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt +++ b/compiler/ir/ir.tree/src/org/jetbrains/kotlin/ir/util/SymbolTable.kt @@ -1144,7 +1144,13 @@ open class SymbolTable( type: IrType, factory: (IrLocalDelegatedPropertySymbol) -> IrLocalDelegatedProperty = { irFactory.createLocalDelegatedProperty( - startOffset, endOffset, origin, it, nameProvider.nameForDeclaration(descriptor), type, descriptor.isVar + startOffset = startOffset, + endOffset = endOffset, + origin = origin, + name = nameProvider.nameForDeclaration(descriptor), + symbol = it, + type = type, + isVar = descriptor.isVar ) } ): IrLocalDelegatedProperty = diff --git a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt index 59e4d253274..90b67147000 100644 --- a/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt +++ b/compiler/ir/serialization.common/src/org/jetbrains/kotlin/backend/common/serialization/IrDeclarationDeserializer.kt @@ -728,11 +728,13 @@ class IrDeclarationDeserializer( val nameAndType = BinaryNameAndType.decode(proto.nameType) val prop = irFactory.createLocalDelegatedProperty( - startOffset, endOffset, origin, - symbol.checkSymbolType(fallbackSymbolKind = null), - deserializeName(nameAndType.nameIndex), - deserializeIrType(nameAndType.typeIndex), - flags.isVar + startOffset = startOffset, + endOffset = endOffset, + origin = origin, + name = deserializeName(nameAndType.nameIndex), + symbol = symbol.checkSymbolType(fallbackSymbolKind = null), + type = deserializeIrType(nameAndType.typeIndex), + isVar = flags.isVar, ) prop.apply {