diff --git a/compiler/frontend/src/org/jetbrains/kotlin/descriptors/descriptorPsiUtils.kt b/compiler/frontend/src/org/jetbrains/kotlin/descriptors/descriptorPsiUtils.kt index 7f273f1d1c6..9629dd32290 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/descriptors/descriptorPsiUtils.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/descriptors/descriptorPsiUtils.kt @@ -27,4 +27,24 @@ fun PropertyAccessorDescriptor.hasBody(): Boolean { fun isBackingFieldReference(descriptor: DeclarationDescriptor?): Boolean { return descriptor is SyntheticFieldDescriptor -} \ No newline at end of file +} + +/** + * @return naturally-ordered list of the parameters that can have values specified at call site. + */ +val CallableDescriptor.explicitParameters: List + get() { + val result = ArrayList(valueParameters.size + 2) + + this.dispatchReceiverParameter?.let { + result.add(it) + } + + this.extensionReceiverParameter?.let { + result.add(it) + } + + result.addAll(valueParameters) + + return result + } diff --git a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/descriptors/DescriptorUtils.kt b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/descriptors/DescriptorUtils.kt index e0277ba4d35..9378d265609 100644 --- a/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/descriptors/DescriptorUtils.kt +++ b/compiler/ir/backend.common/src/org/jetbrains/kotlin/backend/common/descriptors/DescriptorUtils.kt @@ -16,10 +16,7 @@ package org.jetbrains.kotlin.backend.common.descriptors -import org.jetbrains.kotlin.descriptors.CallableDescriptor -import org.jetbrains.kotlin.descriptors.ConstructorDescriptor -import org.jetbrains.kotlin.descriptors.FunctionDescriptor -import org.jetbrains.kotlin.descriptors.ParameterDescriptor +import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.name.Name val String.synthesizedName: Name get() = Name.identifier(this.synthesizedString) @@ -40,23 +37,3 @@ val CallableDescriptor.allParameters: List } else { explicitParameters } - -/** - * @return naturally-ordered list of the parameters that can have values specified at call site. - */ -val CallableDescriptor.explicitParameters: List - get() { - val result = ArrayList(valueParameters.size + 2) - - this.dispatchReceiverParameter?.let { - result.add(it) - } - - this.extensionReceiverParameter?.let { - result.add(it) - } - - result.addAll(valueParameters) - - return result - } diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt index f159085310f..c90a38c1b2b 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/CAdapterGenerator.kt @@ -9,7 +9,6 @@ import kotlinx.cinterop.cValuesOf import java.io.PrintWriter import llvm.* import org.jetbrains.kotlin.backend.common.descriptors.allParameters -import org.jetbrains.kotlin.backend.common.descriptors.explicitParameters import org.jetbrains.kotlin.backend.common.pop import org.jetbrains.kotlin.backend.common.push import org.jetbrains.kotlin.backend.konan.llvm.* diff --git a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/DevirtualizationAnalysis.kt b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/DevirtualizationAnalysis.kt index e02e4ce1f08..70e4116255b 100644 --- a/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/DevirtualizationAnalysis.kt +++ b/kotlin-native/backend.native/compiler/ir/backend.native/src/org/jetbrains/kotlin/backend/konan/optimizations/DevirtualizationAnalysis.kt @@ -6,7 +6,6 @@ package org.jetbrains.kotlin.backend.konan.optimizations import org.jetbrains.kotlin.backend.common.IrElementTransformerVoidWithContext -import org.jetbrains.kotlin.backend.common.descriptors.explicitParameters import org.jetbrains.kotlin.backend.common.pop import org.jetbrains.kotlin.backend.common.push import org.jetbrains.kotlin.backend.common.lower.createIrBuilder @@ -17,6 +16,7 @@ import org.jetbrains.kotlin.backend.konan.util.IntArrayList import org.jetbrains.kotlin.backend.konan.util.LongArrayList import org.jetbrains.kotlin.backend.konan.lower.getObjectClassInstanceFunction import org.jetbrains.kotlin.descriptors.ClassKind +import org.jetbrains.kotlin.descriptors.explicitParameters import org.jetbrains.kotlin.ir.IrElement import org.jetbrains.kotlin.ir.builders.* import org.jetbrains.kotlin.ir.declarations.*