From eed22b04859b8e06b3b600fbdf70d2b948d83b10 Mon Sep 17 00:00:00 2001 From: romanart Date: Fri, 19 Oct 2018 15:28:52 +0300 Subject: [PATCH] [JS IR BE] Add `isTopLevel` property to IrFunction --- .../kotlin/ir/backend/js/transformers/irToJs/jsAstUtils.kt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsAstUtils.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsAstUtils.kt index ebd00ea2fe5..055413920a8 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsAstUtils.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/jsAstUtils.kt @@ -10,6 +10,7 @@ import org.jetbrains.kotlin.ir.backend.js.utils.JsGenerationContext import org.jetbrains.kotlin.ir.backend.js.utils.Namer import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrFunction +import org.jetbrains.kotlin.ir.declarations.IrPackageFragment import org.jetbrains.kotlin.ir.expressions.* import org.jetbrains.kotlin.js.backend.ast.* @@ -83,6 +84,9 @@ fun translateCallArguments(expression: IrMemberAccessExpression, context: JsGene val IrFunction.isStatic: Boolean get() = parent is IrClass && dispatchReceiverParameter == null +val IrFunction.isTopLevel: Boolean + get() = parent is IrPackageFragment + fun JsStatement.asBlock() = this as? JsBlock ?: JsBlock(this) fun JsName.objectInstanceName() = "${ident}_instance"