From 4d2074fb666b6e3072176a0ddd96385efbefa1a8 Mon Sep 17 00:00:00 2001 From: Tianyu Geng Date: Tue, 7 Dec 2021 16:36:14 -0800 Subject: [PATCH] Analysis API: allow creating type from type alias There does not seem to be any reason to limit the type creator to only create types of concrete class or object but not type alias. --- .../kotlin/analysis/api/components/KtTypeCreator.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtTypeCreator.kt b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtTypeCreator.kt index 41e31887066..f0a0f6994fa 100644 --- a/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtTypeCreator.kt +++ b/analysis/analysis-api/src/org/jetbrains/kotlin/analysis/api/components/KtTypeCreator.kt @@ -7,7 +7,7 @@ package org.jetbrains.kotlin.analysis.api.components import org.jetbrains.kotlin.analysis.api.KtTypeArgument import org.jetbrains.kotlin.analysis.api.KtTypeArgumentWithVariance -import org.jetbrains.kotlin.analysis.api.symbols.KtClassOrObjectSymbol +import org.jetbrains.kotlin.analysis.api.symbols.KtClassLikeSymbol import org.jetbrains.kotlin.analysis.api.symbols.KtTypeParameterSymbol import org.jetbrains.kotlin.analysis.api.types.KtClassType import org.jetbrains.kotlin.analysis.api.types.KtType @@ -31,7 +31,7 @@ public inline fun KtTypeCreatorMixIn.buildClassType( analysisSession.typesCreator.buildClassType(KtClassTypeBuilder.ByClassId(classId).apply(build)) public inline fun KtTypeCreatorMixIn.buildClassType( - symbol: KtClassOrObjectSymbol, + symbol: KtClassLikeSymbol, build: KtClassTypeBuilder.() -> Unit = {} ): KtClassType = analysisSession.typesCreator.buildClassType(KtClassTypeBuilder.BySymbol(symbol).apply(build)) @@ -60,7 +60,7 @@ public sealed class KtClassTypeBuilder : KtTypeBuilder() { } public class ByClassId(public val classId: ClassId) : KtClassTypeBuilder() - public class BySymbol(public val symbol: KtClassOrObjectSymbol) : KtClassTypeBuilder() + public class BySymbol(public val symbol: KtClassLikeSymbol) : KtClassTypeBuilder() } public sealed class KtTypeParameterTypeBuilder : KtTypeBuilder() {