KJS: allow to use KClass::isInstance; implement isInstance in KClassImpl

This commit is contained in:
Zalim Bashorov
2016-10-15 17:36:06 +03:00
parent 6caf3c1c0f
commit a085df914f
7 changed files with 37 additions and 4 deletions
@@ -29,6 +29,8 @@ import org.jetbrains.kotlin.storage.StorageManager
import org.jetbrains.kotlin.storage.getValue
import org.jetbrains.kotlin.util.OperatorNameConventions
private val ANY_MEMBER_NAMES = setOf("equals", "hashCode", "toString")
/**
* Checks that there are no usages of reflection API which will fail at runtime.
*/
@@ -41,8 +43,6 @@ abstract class AbstractReflectionApiCallChecker(private val module: ModuleDescri
setOf(reflectionTypes.kProperty0, reflectionTypes.kProperty1, reflectionTypes.kProperty2)
}
private val ANY_MEMBER_NAMES = setOf("equals", "hashCode", "toString")
final override fun check(resolvedCall: ResolvedCall<*>, reportOn: PsiElement, context: CallCheckerContext) {
if (isWholeReflectionApiAvailable) return