From bb81ad7b5f5479908fc9a53ae761f63cec1a4fca Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Mon, 22 Apr 2019 14:34:41 +0300 Subject: [PATCH] New J2K: do not convert Java string type to a Kotlin one because of wrong constructor calls --- .../kotlin/nj2k/conversions/TypeMappingConversion.kt | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/TypeMappingConversion.kt b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/TypeMappingConversion.kt index aba2651a8bd..2aeac187e63 100644 --- a/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/TypeMappingConversion.kt +++ b/nj2k/src/org/jetbrains/kotlin/nj2k/conversions/TypeMappingConversion.kt @@ -141,9 +141,11 @@ class TypeMappingConversion(val context: NewJ2kConverterContext) : RecursiveAppl } private fun JKClassSymbol.kotlinStandardType(): String? = - fqName?.let { + fqName.takeIf { + it !in ignoredJavaFqNames + }?.let { JavaToKotlinClassMap.mapJavaToKotlin(FqName(it))?.asString() - } + } ?: fqName private fun JKJavaPrimitiveType.mapPrimitiveType(): JKClassType { val fqName = jvmPrimitiveType.primitiveType.typeFqName @@ -162,4 +164,10 @@ class TypeMappingConversion(val context: NewJ2kConverterContext) : RecursiveAppl else -> false } } + + companion object { + val ignoredJavaFqNames = setOf( + "java.lang.String" + ) + } } \ No newline at end of file