[IR] Add a new parameter to IrFactory#createPropertyWithLateBinding

This is to prepare for IrFactory auto-generation (KT-59308).
This commit is contained in:
Sergej Jaskiewicz
2023-07-20 16:30:52 +02:00
committed by Space Team
parent 8820867341
commit b4335c86c8
3 changed files with 23 additions and 8 deletions
@@ -164,9 +164,10 @@ interface IrFactory {
isConst: Boolean, isConst: Boolean,
isLateinit: Boolean, isLateinit: Boolean,
isDelegated: Boolean, isDelegated: Boolean,
isExternal: Boolean, isExternal: Boolean = false,
isExpect: Boolean, isExpect: Boolean = false,
): IrProperty isFakeOverride: Boolean = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
): IrPropertyWithLateBinding
fun createTypeAlias( fun createTypeAlias(
startOffset: Int, startOffset: Int,
@@ -201,10 +201,22 @@ abstract class AbstractIrFactoryImpl : IrFactory {
isDelegated: Boolean, isDelegated: Boolean,
isExternal: Boolean, isExternal: Boolean,
isExpect: Boolean, isExpect: Boolean,
): IrProperty = isFakeOverride: Boolean,
): IrPropertyWithLateBinding =
IrPropertyWithLateBindingImpl( IrPropertyWithLateBindingImpl(
startOffset, endOffset, origin, name, visibility, modality, startOffset = startOffset,
isVar, isConst, isLateinit, isDelegated, isExternal, isExpect, endOffset = endOffset,
origin = origin,
name = name,
visibility = visibility,
modality = modality,
isVar = isVar,
isConst = isConst,
isLateinit = isLateinit,
isDelegated = isDelegated,
isExternal = isExternal,
isExpect = isExpect,
isFakeOverride = isFakeOverride,
factory = this factory = this
) )
@@ -302,8 +302,9 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst
isLateinit: Boolean, isLateinit: Boolean,
isDelegated: Boolean, isDelegated: Boolean,
isExternal: Boolean, isExternal: Boolean,
isExpect: Boolean isExpect: Boolean,
): IrProperty { isFakeOverride: Boolean,
): IrPropertyWithLateBinding {
return super.createPropertyWithLateBinding( return super.createPropertyWithLateBinding(
startOffset, startOffset,
endOffset, endOffset,
@@ -317,6 +318,7 @@ class IrFactoryImplForJsIC(override val stageController: StageController) : Abst
isDelegated, isDelegated,
isExternal, isExternal,
isExpect, isExpect,
isFakeOverride,
).register() ).register()
} }