J2K JavaToKotlinClassMap

This commit is contained in:
Pavel V. Talanov
2017-05-03 17:58:01 +03:00
parent 6701eb70fb
commit 40561dabed
24 changed files with 236 additions and 264 deletions
@@ -269,7 +269,7 @@ internal object RuntimeTypeMapper {
val classId = klass.classId
if (!classId.isLocal) {
JavaToKotlinClassMap.INSTANCE.mapJavaToKotlin(classId.asSingleFqName())?.let { return it }
JavaToKotlinClassMap.mapJavaToKotlin(classId.asSingleFqName())?.let { return it }
}
return classId
@@ -55,7 +55,7 @@ internal fun ClassDescriptor.toJavaClass(): Class<*>? {
else -> {
// If this is neither a Kotlin class nor a Java class, it is either a built-in or some fake class descriptor like the one
// that's created for java.io.Serializable in JvmBuiltInsSettings
val classId = JavaToKotlinClassMap.INSTANCE.mapKotlinToJava(DescriptorUtils.getFqName(this)) ?: classId!!
val classId = JavaToKotlinClassMap.mapKotlinToJava(DescriptorUtils.getFqName(this)) ?: classId!!
val packageName = classId.packageFqName.asString()
val className = classId.relativeClassName.asString()
// All pseudo-classes like kotlin.String.Companion must be accessible from the current class loader