Implement isInheritor method with utility method that has special behaviour for anonymous classes

This commit is contained in:
Nikolay Krasko
2016-06-14 16:32:59 +03:00
parent 784fd963cd
commit 490ff621b6
@@ -18,6 +18,7 @@ package org.jetbrains.kotlin.asJava
import com.intellij.openapi.diagnostic.Logger
import com.intellij.psi.*
import com.intellij.psi.impl.InheritanceImplUtil
import com.intellij.psi.search.GlobalSearchScope
import com.intellij.reference.SoftReference
import org.jetbrains.kotlin.name.FqName
@@ -99,6 +100,14 @@ internal open class KtLightClassForAnonymousDeclaration(name: FqName,
return classOrObject.hashCode()
}
override fun isInheritor(baseClass: PsiClass, checkDeep: Boolean): Boolean {
if (baseClass is KtLightClassForExplicitDeclaration) {
return super.isInheritor(baseClass, checkDeep)
}
return InheritanceImplUtil.isInheritor(this, baseClass, checkDeep)
}
override fun getNameIdentifier() = null
override fun getQualifiedName(): String? = null
override fun getModifierList(): PsiModifierList? = null