[IR] Reorder parameters in IrFactory#createEnumEntry
This is to prepare for IrFactory auto-generation (KT-59308).
This commit is contained in:
committed by
Space Team
parent
685eee38ac
commit
c2fde1a915
@@ -553,7 +553,11 @@ class Fir2IrClassifierStorage(
|
|||||||
val result = declareIrEnumEntry(signature) { symbol ->
|
val result = declareIrEnumEntry(signature) { symbol ->
|
||||||
val origin = enumEntry.computeIrOrigin(predefinedOrigin)
|
val origin = enumEntry.computeIrOrigin(predefinedOrigin)
|
||||||
irFactory.createEnumEntry(
|
irFactory.createEnumEntry(
|
||||||
startOffset, endOffset, origin, symbol, enumEntry.name
|
startOffset = startOffset,
|
||||||
|
endOffset = endOffset,
|
||||||
|
origin = origin,
|
||||||
|
name = enumEntry.name,
|
||||||
|
symbol = symbol,
|
||||||
).apply {
|
).apply {
|
||||||
declarationStorage.enterScope(this)
|
declarationStorage.enterScope(this)
|
||||||
if (irParent != null) {
|
if (irParent != null) {
|
||||||
|
|||||||
+1
-1
@@ -107,7 +107,7 @@ internal class StandaloneDeclarationGenerator(private val context: GeneratorCont
|
|||||||
startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, descriptor: ClassDescriptor, symbol: IrEnumEntrySymbol
|
startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, descriptor: ClassDescriptor, symbol: IrEnumEntrySymbol
|
||||||
): IrEnumEntry {
|
): IrEnumEntry {
|
||||||
// TODO: corresponging class?
|
// TODO: corresponging class?
|
||||||
val irEntry = irFactory.createEnumEntry(startOffset, endOffset, origin, symbol, descriptor.name)
|
val irEntry = irFactory.createEnumEntry(startOffset, endOffset, origin, descriptor.name, symbol)
|
||||||
|
|
||||||
return irEntry
|
return irEntry
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -65,8 +65,8 @@ interface IrFactory {
|
|||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
endOffset: Int,
|
endOffset: Int,
|
||||||
origin: IrDeclarationOrigin,
|
origin: IrDeclarationOrigin,
|
||||||
symbol: IrEnumEntrySymbol,
|
|
||||||
name: Name,
|
name: Name,
|
||||||
|
symbol: IrEnumEntrySymbol,
|
||||||
): IrEnumEntry
|
): IrEnumEntry
|
||||||
|
|
||||||
fun createErrorDeclaration(
|
fun createErrorDeclaration(
|
||||||
|
|||||||
@@ -81,8 +81,8 @@ abstract class AbstractIrFactoryImpl : IrFactory {
|
|||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
endOffset: Int,
|
endOffset: Int,
|
||||||
origin: IrDeclarationOrigin,
|
origin: IrDeclarationOrigin,
|
||||||
symbol: IrEnumEntrySymbol,
|
|
||||||
name: Name,
|
name: Name,
|
||||||
|
symbol: IrEnumEntrySymbol,
|
||||||
): IrEnumEntry =
|
): IrEnumEntry =
|
||||||
IrEnumEntryImpl(startOffset, endOffset, origin, symbol, name, factory = this)
|
IrEnumEntryImpl(startOffset, endOffset, origin, symbol, name, factory = this)
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -118,15 +118,15 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst
|
|||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
endOffset: Int,
|
endOffset: Int,
|
||||||
origin: IrDeclarationOrigin,
|
origin: IrDeclarationOrigin,
|
||||||
symbol: IrEnumEntrySymbol,
|
name: Name,
|
||||||
name: Name
|
symbol: IrEnumEntrySymbol
|
||||||
): IrEnumEntry {
|
): IrEnumEntry {
|
||||||
return super.createEnumEntry(
|
return super.createEnumEntry(
|
||||||
startOffset,
|
startOffset,
|
||||||
endOffset,
|
endOffset,
|
||||||
origin,
|
origin,
|
||||||
symbol,
|
|
||||||
name,
|
name,
|
||||||
|
symbol,
|
||||||
).register()
|
).register()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -70,12 +70,12 @@ class LazyIrFactory(
|
|||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
endOffset: Int,
|
endOffset: Int,
|
||||||
origin: IrDeclarationOrigin,
|
origin: IrDeclarationOrigin,
|
||||||
symbol: IrEnumEntrySymbol,
|
name: Name,
|
||||||
name: Name
|
symbol: IrEnumEntrySymbol
|
||||||
): IrEnumEntry = if (symbol.isBound)
|
): IrEnumEntry = if (symbol.isBound)
|
||||||
symbol.owner
|
symbol.owner
|
||||||
else
|
else
|
||||||
delegate.createEnumEntry(startOffset, endOffset, origin, symbol, name)
|
delegate.createEnumEntry(startOffset, endOffset, origin, name, symbol)
|
||||||
|
|
||||||
override fun createField(
|
override fun createField(
|
||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
|
|||||||
@@ -295,10 +295,11 @@ open class DeepCopyIrTreeWithSymbols(
|
|||||||
|
|
||||||
override fun visitEnumEntry(declaration: IrEnumEntry): IrEnumEntry =
|
override fun visitEnumEntry(declaration: IrEnumEntry): IrEnumEntry =
|
||||||
declaration.factory.createEnumEntry(
|
declaration.factory.createEnumEntry(
|
||||||
declaration.startOffset, declaration.endOffset,
|
startOffset = declaration.startOffset,
|
||||||
mapDeclarationOrigin(declaration.origin),
|
endOffset = declaration.endOffset,
|
||||||
symbolRemapper.getDeclaredEnumEntry(declaration.symbol),
|
origin = mapDeclarationOrigin(declaration.origin),
|
||||||
symbolRenamer.getEnumEntryName(declaration.symbol)
|
name = symbolRenamer.getEnumEntryName(declaration.symbol),
|
||||||
|
symbol = symbolRemapper.getDeclaredEnumEntry(declaration.symbol),
|
||||||
).apply {
|
).apply {
|
||||||
transformAnnotations(declaration)
|
transformAnnotations(declaration)
|
||||||
correspondingClass = declaration.correspondingClass?.transform()
|
correspondingClass = declaration.correspondingClass?.transform()
|
||||||
|
|||||||
@@ -654,7 +654,7 @@ open class SymbolTable(
|
|||||||
fun declareEnumEntry(
|
fun declareEnumEntry(
|
||||||
startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, descriptor: ClassDescriptor,
|
startOffset: Int, endOffset: Int, origin: IrDeclarationOrigin, descriptor: ClassDescriptor,
|
||||||
factory: (IrEnumEntrySymbol) -> IrEnumEntry = {
|
factory: (IrEnumEntrySymbol) -> IrEnumEntry = {
|
||||||
irFactory.createEnumEntry(startOffset, endOffset, origin, it, nameProvider.nameForDeclaration(descriptor))
|
irFactory.createEnumEntry(startOffset, endOffset, origin, nameProvider.nameForDeclaration(descriptor), it)
|
||||||
}
|
}
|
||||||
): IrEnumEntry =
|
): IrEnumEntry =
|
||||||
enumEntrySymbolTable.declare(
|
enumEntrySymbolTable.declare(
|
||||||
|
|||||||
+1
-1
@@ -139,8 +139,8 @@ internal class MissingDeclarationStubGenerator(private val builtIns: IrBuiltIns)
|
|||||||
startOffset = UNDEFINED_OFFSET,
|
startOffset = UNDEFINED_OFFSET,
|
||||||
endOffset = UNDEFINED_OFFSET,
|
endOffset = UNDEFINED_OFFSET,
|
||||||
origin = PartiallyLinkedDeclarationOrigin.MISSING_DECLARATION,
|
origin = PartiallyLinkedDeclarationOrigin.MISSING_DECLARATION,
|
||||||
|
name = symbol.guessName(),
|
||||||
symbol = symbol,
|
symbol = symbol,
|
||||||
name = symbol.guessName()
|
|
||||||
).setCommonParent()
|
).setCommonParent()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -629,7 +629,7 @@ class IrDeclarationDeserializer(
|
|||||||
private fun deserializeIrEnumEntry(proto: ProtoEnumEntry, setParent: Boolean = true): IrEnumEntry =
|
private fun deserializeIrEnumEntry(proto: ProtoEnumEntry, setParent: Boolean = true): IrEnumEntry =
|
||||||
withDeserializedIrDeclarationBase(proto.base, setParent) { symbol, uniqId, startOffset, endOffset, origin, _ ->
|
withDeserializedIrDeclarationBase(proto.base, setParent) { symbol, uniqId, startOffset, endOffset, origin, _ ->
|
||||||
symbolTable.declareEnumEntry(uniqId, { symbol.checkSymbolType(ENUM_ENTRY_SYMBOL) }) {
|
symbolTable.declareEnumEntry(uniqId, { symbol.checkSymbolType(ENUM_ENTRY_SYMBOL) }) {
|
||||||
irFactory.createEnumEntry(startOffset, endOffset, origin, it, deserializeName(proto.name))
|
irFactory.createEnumEntry(startOffset, endOffset, origin, deserializeName(proto.name), it)
|
||||||
}.apply {
|
}.apply {
|
||||||
if (proto.hasCorrespondingClass())
|
if (proto.hasCorrespondingClass())
|
||||||
correspondingClass = deserializeIrClass(proto.correspondingClass)
|
correspondingClass = deserializeIrClass(proto.correspondingClass)
|
||||||
|
|||||||
Reference in New Issue
Block a user