From 6e9d78d431f6265b25e797b2bd14a0e96fbf31dd Mon Sep 17 00:00:00 2001 From: Mikhail Glukhikh Date: Thu, 4 Apr 2019 09:49:07 +0300 Subject: [PATCH] FIR structure: make implicit built-in types resolved --- .../fir/types/impl/FirImplicitBuiltinTypeRef.kt | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/impl/FirImplicitBuiltinTypeRef.kt b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/impl/FirImplicitBuiltinTypeRef.kt index d02e5126a16..5bd88cfbf97 100644 --- a/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/impl/FirImplicitBuiltinTypeRef.kt +++ b/compiler/fir/tree/src/org/jetbrains/kotlin/fir/types/impl/FirImplicitBuiltinTypeRef.kt @@ -8,17 +8,29 @@ package org.jetbrains.kotlin.fir.types.impl import com.intellij.psi.PsiElement import org.jetbrains.kotlin.fir.FirSession import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall +import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTagImpl import org.jetbrains.kotlin.fir.symbols.StandardClassIds +import org.jetbrains.kotlin.fir.types.ConeKotlinType import org.jetbrains.kotlin.fir.types.FirImplicitTypeRef +import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef +import org.jetbrains.kotlin.fir.visitors.FirVisitor import org.jetbrains.kotlin.name.ClassId sealed class FirImplicitBuiltinTypeRef( override val session: FirSession, override val psi: PsiElement?, val id: ClassId -) : FirImplicitTypeRef { +) : FirImplicitTypeRef, FirResolvedTypeRef { override val annotations: List get() = emptyList() + + override val isMarkedNullable: Boolean + get() = false + + override val type: ConeKotlinType = ConeClassTypeImpl(ConeClassLikeLookupTagImpl(id), emptyArray(), false) + + override fun accept(visitor: FirVisitor, data: D): R = + visitor.visitImplicitTypeRef(this, data) } class FirImplicitUnitTypeRef(