Move .java and .kotlin extension properties to kotlin.jvm

Delete the old ones in package kotlin.reflect.jvm because otherwise the code
using those functions will become red in a lot less meaningful way (overload
resolution ambiguity) than if they're deleted (unresolved import)

Based on the work originally done by @dnpetrov

 #KT-8380 Fixed
This commit is contained in:
Alexander Udalov
2015-08-26 16:21:47 +03:00
parent b8badd59ba
commit 8d9618348d
32 changed files with 155 additions and 50 deletions
@@ -0,0 +1,33 @@
// NO_KOTLIN_REFLECT
import kotlin.test.*
class Klass
fun box(): String {
val kClass = Klass::class
val jClass = kClass.java
val kjClass = Klass::class.java
val kkClass = jClass.kotlin
val jjClass = kkClass.java
assertEquals("Klass", jClass.getSimpleName())
assertEquals("Klass", kjClass.getSimpleName())
assertEquals("Klass", kkClass.simpleName)
assertEquals(kjClass, jjClass)
failsWith(Error::class.java) { kClass.simpleName!! }
failsWith(Error::class.java) { kClass.qualifiedName!! }
failsWith(Error::class.java) { kClass.members }
val jlError = Error::class.java
val kljError = Error::class
val jljError = kljError.java
val jlkError = jlError.kotlin
assertEquals("Error", jlError.getSimpleName())
assertEquals("Error", jljError.getSimpleName())
assertEquals("Error", jlkError.simpleName)
return "OK"
}