From 7f1b539011af9390dfcf9ad3072542bcb6542c96 Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Tue, 1 Dec 2020 11:05:12 +0300 Subject: [PATCH] [FIR] Simplify CanBeValChecker.getDestructuringChildrenCount --- .../analysis/checkers/extended/CanBeValChecker.kt | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/extended/CanBeValChecker.kt b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/extended/CanBeValChecker.kt index f24ae12cb09..389c6fd59d3 100644 --- a/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/extended/CanBeValChecker.kt +++ b/compiler/fir/checkers/src/org/jetbrains/kotlin/fir/analysis/checkers/extended/CanBeValChecker.kt @@ -95,15 +95,11 @@ object CanBeValChecker : AbstractFirPropertyInitializationChecker() { } } - private fun FirPropertySymbol.getDestructuringChildrenCount(): Int? = when (fir.source) { - is FirPsiSourceElement<*> -> fir.psi?.children?.size?.minus(1) // -1 cuz we don't need expression node after equals operator - is FirLightSourceElement -> { - val source = fir.source as FirLightSourceElement - val tree = (fir.source as FirLightSourceElement).treeStructure - val children = source.lighterASTNode.getChildren(tree) - children.filter { it?.tokenType == KtNodeTypes.DESTRUCTURING_DECLARATION_ENTRY }.size + private fun FirPropertySymbol.getDestructuringChildrenCount(): Int? { + val source = fir.source ?: return null + return source.lighterASTNode.getChildren(source.treeStructure).count { + it?.tokenType == KtNodeTypes.DESTRUCTURING_DECLARATION_ENTRY } - else -> null } private val FirPropertySymbol.isDestructuring