[IR] Add isHidden flag into IrValueParameter
This commit is contained in:
+2
-1
@@ -38,7 +38,8 @@ class IrValueParameterImpl(
|
||||
override val type: IrType,
|
||||
override val varargElementType: IrType?,
|
||||
override val isCrossinline: Boolean,
|
||||
override val isNoinline: Boolean
|
||||
override val isNoinline: Boolean,
|
||||
override val isHidden: Boolean = false
|
||||
) : IrValueParameter() {
|
||||
@ObsoleteDescriptorBasedAPI
|
||||
override val descriptor: ParameterDescriptor
|
||||
|
||||
+3
-2
@@ -40,7 +40,8 @@ internal class PersistentIrValueParameter(
|
||||
override val type: IrType,
|
||||
override val varargElementType: IrType?,
|
||||
override val isCrossinline: Boolean,
|
||||
override val isNoinline: Boolean
|
||||
override val isNoinline: Boolean,
|
||||
override val isHidden: Boolean = false
|
||||
) : IrValueParameter(),
|
||||
PersistentIrDeclarationBase<ValueParameterCarrier>,
|
||||
ValueParameterCarrier {
|
||||
@@ -52,7 +53,7 @@ internal class PersistentIrValueParameter(
|
||||
init {
|
||||
symbol.bind(this)
|
||||
}
|
||||
|
||||
|
||||
override var lastModified: Int = stageController.currentStage
|
||||
override var loweredUpTo: Int = stageController.currentStage
|
||||
override var values: Array<Carrier>? = null
|
||||
|
||||
@@ -32,6 +32,11 @@ abstract class IrValueParameter : IrValueDeclaration(), IrSymbolDeclaration<IrVa
|
||||
abstract val varargElementType: IrType?
|
||||
abstract val isCrossinline: Boolean
|
||||
abstract val isNoinline: Boolean
|
||||
// if true parameter is not included into IdSignature.
|
||||
// Skipping hidden params makes IrFunction be look similar to FE.
|
||||
// NOTE: it is introduced to fix KT-40980 because more clear solution was not possible to implement.
|
||||
// Once we are able to load any top-level declaration from klib this hack should be deprecated and removed.
|
||||
abstract val isHidden: Boolean
|
||||
|
||||
abstract var defaultValue: IrExpressionBody?
|
||||
|
||||
|
||||
Reference in New Issue
Block a user