Remove Experimental and UseExperimental from compiler OptIn usage checkers
This commit is contained in:
committed by
Space
parent
bc684b8d36
commit
f2b0c30cba
+3
-3
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.fir.symbols.impl.FirRegularClassSymbol
|
||||
import org.jetbrains.kotlin.fir.types.ConeClassLikeType
|
||||
import org.jetbrains.kotlin.fir.types.coneTypeSafe
|
||||
import org.jetbrains.kotlin.resolve.checkers.OptInNames
|
||||
import org.jetbrains.kotlin.resolve.checkers.OptInNames.USE_EXPERIMENTAL_ANNOTATION_CLASS
|
||||
import org.jetbrains.kotlin.resolve.checkers.OptInNames.OPT_IN_ANNOTATION_CLASS
|
||||
|
||||
object FirOptInAnnotationCallChecker : FirAnnotationCallChecker() {
|
||||
override fun check(expression: FirAnnotationCall, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
@@ -45,7 +45,7 @@ object FirOptInAnnotationCallChecker : FirAnnotationCallChecker() {
|
||||
if (arguments.isEmpty()) {
|
||||
reporter.reportOn(expression.source, FirErrors.OPT_IN_WITHOUT_ARGUMENTS, context)
|
||||
} else {
|
||||
val annotationClasses = expression.findArgumentByName(USE_EXPERIMENTAL_ANNOTATION_CLASS)
|
||||
val annotationClasses = expression.findArgumentByName(OPT_IN_ANNOTATION_CLASS)
|
||||
for (classSymbol in annotationClasses?.extractClassesFromArgument().orEmpty()) {
|
||||
checkOptInArgumentIsMarker(classSymbol, expression.source, reporter, context)
|
||||
}
|
||||
@@ -73,7 +73,7 @@ object FirOptInAnnotationCallChecker : FirAnnotationCallChecker() {
|
||||
return
|
||||
}
|
||||
}
|
||||
val classSymbol = expression.findArgumentByName(USE_EXPERIMENTAL_ANNOTATION_CLASS)?.extractClassFromArgument() ?: return
|
||||
val classSymbol = expression.findArgumentByName(OPT_IN_ANNOTATION_CLASS)?.extractClassFromArgument() ?: return
|
||||
checkOptInArgumentIsMarker(classSymbol, expression.source, reporter, context)
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -97,7 +97,7 @@ object FirOptInUsageBaseChecker {
|
||||
)
|
||||
if (fromSupertype) {
|
||||
if (annotationType.lookupTag.classId == OptInNames.SUBCLASS_OPT_IN_REQUIRED_CLASS_ID) {
|
||||
val annotationClass = annotation.findArgumentByName(OptInNames.USE_EXPERIMENTAL_ANNOTATION_CLASS) ?: continue
|
||||
val annotationClass = annotation.findArgumentByName(OptInNames.OPT_IN_ANNOTATION_CLASS) ?: continue
|
||||
result.addIfNotNull(
|
||||
annotationClass.extractClassFromArgument()?.loadExperimentalityForMarkerAnnotation()?.copy(fromSupertype = true)
|
||||
)
|
||||
@@ -320,7 +320,7 @@ object FirOptInUsageBaseChecker {
|
||||
if (coneType?.lookupTag?.classId != OptInNames.OPT_IN_CLASS_ID) {
|
||||
continue
|
||||
}
|
||||
val annotationClasses = annotation.findArgumentByName(OptInNames.USE_EXPERIMENTAL_ANNOTATION_CLASS) ?: continue
|
||||
val annotationClasses = annotation.findArgumentByName(OptInNames.OPT_IN_ANNOTATION_CLASS) ?: continue
|
||||
if (annotationClasses.extractClassesFromArgument().any { it.classId == annotationClassId }) {
|
||||
return true
|
||||
}
|
||||
@@ -334,7 +334,7 @@ object FirOptInUsageBaseChecker {
|
||||
if (coneType?.lookupTag?.classId != OptInNames.SUBCLASS_OPT_IN_REQUIRED_CLASS_ID) {
|
||||
continue
|
||||
}
|
||||
val annotationClass = annotation.findArgumentByName(OptInNames.USE_EXPERIMENTAL_ANNOTATION_CLASS) ?: continue
|
||||
val annotationClass = annotation.findArgumentByName(OptInNames.OPT_IN_ANNOTATION_CLASS) ?: continue
|
||||
if (annotationClass.extractClassFromArgument()?.classId == annotationClassId) {
|
||||
return true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user