From fb36432cb51a65ae3a93376af3bf8bc1e3e7d892 Mon Sep 17 00:00:00 2001 From: Anton Bannykh Date: Tue, 24 Dec 2019 21:28:37 +0300 Subject: [PATCH] PrimitiveCompanionLowering --- .../ir/backend/js/lower/PrimitiveCompanionLowering.kt | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/PrimitiveCompanionLowering.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/PrimitiveCompanionLowering.kt index 5124e7ee6fe..9a7f9b7ff10 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/PrimitiveCompanionLowering.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/lower/PrimitiveCompanionLowering.kt @@ -5,12 +5,13 @@ package org.jetbrains.kotlin.ir.backend.js.lower -import org.jetbrains.kotlin.backend.common.FileLoweringPass +import org.jetbrains.kotlin.backend.common.BodyLoweringPass import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.ir.backend.js.JsIrBackendContext import org.jetbrains.kotlin.ir.declarations.IrClass -import org.jetbrains.kotlin.ir.declarations.IrFile +import org.jetbrains.kotlin.ir.declarations.IrDeclaration import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction +import org.jetbrains.kotlin.ir.expressions.IrBody import org.jetbrains.kotlin.ir.expressions.IrCall import org.jetbrains.kotlin.ir.expressions.IrExpression import org.jetbrains.kotlin.ir.expressions.IrGetObjectValue @@ -22,7 +23,7 @@ import org.jetbrains.kotlin.ir.util.irCall import org.jetbrains.kotlin.ir.visitors.IrElementTransformerVoid import org.jetbrains.kotlin.ir.visitors.transformChildrenVoid -class PrimitiveCompanionLowering(val context: JsIrBackendContext) : FileLoweringPass { +class PrimitiveCompanionLowering(val context: JsIrBackendContext) : BodyLoweringPass { private fun getActualPrimitiveCompanion(irClass: IrClass): IrClass? { if (!irClass.isCompanion) @@ -55,8 +56,8 @@ class PrimitiveCompanionLowering(val context: JsIrBackendContext) : FileLowering .single { it.name == function.name } } - override fun lower(irFile: IrFile) { - irFile.transformChildrenVoid(object : IrElementTransformerVoid() { + override fun lower(irBody: IrBody, container: IrDeclaration) { + irBody.transformChildrenVoid(object : IrElementTransformerVoid() { override fun visitGetObjectValue(expression: IrGetObjectValue): IrExpression { val irClass = expression.symbol.owner val actualCompanion = getActualPrimitiveCompanion(irClass) ?: return expression