From c720dc1afd3eb6a5b786a51f2b1d1193ef6db90d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Brais=20Gab=C3=ADn?= Date: Sun, 7 Aug 2022 13:19:15 +0200 Subject: [PATCH] Improve rule even more --- .../arturbosch/detekt/authors/RequiresTypeResolution.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/detekt-rules-ruleauthors/src/main/kotlin/io/gitlab/arturbosch/detekt/authors/RequiresTypeResolution.kt b/detekt-rules-ruleauthors/src/main/kotlin/io/gitlab/arturbosch/detekt/authors/RequiresTypeResolution.kt index f602c2715ac7..a8c4ce69265f 100644 --- a/detekt-rules-ruleauthors/src/main/kotlin/io/gitlab/arturbosch/detekt/authors/RequiresTypeResolution.kt +++ b/detekt-rules-ruleauthors/src/main/kotlin/io/gitlab/arturbosch/detekt/authors/RequiresTypeResolution.kt @@ -18,7 +18,8 @@ import org.jetbrains.kotlin.psi.KtFile import org.jetbrains.kotlin.psi.KtNameReferenceExpression import org.jetbrains.kotlin.psi.KtReferenceExpression import org.jetbrains.kotlin.resolve.BindingContext -import org.jetbrains.kotlin.types.typeUtil.supertypes +import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameOrNull +import org.jetbrains.kotlin.resolve.descriptorUtil.getAllSuperclassesWithoutAny import kotlin.reflect.KClass /** @@ -79,8 +80,7 @@ class RequiresTypeResolution(config: Config = Config.empty) : Rule(config) { context(BaseRule) private inline fun KtClass.extendsFrom(kClass: KClass): Boolean { return bindingContext[BindingContext.CLASS, this] - ?.defaultType - ?.supertypes() + ?.getAllSuperclassesWithoutAny() .orEmpty() .any { it.fqNameOrNull()?.toString() == checkNotNull(kClass.qualifiedName) } }