[IR] Reorder parameters in IrFactory#createTypeParameter
This is to prepare for IrFactory auto-generation (KT-59308).
This commit is contained in:
committed by
Space Team
parent
b1f7b5e982
commit
2b4a08524d
+8
-3
@@ -321,9 +321,14 @@ fun IrFunction.addValueParameter(name: Name, type: IrType, origin: IrDeclaration
|
||||
internal fun IrFactory.buildTypeParameter(builder: IrTypeParameterBuilder, parent: IrDeclarationParent): IrTypeParameter =
|
||||
with(builder) {
|
||||
createTypeParameter(
|
||||
startOffset, endOffset, origin,
|
||||
IrTypeParameterSymbolImpl(),
|
||||
name, index, isReified, variance
|
||||
startOffset = startOffset,
|
||||
endOffset = endOffset,
|
||||
origin = origin,
|
||||
name = name,
|
||||
symbol = IrTypeParameterSymbolImpl(),
|
||||
variance = variance,
|
||||
index = index,
|
||||
isReified = isReified,
|
||||
).also {
|
||||
it.superTypes = superTypes
|
||||
it.parent = parent
|
||||
|
||||
@@ -183,11 +183,11 @@ interface IrFactory {
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
name: Name,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
variance: Variance,
|
||||
index: Int,
|
||||
isReified: Boolean,
|
||||
variance: Variance,
|
||||
): IrTypeParameter
|
||||
|
||||
fun createValueParameter(
|
||||
|
||||
@@ -224,11 +224,11 @@ abstract class AbstractIrFactoryImpl : IrFactory {
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
name: Name,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
variance: Variance,
|
||||
index: Int,
|
||||
isReified: Boolean,
|
||||
variance: Variance,
|
||||
): IrTypeParameter =
|
||||
IrTypeParameterImpl(startOffset, endOffset, origin, symbol, name, index, isReified, variance, factory = this)
|
||||
|
||||
|
||||
+5
-5
@@ -346,21 +346,21 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
name: Name,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
variance: Variance,
|
||||
index: Int,
|
||||
isReified: Boolean,
|
||||
variance: Variance
|
||||
isReified: Boolean
|
||||
): IrTypeParameter {
|
||||
return super.createTypeParameter(
|
||||
startOffset,
|
||||
endOffset,
|
||||
origin,
|
||||
symbol,
|
||||
name,
|
||||
symbol,
|
||||
variance,
|
||||
index,
|
||||
isReified,
|
||||
variance,
|
||||
).register()
|
||||
}
|
||||
|
||||
|
||||
@@ -185,13 +185,13 @@ class LazyIrFactory(
|
||||
startOffset: Int,
|
||||
endOffset: Int,
|
||||
origin: IrDeclarationOrigin,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
name: Name,
|
||||
symbol: IrTypeParameterSymbol,
|
||||
variance: Variance,
|
||||
index: Int,
|
||||
isReified: Boolean,
|
||||
variance: Variance
|
||||
isReified: Boolean
|
||||
): IrTypeParameter = if (symbol.isBound)
|
||||
symbol.owner
|
||||
else
|
||||
delegate.createTypeParameter(startOffset, endOffset, origin, symbol, name, index, isReified, variance)
|
||||
delegate.createTypeParameter(startOffset, endOffset, origin, name, symbol, variance, index, isReified)
|
||||
}
|
||||
@@ -342,13 +342,14 @@ open class DeepCopyIrTreeWithSymbols(
|
||||
|
||||
private fun copyTypeParameter(declaration: IrTypeParameter): IrTypeParameter =
|
||||
declaration.factory.createTypeParameter(
|
||||
declaration.startOffset, declaration.endOffset,
|
||||
mapDeclarationOrigin(declaration.origin),
|
||||
symbolRemapper.getDeclaredTypeParameter(declaration.symbol),
|
||||
symbolRenamer.getTypeParameterName(declaration.symbol),
|
||||
declaration.index,
|
||||
declaration.isReified,
|
||||
declaration.variance
|
||||
startOffset = declaration.startOffset,
|
||||
endOffset = declaration.endOffset,
|
||||
origin = mapDeclarationOrigin(declaration.origin),
|
||||
name = symbolRenamer.getTypeParameterName(declaration.symbol),
|
||||
symbol = symbolRemapper.getDeclaredTypeParameter(declaration.symbol),
|
||||
variance = declaration.variance,
|
||||
index = declaration.index,
|
||||
isReified = declaration.isReified,
|
||||
).apply {
|
||||
transformAnnotations(declaration)
|
||||
}
|
||||
|
||||
@@ -988,8 +988,14 @@ open class SymbolTable(
|
||||
descriptor: TypeParameterDescriptor,
|
||||
typeParameterFactory: (IrTypeParameterSymbol) -> IrTypeParameter = {
|
||||
irFactory.createTypeParameter(
|
||||
startOffset, endOffset, origin, it, nameProvider.nameForDeclaration(descriptor),
|
||||
it.descriptor.index, it.descriptor.isReified, it.descriptor.variance
|
||||
startOffset = startOffset,
|
||||
endOffset = endOffset,
|
||||
origin = origin,
|
||||
name = nameProvider.nameForDeclaration(descriptor),
|
||||
symbol = it,
|
||||
variance = it.descriptor.variance,
|
||||
index = it.descriptor.index,
|
||||
isReified = it.descriptor.isReified
|
||||
)
|
||||
}
|
||||
): IrTypeParameter =
|
||||
@@ -1015,8 +1021,14 @@ open class SymbolTable(
|
||||
descriptor: TypeParameterDescriptor,
|
||||
typeParameterFactory: (IrTypeParameterSymbol) -> IrTypeParameter = {
|
||||
irFactory.createTypeParameter(
|
||||
startOffset, endOffset, origin, it, nameProvider.nameForDeclaration(descriptor),
|
||||
it.descriptor.index, it.descriptor.isReified, it.descriptor.variance
|
||||
startOffset = startOffset,
|
||||
endOffset = endOffset,
|
||||
origin = origin,
|
||||
name = nameProvider.nameForDeclaration(descriptor),
|
||||
symbol = it,
|
||||
variance = it.descriptor.variance,
|
||||
index = it.descriptor.index,
|
||||
isReified = it.descriptor.isReified
|
||||
)
|
||||
}
|
||||
): IrTypeParameter =
|
||||
|
||||
Reference in New Issue
Block a user