From 194f5d575a1e58c02a8e7c9fc11d7b874ca75bd5 Mon Sep 17 00:00:00 2001 From: Zalim Bashorov Date: Sat, 14 Apr 2018 06:43:30 +0300 Subject: [PATCH] [JS IR BE] use IrMemberAccessExpression.valueArgumentsCount instead of descriptor based IrFunctionSymbol.parameterCount and remove last one --- .../irToJs/IrElementToJsExpressionTransformer.kt | 11 ++++++----- .../ir/backend/js/transformers/irToJs/jsAstUtils.kt | 8 ++------ .../ir/backend/js/utils/descriptorBasedUtils.kt | 2 -- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/IrElementToJsExpressionTransformer.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/IrElementToJsExpressionTransformer.kt index 364b22868ff..b47563ec0c0 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/IrElementToJsExpressionTransformer.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/transformers/irToJs/IrElementToJsExpressionTransformer.kt @@ -5,11 +5,12 @@ package org.jetbrains.kotlin.ir.backend.js.transformers.irToJs -import org.jetbrains.kotlin.builtins.extractParameterNameFromFunctionTypeArgument -import org.jetbrains.kotlin.ir.backend.js.utils.* +import org.jetbrains.kotlin.ir.backend.js.utils.JsGenerationContext +import org.jetbrains.kotlin.ir.backend.js.utils.Namer +import org.jetbrains.kotlin.ir.backend.js.utils.isSpecial +import org.jetbrains.kotlin.ir.backend.js.utils.name import org.jetbrains.kotlin.ir.declarations.IrClass import org.jetbrains.kotlin.ir.declarations.IrConstructor -import org.jetbrains.kotlin.ir.declarations.IrSimpleFunction import org.jetbrains.kotlin.ir.expressions.* import org.jetbrains.kotlin.ir.symbols.IrConstructorSymbol import org.jetbrains.kotlin.js.backend.ast.* @@ -77,7 +78,7 @@ class IrElementToJsExpressionTransformer : BaseIrElementToJsNodeTransformer { +fun translateCallArguments(expression: IrMemberAccessExpression, context: JsGenerationContext): List { val transformer = IrElementToJsExpressionTransformer() // TODO: map to? - return (0 until parameterCount).map { + return (0 until expression.valueArgumentsCount).map { val argument = expression.getValueArgument(it) argument?.accept(transformer, context) ?: JsPrefixOperation(JsUnaryOperator.VOID, JsIntLiteral(1)) } diff --git a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/utils/descriptorBasedUtils.kt b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/utils/descriptorBasedUtils.kt index a300ee998fd..822ac371e6f 100644 --- a/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/utils/descriptorBasedUtils.kt +++ b/compiler/ir/backend.js/src/org/jetbrains/kotlin/ir/backend/js/utils/descriptorBasedUtils.kt @@ -8,8 +8,6 @@ package org.jetbrains.kotlin.ir.backend.js.utils import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.ir.symbols.* -val IrFunctionSymbol.parameterCount get() = descriptor.valueParameters.size - val IrFunctionSymbol.kind get() = descriptor.kind val IrFunctionSymbol.modality get() = descriptor.modality