From e5d2f4712ae7c30e03de549383f11db9f6b9ceb3 Mon Sep 17 00:00:00 2001 From: "Denis.Zharkov" Date: Thu, 13 Oct 2022 10:56:47 +0200 Subject: [PATCH] Minor. Reformat JavaTypeConversion.kt --- .../org/jetbrains/kotlin/fir/java/JavaTypeConversion.kt | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaTypeConversion.kt b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaTypeConversion.kt index c48f1d6bcef..0a066326a3c 100644 --- a/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaTypeConversion.kt +++ b/compiler/fir/java/src/org/jetbrains/kotlin/fir/java/JavaTypeConversion.kt @@ -120,6 +120,7 @@ private fun JavaType?.toConeTypeProjection( // It should not affect semantics, since it would be still a valid type anyway avoidComprehensiveCheck = true, ) ?: lowerBound + else -> lowerBound } @@ -130,6 +131,7 @@ private fun JavaType?.toConeTypeProjection( val (classId, arguments) = when (val componentType = componentType) { is JavaPrimitiveType -> StandardClassIds.byName(componentType.type!!.arrayTypeName.identifier) to arrayOf() + else -> StandardClassIds.Array to arrayOf(componentType.toConeKotlinType(session, javaTypeParameterStack, mode)) } @@ -199,6 +201,7 @@ private fun JavaClassifierType.toConeKotlinTypeForFlexibleBound( ?: Array(classifier.typeParameters.size) { ConeStarProjection } } } + lookupTag != lowerBound?.lookupTag && typeArguments.isNotEmpty() -> { val typeParameterSymbols = lookupTag.takeIf { mode != FirJavaTypeConversionMode.TYPE_PARAMETER_BOUND } @@ -211,19 +214,23 @@ private fun JavaClassifierType.toConeKotlinTypeForFlexibleBound( argument.toConeTypeProjection(session, javaTypeParameterStack, variance, newMode) } } + else -> lowerBound?.typeArguments } lookupTag.constructClassType(mappedTypeArguments ?: emptyArray(), isNullable = lowerBound != null, attributes) } + is JavaTypeParameter -> { val symbol = javaTypeParameterStack[classifier] ConeTypeParameterTypeImpl(symbol.toLookupTag(), isNullable = lowerBound != null, attributes) } + null -> { val classId = ClassId.topLevel(FqName(this.classifierQualifiedName)) classId.constructClassLikeType(emptyArray(), isNullable = lowerBound != null, attributes) } + else -> ConeErrorType(ConeSimpleDiagnostic("Unexpected classifier: $classifier", DiagnosticKind.Java)) } }