From c0097dd97e7bc995fedcb9cfa3e5a7dddd8b0952 Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Thu, 24 Nov 2022 13:14:22 +0100 Subject: [PATCH] [SLC] merge KtLightIdentifierBase with KtLightIdentifier ^KT-54051 --- .../asJava/elements/KtLightIdentifier.kt | 30 ++++++++----------- 1 file changed, 13 insertions(+), 17 deletions(-) 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 ba070c80778..ca6009a54c4 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 @@ -7,28 +7,16 @@ package org.jetbrains.kotlin.asJava.elements import com.intellij.openapi.util.TextRange import com.intellij.psi.PsiElement +import com.intellij.psi.PsiFile import com.intellij.psi.impl.light.LightIdentifier import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.containingClassOrObject -abstract class KtLightIdentifierBase( +open class KtLightIdentifier @JvmOverloads constructor( private val lightOwner: PsiElement, - text: String? -) : LightIdentifier(lightOwner.manager, text), PsiElementWithOrigin { - override fun isPhysical() = true - override fun getParent() = lightOwner - 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) - + private val ktDeclaration: KtDeclaration?, + private val name: String? = ktDeclaration?.name, +) : LightIdentifier(lightOwner.manager, name), PsiElementWithOrigin { override val origin: PsiElement? get() = when (ktDeclaration) { is KtSecondaryConstructor -> ktDeclaration.getConstructorKeyword() @@ -40,4 +28,12 @@ open class KtLightIdentifier( is KtNamedDeclaration -> ktDeclaration.nameIdentifier else -> null } + + override fun copy(): PsiElement = KtLightIdentifier(parent, ktDeclaration, name) + override fun isPhysical(): Boolean = true + override fun getParent(): PsiElement = lightOwner + override fun getContainingFile(): PsiFile = lightOwner.containingFile + override fun getTextRange(): TextRange = origin?.textRange ?: TextRange.EMPTY_RANGE + + override fun getTextOffset(): Int = origin?.textOffset ?: -1 }