From d13f2af6ec5cd2a7f7bc3ceb3b0ccbc79e07f682 Mon Sep 17 00:00:00 2001 From: Dmitry Gridin Date: Fri, 9 Sep 2022 13:50:54 +0200 Subject: [PATCH] [lc] decompiled: make isEquivalentTo lightweight ^KT-53934 Fixed --- .../light/classes/KtLightFieldForDecompiledDeclaration.kt | 6 ++++++ .../light/classes/KtLightMethodForDecompiledDeclaration.kt | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightFieldForDecompiledDeclaration.kt b/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightFieldForDecompiledDeclaration.kt index 12c81925d93..60a70501ff8 100644 --- a/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightFieldForDecompiledDeclaration.kt +++ b/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightFieldForDecompiledDeclaration.kt @@ -71,4 +71,10 @@ open class KtLightFieldForDecompiledDeclaration( override fun toString(): String = "${this.javaClass.simpleName} of $fldParent" override fun isValid(): Boolean = parent.isValid + + override fun isEquivalentTo(another: PsiElement?): Boolean { + return this == another || + another is KtLightFieldForDecompiledDeclaration && fldDelegate.isEquivalentTo(another.fldDelegate) || + fldDelegate.isEquivalentTo(another) + } } \ No newline at end of file diff --git a/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightMethodForDecompiledDeclaration.kt b/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightMethodForDecompiledDeclaration.kt index 288e2d8ae1c..3aff0252f60 100644 --- a/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightMethodForDecompiledDeclaration.kt +++ b/analysis/decompiled/light-classes-for-decompiled/src/org/jetbrains/kotlin/analysis/decompiled/light/classes/KtLightMethodForDecompiledDeclaration.kt @@ -103,6 +103,12 @@ class KtLightMethodForDecompiledDeclaration( override fun isValid(): Boolean = parent.isValid override fun getOriginalElement() = funDelegate + + override fun isEquivalentTo(another: PsiElement?): Boolean { + return this == another || + another is KtLightMethodForDecompiledDeclaration && funDelegate.isEquivalentTo(another.funDelegate) || + funDelegate.isEquivalentTo(another) + } } private fun KtLightMethod.checkIsMangled(): Boolean {