From 577bc243d23c04d2da3f3c80d087b026312da237 Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Wed, 16 Nov 2022 08:30:52 +0100 Subject: [PATCH] [LC] KtLightIdentifierBase: add missing copy ^KT-54051 --- .../org/jetbrains/kotlin/asJava/elements/KtLightIdentifier.kt | 3 +++ .../kotlin/light/classes/symbol/SymbolLightIdentifier.kt | 1 + 2 files changed, 4 insertions(+) diff --git a/analysis/light-classes-base/src/org/jetbrains/kotlin/asJava/elements/KtLightIdentifier.kt b/analysis/light-classes-base/src/org/jetbrains/kotlin/asJava/elements/KtLightIdentifier.kt index ac8772025b7..ba070c80778 100644 --- a/analysis/light-classes-base/src/org/jetbrains/kotlin/asJava/elements/KtLightIdentifier.kt +++ b/analysis/light-classes-base/src/org/jetbrains/kotlin/asJava/elements/KtLightIdentifier.kt @@ -20,12 +20,15 @@ abstract class KtLightIdentifierBase( override fun getContainingFile() = lightOwner.containingFile override fun getTextRange() = origin?.textRange ?: TextRange.EMPTY_RANGE override fun getTextOffset(): Int = origin?.textOffset ?: -1 + abstract override fun copy(): PsiElement } open class KtLightIdentifier( lightOwner: PsiElement, private val ktDeclaration: KtDeclaration? ) : KtLightIdentifierBase(lightOwner, ktDeclaration?.name) { + override fun copy(): PsiElement = KtLightIdentifier(parent, ktDeclaration) + override val origin: PsiElement? get() = when (ktDeclaration) { is KtSecondaryConstructor -> ktDeclaration.getConstructorKeyword() diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/SymbolLightIdentifier.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/SymbolLightIdentifier.kt index 28c77d21ac5..6a76b36169e 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/SymbolLightIdentifier.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/SymbolLightIdentifier.kt @@ -19,6 +19,7 @@ internal class SymbolLightIdentifier( lightOwner: PsiElement, private val ktSymbol: KtSymbol? ) : KtLightIdentifierBase(lightOwner, (ktSymbol as? KtNamedSymbol)?.name?.identifierOrNullIfSpecial) { + override fun copy(): PsiElement = SymbolLightIdentifier(parent, ktSymbol) override val origin: PsiElement? get() = when (val ktDeclaration = ktSymbol?.psi) {