[IR] Make contextReceiverParametersCount abstract in IrFunction
This commit is contained in:
committed by
TeamCityServer
parent
3a9cf042d7
commit
d0794e6741
@@ -97,6 +97,8 @@ class Fir2IrLazyConstructor(
|
||||
error("Mutating Fir2Ir lazy elements is not possible")
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var valueParameters: List<IrValueParameter> by lazyVar(lock) {
|
||||
declarationStorage.enterScope(this)
|
||||
fir.valueParameters.mapIndexed { index, valueParameter ->
|
||||
|
||||
@@ -73,6 +73,8 @@ class Fir2IrLazyPropertyAccessor(
|
||||
}
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var valueParameters: List<IrValueParameter> by lazyVar(lock) {
|
||||
if (!isSetter) emptyList()
|
||||
else {
|
||||
|
||||
@@ -61,6 +61,8 @@ class Fir2IrLazySimpleFunction(
|
||||
}
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var valueParameters: List<IrValueParameter> by lazyVar(lock) {
|
||||
declarationStorage.enterScope(this)
|
||||
fir.valueParameters.mapIndexed { index, valueParameter ->
|
||||
|
||||
+1
@@ -62,6 +62,7 @@ class IrConstructorImpl(
|
||||
|
||||
override var dispatchReceiverParameter: IrValueParameter? = null
|
||||
override var extensionReceiverParameter: IrValueParameter? = null
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
override var valueParameters: List<IrValueParameter> = emptyList()
|
||||
|
||||
override var body: IrBody? = null
|
||||
|
||||
+2
@@ -54,6 +54,8 @@ abstract class IrFunctionCommonImpl(
|
||||
override var extensionReceiverParameter: IrValueParameter? = null
|
||||
override var valueParameters: List<IrValueParameter> = emptyList()
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var body: IrBody? = null
|
||||
|
||||
override var metadata: MetadataSource? = null
|
||||
|
||||
+2
@@ -168,6 +168,8 @@ internal class PersistentIrConstructor(
|
||||
}
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var metadata: MetadataSource? = null
|
||||
|
||||
override var visibilityField: DescriptorVisibility = visibility
|
||||
|
||||
+2
@@ -152,6 +152,8 @@ internal abstract class PersistentIrFunctionCommon(
|
||||
}
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = 0
|
||||
|
||||
override var bodyField: IrBody? = null
|
||||
|
||||
override var body: IrBody?
|
||||
|
||||
@@ -46,12 +46,12 @@ abstract class IrFunction :
|
||||
abstract var extensionReceiverParameter: IrValueParameter?
|
||||
abstract var valueParameters: List<IrValueParameter>
|
||||
|
||||
abstract var body: IrBody?
|
||||
|
||||
/**
|
||||
* The first `contextReceiverParametersCount` value parameters are context receivers
|
||||
*/
|
||||
var contextReceiverParametersCount: Int = 0
|
||||
abstract var contextReceiverParametersCount: Int
|
||||
|
||||
abstract var body: IrBody?
|
||||
|
||||
override fun <D> acceptChildren(visitor: IrElementVisitor<Unit, D>, data: D) {
|
||||
typeParameters.forEach { it.accept(visitor, data) }
|
||||
|
||||
@@ -89,6 +89,8 @@ class IrLazyConstructor(
|
||||
|
||||
override var valueParameters: List<IrValueParameter> by lazyVar(stubGenerator.lock) { createValueParameters() }
|
||||
|
||||
override var contextReceiverParametersCount: Int = descriptor.contextReceiverParameters.size
|
||||
|
||||
override var metadata: MetadataSource?
|
||||
get() = null
|
||||
set(_) = error("We should never need to store metadata of external declarations.")
|
||||
|
||||
@@ -71,6 +71,8 @@ class IrLazyFunction(
|
||||
if (tryLoadIr()) valueParameters else createValueParameters()
|
||||
}
|
||||
|
||||
override var contextReceiverParametersCount: Int = descriptor.contextReceiverParameters.size
|
||||
|
||||
override var metadata: MetadataSource?
|
||||
get() = null
|
||||
set(_) = error("We should never need to store metadata of external declarations.")
|
||||
|
||||
Reference in New Issue
Block a user