[FIR] Get rid of FirAnnotation.fullyExpandedClassId

It's duplicated by `toAnnotationClassId`.
This commit is contained in:
Nikolay Lunyak
2023-01-16 14:07:16 +02:00
committed by Space Team
parent 343b856cfc
commit 4cddbb5fc0
7 changed files with 22 additions and 30 deletions
@@ -14,7 +14,7 @@ import org.jetbrains.kotlin.fir.analysis.js.checkers.isNativeObject
import org.jetbrains.kotlin.fir.analysis.checkers.isTopLevel
import org.jetbrains.kotlin.fir.analysis.diagnostics.js.FirJsErrors
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
import org.jetbrains.kotlin.fir.declarations.fullyExpandedClassId
import org.jetbrains.kotlin.fir.declarations.toAnnotationClassId
import org.jetbrains.kotlin.fir.types.coneType
import org.jetbrains.kotlin.name.JsStandardClassIds
@@ -28,7 +28,7 @@ object FirJsExternalFileChecker : FirBasicDeclarationChecker() {
val targetAnnotations = context.containingFile
?.annotations
?.firstOrNull { it.fullyExpandedClassId(context.session) in JsStandardClassIds.Annotations.annotationsRequiringExternal }
?.firstOrNull { it.toAnnotationClassId(context.session) in JsStandardClassIds.Annotations.annotationsRequiringExternal }
if (targetAnnotations != null) {
reporter.reportOn(
@@ -10,7 +10,7 @@ import org.jetbrains.kotlin.diagnostics.reportOn
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
import org.jetbrains.kotlin.fir.analysis.checkers.expression.FirAnnotationCallChecker
import org.jetbrains.kotlin.fir.analysis.diagnostics.js.FirJsErrors
import org.jetbrains.kotlin.fir.declarations.fullyExpandedClassId
import org.jetbrains.kotlin.fir.declarations.toAnnotationClassId
import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
import org.jetbrains.kotlin.fir.expressions.FirConstExpression
import org.jetbrains.kotlin.js.validateQualifier
@@ -18,9 +18,7 @@ import org.jetbrains.kotlin.name.JsStandardClassIds.Annotations.JsQualifier
object FirJsQualifierChecker : FirAnnotationCallChecker() {
override fun check(expression: FirAnnotationCall, context: CheckerContext, reporter: DiagnosticReporter) {
val annotationFqName = expression.fullyExpandedClassId(context.session)
if (annotationFqName != JsQualifier) {
if (expression.toAnnotationClassId(context.session) != JsQualifier) {
return
}
@@ -233,6 +233,3 @@ fun hasLowPriorityAnnotation(annotations: List<FirAnnotation>) = annotations.any
val lookupTag = it.annotationTypeRef.coneTypeSafe<ConeClassLikeType>()?.lookupTag ?: return@any false
lookupTag.classId == LOW_PRIORITY_IN_OVERLOAD_RESOLUTION_CLASS_ID
}
fun FirAnnotation.fullyExpandedClassId(useSiteSession: FirSession): ClassId? =
unexpandedConeClassLikeType?.fullyExpandedType(useSiteSession)?.classId