IR: rename IrMemberAccessExpression.type/valueArguments
This commit is contained in:
committed by
Alexander Udalov
parent
fa8eca7a7b
commit
36183c411a
+11
-11
@@ -32,45 +32,45 @@ abstract class IrMemberAccessExpression<S : IrSymbol> : IrDeclarationReference()
|
|||||||
|
|
||||||
abstract val origin: IrStatementOrigin?
|
abstract val origin: IrStatementOrigin?
|
||||||
|
|
||||||
protected abstract val typeArgumentsByIndex: Array<IrType?>
|
protected abstract val typeArguments: Array<IrType?>
|
||||||
val typeArgumentsCount: Int get() = typeArgumentsByIndex.size
|
val typeArgumentsCount: Int get() = typeArguments.size
|
||||||
|
|
||||||
protected abstract val argumentsByParameterIndex: Array<IrExpression?>
|
protected abstract val valueArguments: Array<IrExpression?>
|
||||||
open val valueArgumentsCount: Int get() = argumentsByParameterIndex.size
|
open val valueArgumentsCount: Int get() = valueArguments.size
|
||||||
|
|
||||||
fun getValueArgument(index: Int): IrExpression? {
|
fun getValueArgument(index: Int): IrExpression? {
|
||||||
if (index >= valueArgumentsCount) {
|
if (index >= valueArgumentsCount) {
|
||||||
throw AssertionError("$this: No such value argument slot: $index")
|
throw AssertionError("$this: No such value argument slot: $index")
|
||||||
}
|
}
|
||||||
return argumentsByParameterIndex[index]
|
return valueArguments[index]
|
||||||
}
|
}
|
||||||
|
|
||||||
fun putValueArgument(index: Int, valueArgument: IrExpression?) {
|
fun putValueArgument(index: Int, valueArgument: IrExpression?) {
|
||||||
if (index >= valueArgumentsCount) {
|
if (index >= valueArgumentsCount) {
|
||||||
throw AssertionError("$this: No such value argument slot: $index")
|
throw AssertionError("$this: No such value argument slot: $index")
|
||||||
}
|
}
|
||||||
argumentsByParameterIndex[index] = valueArgument
|
valueArguments[index] = valueArgument
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getTypeArgument(index: Int): IrType? {
|
fun getTypeArgument(index: Int): IrType? {
|
||||||
if (index >= typeArgumentsCount) {
|
if (index >= typeArgumentsCount) {
|
||||||
throwNoSuchArgumentSlotException("type", index, typeArgumentsCount)
|
throwNoSuchArgumentSlotException("type", index, typeArgumentsCount)
|
||||||
}
|
}
|
||||||
return typeArgumentsByIndex[index]
|
return typeArguments[index]
|
||||||
}
|
}
|
||||||
|
|
||||||
fun putTypeArgument(index: Int, type: IrType?) {
|
fun putTypeArgument(index: Int, type: IrType?) {
|
||||||
if (index >= typeArgumentsCount) {
|
if (index >= typeArgumentsCount) {
|
||||||
throwNoSuchArgumentSlotException("type", index, typeArgumentsCount)
|
throwNoSuchArgumentSlotException("type", index, typeArgumentsCount)
|
||||||
}
|
}
|
||||||
typeArgumentsByIndex[index] = type
|
typeArguments[index] = type
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun <D> acceptChildren(visitor: IrElementVisitor<Unit, D>, data: D) {
|
override fun <D> acceptChildren(visitor: IrElementVisitor<Unit, D>, data: D) {
|
||||||
dispatchReceiver?.accept(visitor, data)
|
dispatchReceiver?.accept(visitor, data)
|
||||||
extensionReceiver?.accept(visitor, data)
|
extensionReceiver?.accept(visitor, data)
|
||||||
if (valueArgumentsCount > 0) {
|
if (valueArgumentsCount > 0) {
|
||||||
argumentsByParameterIndex.forEach { it?.accept(visitor, data) }
|
valueArguments.forEach { it?.accept(visitor, data) }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -78,8 +78,8 @@ abstract class IrMemberAccessExpression<S : IrSymbol> : IrDeclarationReference()
|
|||||||
dispatchReceiver = dispatchReceiver?.transform(transformer, data)
|
dispatchReceiver = dispatchReceiver?.transform(transformer, data)
|
||||||
extensionReceiver = extensionReceiver?.transform(transformer, data)
|
extensionReceiver = extensionReceiver?.transform(transformer, data)
|
||||||
if (valueArgumentsCount > 0) {
|
if (valueArgumentsCount > 0) {
|
||||||
argumentsByParameterIndex.forEachIndexed { i, irExpression ->
|
valueArguments.forEachIndexed { i, irExpression ->
|
||||||
argumentsByParameterIndex[i] = irExpression?.transform(transformer, data)
|
valueArguments[i] = irExpression?.transform(transformer, data)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,9 +38,9 @@ class IrCallImpl(
|
|||||||
override var superQualifierSymbol: IrClassSymbol? = null
|
override var superQualifierSymbol: IrClassSymbol? = null
|
||||||
) : IrCall() {
|
) : IrCall() {
|
||||||
|
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
override val valueArguments: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
||||||
|
|
||||||
override var contextReceiversCount = 0
|
override var contextReceiversCount = 0
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -26,9 +26,9 @@ class IrConstructorCallImpl(
|
|||||||
override val origin: IrStatementOrigin? = null,
|
override val origin: IrStatementOrigin? = null,
|
||||||
override var source: SourceElement = SourceElement.NO_SOURCE
|
override var source: SourceElement = SourceElement.NO_SOURCE
|
||||||
) : IrConstructorCall() {
|
) : IrConstructorCall() {
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
override val valueArguments: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
||||||
|
|
||||||
override var contextReceiversCount = 0
|
override var contextReceiversCount = 0
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -36,9 +36,9 @@ class IrDelegatingConstructorCallImpl(
|
|||||||
override val origin: IrStatementOrigin?
|
override val origin: IrStatementOrigin?
|
||||||
get() = null
|
get() = null
|
||||||
|
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
override val valueArguments: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
||||||
|
|
||||||
override var contextReceiversCount = 0
|
override var contextReceiversCount = 0
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -34,9 +34,9 @@ class IrEnumConstructorCallImpl(
|
|||||||
override val origin: IrStatementOrigin?
|
override val origin: IrStatementOrigin?
|
||||||
get() = null
|
get() = null
|
||||||
|
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
override val valueArguments: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
||||||
|
|
||||||
override var contextReceiversCount = 0
|
override var contextReceiversCount = 0
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -33,9 +33,9 @@ class IrFunctionReferenceImpl(
|
|||||||
override var reflectionTarget: IrFunctionSymbol? = symbol,
|
override var reflectionTarget: IrFunctionSymbol? = symbol,
|
||||||
override val origin: IrStatementOrigin? = null,
|
override val origin: IrStatementOrigin? = null,
|
||||||
) : IrFunctionReference() {
|
) : IrFunctionReference() {
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
override val valueArguments: Array<IrExpression?> = arrayOfNulls(valueArgumentsCount)
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
@ObsoleteDescriptorBasedAPI
|
@ObsoleteDescriptorBasedAPI
|
||||||
|
|||||||
+2
-2
@@ -34,9 +34,9 @@ class IrLocalDelegatedPropertyReferenceImpl(
|
|||||||
override var setter: IrSimpleFunctionSymbol?,
|
override var setter: IrSimpleFunctionSymbol?,
|
||||||
override val origin: IrStatementOrigin? = null,
|
override val origin: IrStatementOrigin? = null,
|
||||||
) : IrLocalDelegatedPropertyReference() {
|
) : IrLocalDelegatedPropertyReference() {
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = emptyArray()
|
override val typeArguments: Array<IrType?> = emptyArray()
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?>
|
override val valueArguments: Array<IrExpression?>
|
||||||
get() = throw UnsupportedOperationException("Property reference $symbol has no value arguments")
|
get() = throw UnsupportedOperationException("Property reference $symbol has no value arguments")
|
||||||
|
|
||||||
override val valueArgumentsCount: Int
|
override val valueArgumentsCount: Int
|
||||||
|
|||||||
+2
-2
@@ -35,9 +35,9 @@ class IrPropertyReferenceImpl(
|
|||||||
override var setter: IrSimpleFunctionSymbol?,
|
override var setter: IrSimpleFunctionSymbol?,
|
||||||
override val origin: IrStatementOrigin? = null,
|
override val origin: IrStatementOrigin? = null,
|
||||||
) : IrPropertyReference() {
|
) : IrPropertyReference() {
|
||||||
override val typeArgumentsByIndex: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
override val typeArguments: Array<IrType?> = arrayOfNulls(typeArgumentsCount)
|
||||||
|
|
||||||
override val argumentsByParameterIndex: Array<IrExpression?>
|
override val valueArguments: Array<IrExpression?>
|
||||||
get() = throw UnsupportedOperationException("Property reference $symbol has no value arguments")
|
get() = throw UnsupportedOperationException("Property reference $symbol has no value arguments")
|
||||||
|
|
||||||
override val valueArgumentsCount: Int
|
override val valueArgumentsCount: Int
|
||||||
|
|||||||
Reference in New Issue
Block a user