[FIR] Syntax checkers
Introduce base class for checkers that dive into source trees.
This commit is contained in:
committed by
teamcityserver
parent
1be39cb505
commit
787c743333
+11
-7
@@ -11,6 +11,9 @@ import org.jetbrains.kotlin.fir.analysis.cfa.FirPropertyInitializationAnalyzer
|
||||
import org.jetbrains.kotlin.fir.analysis.cfa.FirReturnsImpliesAnalyzer
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.cfa.FirControlFlowChecker
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.declaration.*
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.syntax.FirDelegationInInterfaceSyntaxChecker
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.syntax.FirFunctionTypeParametersSyntaxChecker
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.syntax.FirTypeParameterSyntaxChecker
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.expression.FirReservedUnderscoreDeclarationChecker
|
||||
|
||||
object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
@@ -43,7 +46,7 @@ object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
override val simpleFunctionCheckers: Set<FirSimpleFunctionChecker>
|
||||
get() = setOf(
|
||||
FirFunctionNameChecker,
|
||||
FirFunctionTypeParametersChecker,
|
||||
FirFunctionTypeParametersSyntaxChecker,
|
||||
)
|
||||
|
||||
override val propertyCheckers: Set<FirPropertyChecker>
|
||||
@@ -72,7 +75,7 @@ object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
FirCommonConstructorDelegationIssuesChecker,
|
||||
FirConstructorInInterfaceChecker,
|
||||
FirDelegationSuperCallInEnumConstructorChecker,
|
||||
FirDelegationInInterfaceChecker,
|
||||
FirDelegationInInterfaceSyntaxChecker,
|
||||
FirEnumClassSimpleChecker,
|
||||
FirInterfaceWithSuperclassChecker,
|
||||
FirLocalEntityNotAllowedChecker,
|
||||
@@ -82,11 +85,11 @@ object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
FirPrimaryConstructorSuperTypeChecker,
|
||||
FirTypeParametersInObjectChecker,
|
||||
FirFunInterfaceDeclarationChecker,
|
||||
FirMemberFunctionsChecker,
|
||||
FirMemberPropertiesChecker,
|
||||
FirNestedClassChecker,
|
||||
FirInlineClassDeclarationChecker,
|
||||
)
|
||||
FirMemberFunctionsChecker,
|
||||
FirMemberPropertiesChecker,
|
||||
FirNestedClassChecker,
|
||||
FirInlineClassDeclarationChecker,
|
||||
)
|
||||
|
||||
override val constructorCheckers: Set<FirConstructorChecker>
|
||||
get() = setOf(
|
||||
@@ -116,5 +119,6 @@ object CommonDeclarationCheckers : DeclarationCheckers() {
|
||||
FirTypeParameterBoundsChecker,
|
||||
FirTypeParameterVarianceChecker,
|
||||
FirReifiedTypeParameterChecker,
|
||||
FirTypeParameterSyntaxChecker,
|
||||
)
|
||||
}
|
||||
|
||||
+2
@@ -6,6 +6,7 @@
|
||||
package org.jetbrains.kotlin.fir.checkers
|
||||
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.expression.*
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.syntax.FirAnonymousFunctionSyntaxChecker
|
||||
|
||||
object CommonExpressionCheckers : ExpressionCheckers() {
|
||||
override val annotationCallCheckers: Set<FirAnnotationCallChecker>
|
||||
@@ -92,6 +93,7 @@ object CommonExpressionCheckers : ExpressionCheckers() {
|
||||
override val anonymousFunctionAsExpressionCheckers: Set<FirAnonymousFunctionAsExpressionChecker>
|
||||
get() = setOf(
|
||||
FirAnonymousFunctionChecker,
|
||||
FirAnonymousFunctionSyntaxChecker,
|
||||
)
|
||||
|
||||
override val typeOperatorCallCheckers: Set<FirTypeOperatorCallChecker>
|
||||
|
||||
+2
-3
@@ -9,17 +9,16 @@ import org.jetbrains.kotlin.fir.analysis.cfa.AbstractFirPropertyInitializationCh
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.cfa.FirControlFlowChecker
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.declaration.*
|
||||
import org.jetbrains.kotlin.fir.analysis.checkers.extended.*
|
||||
import org.jetbrains.kotlin.fir.declarations.FirDeclaration
|
||||
|
||||
object ExtendedDeclarationCheckers : DeclarationCheckers() {
|
||||
override val basicDeclarationCheckers: Set<FirBasicDeclarationChecker>
|
||||
get() = setOf(
|
||||
RedundantVisibilityModifierChecker,
|
||||
RedundantVisibilityModifierSyntaxChecker,
|
||||
)
|
||||
|
||||
override val memberDeclarationCheckers: Set<FirMemberDeclarationChecker>
|
||||
get() = setOf(
|
||||
RedundantModalityModifierChecker,
|
||||
RedundantModalityModifierSyntaxChecker,
|
||||
RedundantExplicitTypeChecker,
|
||||
RedundantSetterParameterTypeChecker,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user