Fix KClassOrigin for non-Kotlin classes

Check against presence of KotlinClass annotation
This commit is contained in:
Alexander Udalov
2014-06-25 04:02:03 +04:00
parent 8b619eceed
commit 1ad037f621
6 changed files with 19 additions and 1 deletions
@@ -16,6 +16,8 @@
package kotlin.reflect.jvm.internal
import kotlin.reflect.jvm.KOTLIN_CLASS_ANNOTATION_CLASS
enum class KClassOrigin {
BUILT_IN
KOTLIN
@@ -26,7 +28,7 @@ class KClassImpl<out T>(
val jClass: Class<T>
) : KClass<T> {
val origin: KClassOrigin =
if (K_OBJECT_CLASS.isAssignableFrom(jClass)) {
if (K_OBJECT_CLASS.isAssignableFrom(jClass) && jClass.isAnnotationPresent(KOTLIN_CLASS_ANNOTATION_CLASS)) {
KClassOrigin.KOTLIN
}
else {