Use 'symbol' instead of 'classId' in FirResolvedQualifier

This commit solves problem with resolved qualifier of local class
#KT-36758 Fixed
This commit is contained in:
Mikhail Glukhikh
2020-02-18 14:14:13 +03:00
parent 3d51af2935
commit ace259314b
25 changed files with 47 additions and 54 deletions
@@ -6,6 +6,7 @@
package org.jetbrains.kotlin.fir.expressions
import org.jetbrains.kotlin.fir.FirSourceElement
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
import org.jetbrains.kotlin.fir.types.FirTypeProjection
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.name.ClassId
@@ -24,6 +25,7 @@ abstract class FirResolvedQualifier : FirExpression() {
abstract val packageFqName: FqName
abstract val relativeClassFqName: FqName?
abstract val classId: ClassId?
abstract val symbol: FirClassLikeSymbol<*>?
abstract val safe: Boolean
abstract val typeArguments: List<FirTypeProjection>
@@ -13,6 +13,7 @@ import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
import org.jetbrains.kotlin.fir.expressions.FirResolvedQualifier
import org.jetbrains.kotlin.fir.expressions.builder.FirExpressionBuilder
import org.jetbrains.kotlin.fir.expressions.impl.FirResolvedQualifierImpl
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
import org.jetbrains.kotlin.fir.types.FirTypeProjection
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.fir.types.impl.FirImplicitTypeRefImpl
@@ -32,6 +33,7 @@ class FirResolvedQualifierBuilder : FirAnnotationContainerBuilder, FirExpression
override val annotations: MutableList<FirAnnotationCall> = mutableListOf()
lateinit var packageFqName: FqName
var relativeClassFqName: FqName? = null
var symbol: FirClassLikeSymbol<*>? = null
var safe: Boolean by kotlin.properties.Delegates.notNull<Boolean>()
val typeArguments: MutableList<FirTypeProjection> = mutableListOf()
@@ -42,6 +44,7 @@ class FirResolvedQualifierBuilder : FirAnnotationContainerBuilder, FirExpression
annotations,
packageFqName,
relativeClassFqName,
symbol,
safe,
typeArguments,
)
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.fir.expressions.impl
import org.jetbrains.kotlin.fir.FirSourceElement
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
import org.jetbrains.kotlin.fir.expressions.FirResolvedQualifier
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
import org.jetbrains.kotlin.fir.types.FirTypeProjection
import org.jetbrains.kotlin.fir.types.FirTypeRef
import org.jetbrains.kotlin.name.ClassId
@@ -25,6 +26,7 @@ internal class FirResolvedQualifierImpl(
override val annotations: MutableList<FirAnnotationCall>,
override var packageFqName: FqName,
override var relativeClassFqName: FqName?,
override val symbol: FirClassLikeSymbol<*>?,
override var safe: Boolean,
override val typeArguments: MutableList<FirTypeProjection>,
) : FirResolvedQualifier() {