From e148cbede3934b284ba747a5e2d444dcecc3f541 Mon Sep 17 00:00:00 2001 From: Vladimir Dolzhenko Date: Sat, 13 Feb 2021 21:25:46 +0100 Subject: [PATCH] Lightweight hashCode calc for LibraryInfo #EA-6040509 Fixed #KTIJ-696 Fixed (cherry picked from commit bf9fa4c9da551133c5dd17c83d03f11ad9ce0fc5) --- .../jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt index 5b621042f59d7..a1e9db42ac0ce 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/caches/project/IdeaModuleInfos.kt @@ -386,7 +386,11 @@ abstract class LibraryInfo(override val project: Project, val library: Library) return (other is LibraryInfo && library == other.library) } - override fun hashCode(): Int = 43 * library.hashCode() + private val lazyHashCode: Int by lazy { + 43 * library.hashCode() + } + + override fun hashCode(): Int = lazyHashCode } data class LibrarySourceInfo(override val project: Project, val library: Library, override val binariesModuleInfo: BinaryModuleInfo) :