Support KClass.simpleName and built-in class literals
This commit is contained in:
+22
@@ -0,0 +1,22 @@
|
||||
import kotlin.test.assertEquals
|
||||
|
||||
fun box(): String {
|
||||
assertEquals("Any", Any::class.simpleName)
|
||||
assertEquals("String", String::class.simpleName)
|
||||
assertEquals("CharSequence", CharSequence::class.simpleName)
|
||||
assertEquals("Number", Number::class.simpleName)
|
||||
assertEquals("Int", Int::class.simpleName)
|
||||
assertEquals("Long", Long::class.simpleName)
|
||||
|
||||
assertEquals("Default", Int.Default::class.simpleName)
|
||||
assertEquals("Default", Double.Default::class.simpleName)
|
||||
|
||||
assertEquals("IntRange", IntRange::class.simpleName)
|
||||
|
||||
assertEquals("List", List::class.simpleName)
|
||||
|
||||
// TODO: this is wrong but should be fixed
|
||||
assertEquals("List", MutableList::class.simpleName)
|
||||
|
||||
return "OK"
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
class Klass
|
||||
|
||||
fun box(): String {
|
||||
val x = Klass::class
|
||||
if (x.simpleName != "Klass") return "Fail x: ${x.simpleName}"
|
||||
|
||||
val y = java.util.Date::class
|
||||
if (y.simpleName != "Date") return "Fail y: ${y.simpleName}"
|
||||
|
||||
val z = kotlin.jvm.internal.KotlinSyntheticClass.Kind::class
|
||||
if (z.simpleName != "Kind") return "Fail z: ${z.simpleName}"
|
||||
|
||||
return "OK"
|
||||
}
|
||||
Reference in New Issue
Block a user