FIR: Optimize iteration
This commit is contained in:
committed by
Mikhail Glukhikh
parent
cce741eef8
commit
140120abc2
@@ -430,11 +430,14 @@ class RawFirBuilder(val session: FirSession) {
|
||||
for (typeArgument in qualifier!!.typeArguments) {
|
||||
firQualifier.typeArguments += typeArgument.convert<FirTypeProjection>()
|
||||
}
|
||||
userType.qualifier.add(0, firQualifier)
|
||||
userType.qualifier.add(firQualifier)
|
||||
|
||||
qualifier = qualifier.qualifier
|
||||
referenceExpression = qualifier?.referenceExpression
|
||||
} while (referenceExpression != null)
|
||||
|
||||
userType.qualifier.reverse()
|
||||
|
||||
userType
|
||||
} else {
|
||||
FirErrorTypeImpl(session, typeReference, "Incomplete user type")
|
||||
|
||||
@@ -13,14 +13,13 @@ import org.jetbrains.kotlin.fir.types.FirQualifierPart
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeProjection
|
||||
import org.jetbrains.kotlin.fir.types.FirUserType
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
import java.util.*
|
||||
|
||||
class FirUserTypeImpl(
|
||||
session: FirSession,
|
||||
psi: PsiElement?,
|
||||
isNullable: Boolean
|
||||
) : FirAbstractAnnotatedType(session, psi, isNullable), FirUserType {
|
||||
override val qualifier = LinkedList<FirQualifierPart>()
|
||||
override val qualifier = mutableListOf<FirQualifierPart>()
|
||||
|
||||
override fun <D> transformChildren(transformer: FirTransformer<D>, data: D): FirElement {
|
||||
for (part in qualifier) {
|
||||
|
||||
Reference in New Issue
Block a user