[IR] Refactored a bit InlineFunctionResolver

This commit is contained in:
Igor Chevdar
2024-01-16 13:45:04 +02:00
committed by Space Team
parent f3a807c507
commit 978bf3d38d
5 changed files with 15 additions and 26 deletions
@@ -280,20 +280,11 @@ private val kotlinNothingValueExceptionPhase = makeIrFilePhase<CommonBackendCont
internal val functionInliningPhase = makeIrModulePhase(
{ context ->
class JvmInlineFunctionResolver : InlineFunctionResolver {
override fun getFunctionDeclaration(symbol: IrFunctionSymbol): IrFunction {
return symbol.owner
}
override fun getFunctionSymbol(irFunction: IrFunction): IrFunctionSymbol {
return irFunction.symbol
}
}
if (!context.irInlinerIsEnabled()) return@makeIrModulePhase FileLoweringPass.Empty
FunctionInlining(
context, JvmInlineFunctionResolver(), context.innerClassesSupport,
context,
innerClassesSupport = context.innerClassesSupport,
alwaysCreateTemporaryVariablesForArguments = true,
regenerateInlinedAnonymousObjects = true,
inlineArgumentsWithTheirOriginalTypeAndOffset = true