[descriptor][core][common] adaptation set of refactorings
7a7fe77b8e: Move static constants with builtin names to :core:descriptors.common module45cf221b97: Move util functions from KotlinBuiltIns to :core:descriptors.common modulea764732020: Rename `KotlinBuiltInsNames` to `StandardNames`
This commit is contained in:
+2
-1
@@ -5,7 +5,8 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.backend.konan
|
package org.jetbrains.kotlin.backend.konan
|
||||||
|
|
||||||
import org.jetbrains.kotlin.builtins.KOTLIN_REFLECT_FQ_NAME
|
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames.KOTLIN_REFLECT_FQ_NAME
|
||||||
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
import org.jetbrains.kotlin.descriptors.ModuleDescriptor
|
||||||
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
import org.jetbrains.kotlin.incremental.components.NoLookupLocation
|
||||||
|
|||||||
+2
-1
@@ -43,6 +43,7 @@ import org.jetbrains.kotlin.types.Variance
|
|||||||
import org.jetbrains.kotlin.util.OperatorNameConventions
|
import org.jetbrains.kotlin.util.OperatorNameConventions
|
||||||
import org.jetbrains.kotlin.backend.konan.getObjCMethodInfo
|
import org.jetbrains.kotlin.backend.konan.getObjCMethodInfo
|
||||||
import org.jetbrains.kotlin.backend.konan.lower.CallableReferenceLowering
|
import org.jetbrains.kotlin.backend.konan.lower.CallableReferenceLowering
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.ir.descriptors.*
|
import org.jetbrains.kotlin.ir.descriptors.*
|
||||||
|
|
||||||
internal interface KotlinStubs {
|
internal interface KotlinStubs {
|
||||||
@@ -762,7 +763,7 @@ private fun KotlinStubs.mapType(type: IrType, retained: Boolean, variadic: Boole
|
|||||||
mapType(type, retained, variadic, location, { reportUnsupportedType(it, type, location) })
|
mapType(type, retained, variadic, location, { reportUnsupportedType(it, type, location) })
|
||||||
|
|
||||||
private fun IrType.isTypeOfNullLiteral(): Boolean = this is IrSimpleType && hasQuestionMark
|
private fun IrType.isTypeOfNullLiteral(): Boolean = this is IrSimpleType && hasQuestionMark
|
||||||
&& classifier.isClassWithFqName(KotlinBuiltIns.FQ_NAMES.nothing)
|
&& classifier.isClassWithFqName(StandardNames.FqNames.nothing)
|
||||||
|
|
||||||
internal fun IrType.isVector(): Boolean {
|
internal fun IrType.isVector(): Boolean {
|
||||||
if (this is IrSimpleType && !this.hasQuestionMark) {
|
if (this is IrSimpleType && !this.hasQuestionMark) {
|
||||||
|
|||||||
+2
-1
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.backend.konan.descriptors.kotlinNativeInternal
|
|||||||
import org.jetbrains.kotlin.backend.konan.llvm.findMainEntryPoint
|
import org.jetbrains.kotlin.backend.konan.llvm.findMainEntryPoint
|
||||||
import org.jetbrains.kotlin.backend.konan.lower.TestProcessor
|
import org.jetbrains.kotlin.backend.konan.lower.TestProcessor
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.builtins.UnsignedType
|
import org.jetbrains.kotlin.builtins.UnsignedType
|
||||||
import org.jetbrains.kotlin.config.coroutinesIntrinsicsPackageFqName
|
import org.jetbrains.kotlin.config.coroutinesIntrinsicsPackageFqName
|
||||||
import org.jetbrains.kotlin.config.coroutinesPackageFqName
|
import org.jetbrains.kotlin.config.coroutinesPackageFqName
|
||||||
@@ -320,7 +321,7 @@ internal class KonanSymbols(
|
|||||||
}
|
}
|
||||||
|
|
||||||
val copyInto = arrays.map { symbol ->
|
val copyInto = arrays.map { symbol ->
|
||||||
val packageViewDescriptor = builtIns.builtInsModule.getPackage(KotlinBuiltIns.COLLECTIONS_PACKAGE_FQ_NAME)
|
val packageViewDescriptor = builtIns.builtInsModule.getPackage(StandardNames.COLLECTIONS_PACKAGE_FQ_NAME)
|
||||||
val functionDescriptor = packageViewDescriptor.memberScope
|
val functionDescriptor = packageViewDescriptor.memberScope
|
||||||
.getContributedFunctions(Name.identifier("copyInto"), NoLookupLocation.FROM_BACKEND)
|
.getContributedFunctions(Name.identifier("copyInto"), NoLookupLocation.FROM_BACKEND)
|
||||||
.single {
|
.single {
|
||||||
|
|||||||
+5
-4
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.backend.konan.ir
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.backend.common.atMostOne
|
import org.jetbrains.kotlin.backend.common.atMostOne
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.descriptors.Modality
|
import org.jetbrains.kotlin.descriptors.Modality
|
||||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||||
import org.jetbrains.kotlin.ir.declarations.*
|
import org.jetbrains.kotlin.ir.declarations.*
|
||||||
@@ -37,15 +38,15 @@ val IrFunction.allParameters: List<IrValueParameter>
|
|||||||
explicitParameters
|
explicitParameters
|
||||||
}
|
}
|
||||||
|
|
||||||
fun IrClass.isUnit() = this.fqNameForIrSerialization == KotlinBuiltIns.FQ_NAMES.unit.toSafe()
|
fun IrClass.isUnit() = this.fqNameForIrSerialization == StandardNames.FqNames.unit.toSafe()
|
||||||
|
|
||||||
fun IrClass.isKotlinArray() = this.fqNameForIrSerialization == KotlinBuiltIns.FQ_NAMES.array.toSafe()
|
fun IrClass.isKotlinArray() = this.fqNameForIrSerialization == StandardNames.FqNames.array.toSafe()
|
||||||
|
|
||||||
val IrClass.superClasses get() = this.superTypes.map { it.classifierOrFail as IrClassSymbol }
|
val IrClass.superClasses get() = this.superTypes.map { it.classifierOrFail as IrClassSymbol }
|
||||||
fun IrClass.getSuperClassNotAny() = this.superClasses.map { it.owner }.atMostOne { !it.isInterface && !it.isAny() }
|
fun IrClass.getSuperClassNotAny() = this.superClasses.map { it.owner }.atMostOne { !it.isInterface && !it.isAny() }
|
||||||
|
|
||||||
fun IrClass.isAny() = this.fqNameForIrSerialization == KotlinBuiltIns.FQ_NAMES.any.toSafe()
|
fun IrClass.isAny() = this.fqNameForIrSerialization == StandardNames.FqNames.any.toSafe()
|
||||||
fun IrClass.isNothing() = this.fqNameForIrSerialization == KotlinBuiltIns.FQ_NAMES.nothing.toSafe()
|
fun IrClass.isNothing() = this.fqNameForIrSerialization == StandardNames.FqNames.nothing.toSafe()
|
||||||
|
|
||||||
fun IrClass.getSuperInterfaces() = this.superClasses.map { it.owner }.filter { it.isInterface }
|
fun IrClass.getSuperInterfaces() = this.superClasses.map { it.owner }.filter { it.isInterface }
|
||||||
|
|
||||||
|
|||||||
+4
-3
@@ -6,6 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.backend.konan.objcexport
|
package org.jetbrains.kotlin.backend.konan.objcexport
|
||||||
|
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.builtins.functions.FunctionClassDescriptor
|
import org.jetbrains.kotlin.builtins.functions.FunctionClassDescriptor
|
||||||
import org.jetbrains.kotlin.builtins.functions.FunctionClassKind
|
import org.jetbrains.kotlin.builtins.functions.FunctionClassKind
|
||||||
import org.jetbrains.kotlin.builtins.getFunctionalClassKind
|
import org.jetbrains.kotlin.builtins.getFunctionalClassKind
|
||||||
@@ -32,7 +33,7 @@ internal object CustomTypeMappers {
|
|||||||
*
|
*
|
||||||
* Don't forget to update [hiddenTypes] after adding new one.
|
* Don't forget to update [hiddenTypes] after adding new one.
|
||||||
*/
|
*/
|
||||||
private val predefined: Map<ClassId, CustomTypeMapper> = with(KotlinBuiltIns.FQ_NAMES) {
|
private val predefined: Map<ClassId, CustomTypeMapper> = with(StandardNames.FqNames) {
|
||||||
val result = mutableListOf<CustomTypeMapper>()
|
val result = mutableListOf<CustomTypeMapper>()
|
||||||
|
|
||||||
result += Collection(list, "NSArray")
|
result += Collection(list, "NSArray")
|
||||||
@@ -73,7 +74,7 @@ internal object CustomTypeMappers {
|
|||||||
if (descriptor.isMappedFunctionClass()) {
|
if (descriptor.isMappedFunctionClass()) {
|
||||||
// TODO: somewhat hacky, consider using FunctionClassDescriptor.arity later.
|
// TODO: somewhat hacky, consider using FunctionClassDescriptor.arity later.
|
||||||
val arity = descriptor.declaredTypeParameters.size - 1 // Type parameters include return type.
|
val arity = descriptor.declaredTypeParameters.size - 1 // Type parameters include return type.
|
||||||
assert(classId == KotlinBuiltIns.getFunctionClassId(arity))
|
assert(classId == StandardNames.getFunctionClassId(arity))
|
||||||
return Function(arity)
|
return Function(arity)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -141,7 +142,7 @@ internal object CustomTypeMappers {
|
|||||||
|
|
||||||
private class Function(private val parameterCount: Int) : CustomTypeMapper {
|
private class Function(private val parameterCount: Int) : CustomTypeMapper {
|
||||||
override val mappedClassId: ClassId
|
override val mappedClassId: ClassId
|
||||||
get() = KotlinBuiltIns.getFunctionClassId(parameterCount)
|
get() = StandardNames.getFunctionClassId(parameterCount)
|
||||||
|
|
||||||
override fun mapType(mappedSuperType: KotlinType, translator: ObjCExportTranslatorImpl, objCExportScope: ObjCExportScope): ObjCNonNullReferenceType {
|
override fun mapType(mappedSuperType: KotlinType, translator: ObjCExportTranslatorImpl, objCExportScope: ObjCExportScope): ObjCNonNullReferenceType {
|
||||||
return translator.mapFunctionTypeIgnoringNullability(mappedSuperType, objCExportScope, returnsVoid = false)
|
return translator.mapFunctionTypeIgnoringNullability(mappedSuperType, objCExportScope, returnsVoid = false)
|
||||||
|
|||||||
+2
-5
@@ -8,11 +8,8 @@ package org.jetbrains.kotlin.backend.konan.objcexport
|
|||||||
import org.jetbrains.kotlin.backend.common.serialization.findSourceFile
|
import org.jetbrains.kotlin.backend.common.serialization.findSourceFile
|
||||||
import org.jetbrains.kotlin.backend.konan.*
|
import org.jetbrains.kotlin.backend.konan.*
|
||||||
import org.jetbrains.kotlin.backend.konan.descriptors.*
|
import org.jetbrains.kotlin.backend.konan.descriptors.*
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.*
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.isAny
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns.isAny
|
||||||
import org.jetbrains.kotlin.builtins.getReceiverTypeFromFunctionType
|
|
||||||
import org.jetbrains.kotlin.builtins.getReturnTypeFromFunctionType
|
|
||||||
import org.jetbrains.kotlin.builtins.getValueParameterTypesFromFunctionType
|
|
||||||
import org.jetbrains.kotlin.descriptors.*
|
import org.jetbrains.kotlin.descriptors.*
|
||||||
import org.jetbrains.kotlin.name.ClassId
|
import org.jetbrains.kotlin.name.ClassId
|
||||||
import org.jetbrains.kotlin.resolve.constants.ArrayValue
|
import org.jetbrains.kotlin.resolve.constants.ArrayValue
|
||||||
@@ -682,7 +679,7 @@ internal class ObjCExportTranslatorImpl(
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
private val throwableClassId = ClassId.topLevel(KotlinBuiltIns.FQ_NAMES.throwable)
|
private val throwableClassId = ClassId.topLevel(StandardNames.FqNames.throwable)
|
||||||
|
|
||||||
private fun getEffectiveThrows(method: FunctionDescriptor): Sequence<ClassId> {
|
private fun getEffectiveThrows(method: FunctionDescriptor): Sequence<ClassId> {
|
||||||
method.overriddenDescriptors.firstOrNull()?.let { return getEffectiveThrows(it) }
|
method.overriddenDescriptors.firstOrNull()?.let { return getEffectiveThrows(it) }
|
||||||
|
|||||||
+2
-2
@@ -10,7 +10,7 @@ import org.jetbrains.kotlin.backend.konan.KonanBackendContext
|
|||||||
import org.jetbrains.kotlin.backend.konan.KonanCompilationException
|
import org.jetbrains.kotlin.backend.konan.KonanCompilationException
|
||||||
import org.jetbrains.kotlin.backend.konan.descriptors.synthesizedName
|
import org.jetbrains.kotlin.backend.konan.descriptors.synthesizedName
|
||||||
import org.jetbrains.kotlin.backend.konan.ir.buildSimpleAnnotation
|
import org.jetbrains.kotlin.backend.konan.ir.buildSimpleAnnotation
|
||||||
import org.jetbrains.kotlin.builtins.KOTLIN_REFLECT_FQ_NAME
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
import org.jetbrains.kotlin.config.LanguageVersionSettings
|
||||||
import org.jetbrains.kotlin.descriptors.ParameterDescriptor
|
import org.jetbrains.kotlin.descriptors.ParameterDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||||
@@ -390,7 +390,7 @@ fun IrFunction.isRestrictedSuspendFunction(languageVersionSettings: LanguageVers
|
|||||||
fun IrFunction.isTypeOfIntrinsic(): Boolean =
|
fun IrFunction.isTypeOfIntrinsic(): Boolean =
|
||||||
this.name.asString() == "typeOf" &&
|
this.name.asString() == "typeOf" &&
|
||||||
this.valueParameters.isEmpty() &&
|
this.valueParameters.isEmpty() &&
|
||||||
(this.parent as? IrPackageFragment)?.fqName == KOTLIN_REFLECT_FQ_NAME
|
(this.parent as? IrPackageFragment)?.fqName == StandardNames.KOTLIN_REFLECT_FQ_NAME
|
||||||
|
|
||||||
fun IrBuilderWithScope.irByte(value: Byte) =
|
fun IrBuilderWithScope.irByte(value: Byte) =
|
||||||
IrConstImpl.byte(startOffset, endOffset, context.irBuiltIns.byteType, value)
|
IrConstImpl.byte(startOffset, endOffset, context.irBuiltIns.byteType, value)
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ package org.jetbrains.kotlin.cli.klib
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.backend.konan.descriptors.getPackageFragments
|
import org.jetbrains.kotlin.backend.konan.descriptors.getPackageFragments
|
||||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||||
|
import org.jetbrains.kotlin.builtins.StandardNames
|
||||||
import org.jetbrains.kotlin.descriptors.*
|
import org.jetbrains.kotlin.descriptors.*
|
||||||
import org.jetbrains.kotlin.descriptors.impl.DeclarationDescriptorVisitorEmptyBodies
|
import org.jetbrains.kotlin.descriptors.impl.DeclarationDescriptorVisitorEmptyBodies
|
||||||
import org.jetbrains.kotlin.renderer.*
|
import org.jetbrains.kotlin.renderer.*
|
||||||
@@ -143,7 +144,7 @@ class KlibPrinter(out: Appendable) {
|
|||||||
modifiers = DescriptorRendererModifier.ALL
|
modifiers = DescriptorRendererModifier.ALL
|
||||||
overrideRenderingPolicy = OverrideRenderingPolicy.RENDER_OVERRIDE
|
overrideRenderingPolicy = OverrideRenderingPolicy.RENDER_OVERRIDE
|
||||||
annotationArgumentsRenderingPolicy = AnnotationArgumentsRenderingPolicy.UNLESS_EMPTY
|
annotationArgumentsRenderingPolicy = AnnotationArgumentsRenderingPolicy.UNLESS_EMPTY
|
||||||
excludedAnnotationClasses += setOf(KotlinBuiltIns.FQ_NAMES.suppress)
|
excludedAnnotationClasses += setOf(StandardNames.FqNames.suppress)
|
||||||
|
|
||||||
classWithPrimaryConstructor = true
|
classWithPrimaryConstructor = true
|
||||||
renderConstructorKeyword = true
|
renderConstructorKeyword = true
|
||||||
|
|||||||
Reference in New Issue
Block a user