From c9fbbe74aee3c047ff28cbba8d93e4e84de8e243 Mon Sep 17 00:00:00 2001 From: Victor Petukhov Date: Fri, 22 Oct 2021 14:36:25 +0300 Subject: [PATCH] [FIR] Use common `isPlaceholder` check for type arguments in RawFirBuilder --- .../src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt index 3cf4551cc89..e5e55f6b6ee 100644 --- a/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt +++ b/compiler/fir/raw-fir/psi2fir/src/org/jetbrains/kotlin/fir/builder/RawFirBuilder.kt @@ -1775,10 +1775,6 @@ open class RawFirBuilder( } } - // TODO introduce placeholder projection type - private fun KtTypeProjection.isPlaceholderProjection() = - projectionKind == KtProjectionKind.NONE && (typeReference?.typeElement as? KtUserType)?.referencedName == "_" - override fun visitTypeProjection(typeProjection: KtTypeProjection, data: Unit): FirElement { val projectionKind = typeProjection.projectionKind val projectionSource = typeProjection.toFirSourceElement() @@ -1787,10 +1783,10 @@ open class RawFirBuilder( source = projectionSource } } - if (typeProjection.isPlaceholderProjection()) { + val typeReference = typeProjection.typeReference + if (typeReference?.isPlaceholder == true) { return FirTypePlaceholderProjection } - val typeReference = typeProjection.typeReference val firType = typeReference.toFirOrErrorType() return buildTypeProjectionWithVariance { source = projectionSource