FIR checker: use aliased checker when possible (part 2)
This commit is contained in:
committed by
Mikhail Glukhikh
parent
de592f4f67
commit
be29b6d64d
+2
-3
@@ -23,9 +23,8 @@ import org.jetbrains.kotlin.KtNodeTypes.VALUE_PARAMETER
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.*
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
|
||||
object FirAnnotationClassDeclarationChecker : FirBasicDeclarationChecker() {
|
||||
override fun check(declaration: FirDeclaration, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration !is FirRegularClass) return
|
||||
object FirAnnotationClassDeclarationChecker : FirRegularClassChecker() {
|
||||
override fun check(declaration: FirRegularClass, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration.classKind != ANNOTATION_CLASS) return
|
||||
if (declaration.isLocal) reporter.report(declaration.source, FirErrors.LOCAL_ANNOTATION_CLASS_ERROR)
|
||||
|
||||
|
||||
+4
-5
@@ -11,12 +11,11 @@ import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.DiagnosticReporter
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.hasPrimaryConstructor
|
||||
import org.jetbrains.kotlin.fir.declarations.FirClass
|
||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
|
||||
|
||||
object FirConstructorInInterfaceChecker : FirBasicDeclarationChecker() {
|
||||
override fun check(declaration: FirDeclaration, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration !is FirClass<*> || declaration.classKind != ClassKind.INTERFACE) {
|
||||
object FirConstructorInInterfaceChecker : FirRegularClassChecker() {
|
||||
override fun check(declaration: FirRegularClass, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration.classKind != ClassKind.INTERFACE) {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
+4
-5
@@ -11,12 +11,11 @@ import org.jetbrains.kotlin.fir.FirSourceElement
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.context.CheckerContext
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.DiagnosticReporter
|
||||
import org.jetbrains.kotlin.fir.analysis.diagnostics.FirErrors
|
||||
import org.jetbrains.kotlin.fir.declarations.FirClass
|
||||
import org.jetbrains.kotlin.fir.declarations.FirMemberDeclaration
|
||||
import org.jetbrains.kotlin.fir.declarations.FirRegularClass
|
||||
|
||||
object FirSupertypeInitializedInInterfaceChecker : FirMemberDeclarationChecker() {
|
||||
override fun check(declaration: FirMemberDeclaration, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration !is FirClass<*> || declaration.classKind != ClassKind.INTERFACE) {
|
||||
object FirSupertypeInitializedInInterfaceChecker : FirRegularClassChecker() {
|
||||
override fun check(declaration: FirRegularClass, context: CheckerContext, reporter: DiagnosticReporter) {
|
||||
if (declaration.classKind != ClassKind.INTERFACE) {
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -15,10 +15,8 @@ import org.jetbrains.kotlin.fir.analysis.checkers.declaration.*
|
||||
object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
override val basicDeclarationCheckers: Set<FirBasicDeclarationChecker> = setOf(
|
||||
FirAnnotationArgumentChecker,
|
||||
FirAnnotationClassDeclarationChecker,
|
||||
FirModifierChecker,
|
||||
FirConflictsChecker,
|
||||
FirConstructorInInterfaceChecker,
|
||||
FirConflictingProjectionChecker,
|
||||
)
|
||||
|
||||
@@ -38,7 +36,9 @@ object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
)
|
||||
|
||||
override val regularClassCheckers: Set<FirRegularClassChecker> = setOf(
|
||||
FirAnnotationClassDeclarationChecker,
|
||||
FirCommonConstructorDelegationIssuesChecker,
|
||||
FirConstructorInInterfaceChecker,
|
||||
FirDelegationSuperCallInEnumConstructorChecker,
|
||||
FirDelegationInInterfaceChecker,
|
||||
FirEnumClassSimpleChecker,
|
||||
|
||||
Reference in New Issue
Block a user