[FIR] Rename FirAnnotation.classId to unexpandedClassId
This makes the eye catch each such thing in the source. OptIn isn't that catchy, plus it may be declared for the whole file, so noticing may be harder
This commit is contained in:
committed by
Space Team
parent
cf73d59e29
commit
0c86294ca4
+2
-2
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.fir.declarations.FirSimpleFunction
|
||||
import org.jetbrains.kotlin.fir.declarations.hasAnnotation
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isExtension
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.visibility
|
||||
import org.jetbrains.kotlin.fir.expressions.classId
|
||||
import org.jetbrains.kotlin.fir.expressions.unexpandedClassId
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.JsStandardClassIds
|
||||
@@ -27,7 +27,7 @@ internal abstract class FirJsAbstractNativeAnnotationChecker(private val require
|
||||
protected fun FirFunction.hasRequiredAnnotation(context: CheckerContext) = hasAnnotation(requiredAnnotation, context.session)
|
||||
|
||||
override fun check(declaration: FirSimpleFunction, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
val annotation = declaration.annotations.find { it.classId == requiredAnnotation } ?: return
|
||||
val annotation = declaration.annotations.find { it.unexpandedClassId == requiredAnnotation } ?: return
|
||||
|
||||
val isMember = !context.isTopLevel && declaration.visibility != Visibilities.Local
|
||||
val isExtension = declaration.isExtension
|
||||
|
||||
+2
-2
@@ -47,7 +47,7 @@ object FirRepeatableAnnotationChecker : FirBasicDeclarationChecker() {
|
||||
|
||||
val session = context.session
|
||||
for (annotation in annotations) {
|
||||
val unexpandedClassId = annotation.classId ?: continue
|
||||
val unexpandedClassId = annotation.unexpandedClassId ?: continue
|
||||
val annotationClassId = annotation.toAnnotationClassId(session) ?: continue
|
||||
if (annotationClassId.isLocal) continue
|
||||
val annotationClass = session.symbolProvider.getClassLikeSymbolByClassId(annotationClassId) ?: continue
|
||||
@@ -87,7 +87,7 @@ object FirRepeatableAnnotationChecker : FirBasicDeclarationChecker() {
|
||||
}
|
||||
|
||||
if (declaration is FirRegularClass) {
|
||||
val javaRepeatable = annotations.find { it.classId == StandardClassIds.Annotations.Java.Repeatable }
|
||||
val javaRepeatable = annotations.find { it.unexpandedClassId == StandardClassIds.Annotations.Java.Repeatable }
|
||||
if (javaRepeatable != null) {
|
||||
checkJavaRepeatableAnnotationDeclaration(javaRepeatable, declaration, context, reporter)
|
||||
} else {
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.fir.declarations.utils.modality
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.visibility
|
||||
import org.jetbrains.kotlin.fir.expressions.FirAnnotation
|
||||
import org.jetbrains.kotlin.fir.expressions.FirConstExpression
|
||||
import org.jetbrains.kotlin.fir.expressions.classId
|
||||
import org.jetbrains.kotlin.fir.expressions.unexpandedClassId
|
||||
import org.jetbrains.kotlin.fir.java.FirJavaTypeConversionMode
|
||||
import org.jetbrains.kotlin.fir.java.JavaTypeParameterStack
|
||||
import org.jetbrains.kotlin.fir.java.declarations.*
|
||||
@@ -466,7 +466,7 @@ class FirSignatureEnhancement(
|
||||
|
||||
private fun getPurelyImplementedSupertype(session: FirSession): ConeKotlinType? {
|
||||
val purelyImplementedClassIdFromAnnotation = owner.annotations
|
||||
.firstOrNull { it.classId?.asSingleFqName() == JvmAnnotationNames.PURELY_IMPLEMENTS_ANNOTATION }
|
||||
.firstOrNull { it.unexpandedClassId?.asSingleFqName() == JvmAnnotationNames.PURELY_IMPLEMENTS_ANNOTATION }
|
||||
?.let { (it.argumentMapping.mapping.values.firstOrNull() as? FirConstExpression<*>) }
|
||||
?.let { it.value as? String }
|
||||
?.takeIf { it.isNotBlank() && isValidJavaFqName(it) }
|
||||
|
||||
+2
-2
@@ -190,12 +190,12 @@ private fun List<FirAnnotation>.extractDeprecationAnnotationInfoPerUseSite(
|
||||
|
||||
return buildDeprecationAnnotationInfoPerUseSiteStorage {
|
||||
for ((deprecated, fromJavaAnnotation) in annotations) {
|
||||
if (deprecated.classId == StandardClassIds.Annotations.SinceKotlin) {
|
||||
if (deprecated.unexpandedClassId == StandardClassIds.Annotations.SinceKotlin) {
|
||||
val sinceKotlinSingleArgument = deprecated.findArgumentByName(ParameterNames.sinceKotlinVersion)
|
||||
val apiVersion = ((sinceKotlinSingleArgument as? FirConstExpression<*>)?.value as? String)
|
||||
?.let(ApiVersion.Companion::parse) ?: continue
|
||||
val wasExperimental = this@extractDeprecationAnnotationInfoPerUseSite.any {
|
||||
it.classId == StandardClassIds.Annotations.WasExperimental
|
||||
it.unexpandedClassId == StandardClassIds.Annotations.WasExperimental
|
||||
}
|
||||
if (!wasExperimental) {
|
||||
add(deprecated.useSiteTarget, SinceKotlinInfo(apiVersion))
|
||||
|
||||
@@ -32,7 +32,7 @@ import org.jetbrains.kotlin.types.ConstantValueKind
|
||||
inline val FirAnnotation.coneClassLikeType: ConeClassLikeType?
|
||||
get() = ((annotationTypeRef as? FirResolvedTypeRef)?.type as? ConeClassLikeType)
|
||||
|
||||
inline val FirAnnotation.classId: ClassId?
|
||||
inline val FirAnnotation.unexpandedClassId: ClassId?
|
||||
get() = coneClassLikeType?.lookupTag?.classId
|
||||
|
||||
fun <T> buildConstOrErrorExpression(source: KtSourceElement?, kind: ConstantValueKind<T>, value: T?, diagnostic: ConeDiagnostic): FirExpression =
|
||||
|
||||
Reference in New Issue
Block a user