IR: make IrCall take IrSimpleFunctionSymbol

This commit is contained in:
Georgy Bronnikov
2020-08-10 13:02:44 +03:00
parent 4901cdb11f
commit 18ae665d41
30 changed files with 124 additions and 100 deletions
@@ -17,10 +17,12 @@
package org.jetbrains.kotlin.ir.expressions
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
abstract class IrCall(
typeArgumentsCount: Int,
valueArgumentsCount: Int,
) : IrFunctionAccessExpression(typeArgumentsCount, valueArgumentsCount) {
override abstract val symbol: IrSimpleFunctionSymbol
abstract val superQualifierSymbol: IrClassSymbol?
}
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.ir.expressions.IrStatementOrigin
import org.jetbrains.kotlin.ir.expressions.typeParametersCount
import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
import org.jetbrains.kotlin.ir.symbols.IrConstructorSymbol
import org.jetbrains.kotlin.ir.symbols.IrFunctionSymbol
import org.jetbrains.kotlin.ir.symbols.IrSimpleFunctionSymbol
import org.jetbrains.kotlin.ir.types.IrType
import org.jetbrains.kotlin.ir.util.render
import org.jetbrains.kotlin.ir.visitors.IrElementVisitor
@@ -31,7 +31,7 @@ class IrCallImpl(
override val startOffset: Int,
override val endOffset: Int,
override val type: IrType,
override val symbol: IrFunctionSymbol,
override val symbol: IrSimpleFunctionSymbol,
typeArgumentsCount: Int,
valueArgumentsCount: Int,
override val origin: IrStatementOrigin? = null,
@@ -48,7 +48,7 @@ class IrCallImpl(
startOffset: Int,
endOffset: Int,
type: IrType,
symbol: IrFunctionSymbol,
symbol: IrSimpleFunctionSymbol,
origin: IrStatementOrigin? = null,
superQualifierSymbol: IrClassSymbol? = null
) : this(
@@ -61,7 +61,7 @@ class IrCallImpl(
startOffset: Int,
endOffset: Int,
type: IrType,
symbol: IrFunctionSymbol,
symbol: IrSimpleFunctionSymbol,
typeArgumentsCount: Int,
origin: IrStatementOrigin? = null,
superQualifierSymbol: IrClassSymbol? = null
@@ -519,7 +519,7 @@ open class DeepCopyIrTreeWithSymbols(
}
private fun shallowCopyCall(expression: IrCall): IrCall {
val newCallee = symbolRemapper.getReferencedFunction(expression.symbol)
val newCallee = symbolRemapper.getReferencedSimpleFunction(expression.symbol)
return IrCallImpl(
expression.startOffset, expression.endOffset,
expression.type.remapType(),
@@ -411,7 +411,7 @@ fun irConstructorCall(
fun irCall(
call: IrFunctionAccessExpression,
newFunction: IrFunction,
newFunction: IrSimpleFunction,
receiversAsArguments: Boolean = false,
argumentsAsReceivers: Boolean = false,
newSuperQualifierSymbol: IrClassSymbol? = null
@@ -426,7 +426,7 @@ fun irCall(
fun irCall(
call: IrFunctionAccessExpression,
newSymbol: IrFunctionSymbol,
newSymbol: IrSimpleFunctionSymbol,
receiversAsArguments: Boolean = false,
argumentsAsReceivers: Boolean = false,
newSuperQualifierSymbol: IrClassSymbol? = null