AnnotationChecker -> DeclarationChecker
This commit is contained in:
@@ -18,17 +18,17 @@ package org.jetbrains.kotlin.resolve
|
||||
|
||||
import org.jetbrains.kotlin.resolve.calls.checkers.*
|
||||
|
||||
private val DEFAULT_ANNOTATION_CHECKERS = listOf(DataClassAnnotationChecker())
|
||||
private val DEFAULT_DECLARATION_CHECKERS = listOf(DataClassAnnotationChecker())
|
||||
private val DEFAULT_CALL_CHECKERS = listOf(CapturingInClosureChecker(), InlineCheckerWrapper(), ReifiedTypeParameterSubstitutionChecker())
|
||||
private val DEFAULT_TYPE_CHECKERS = listOf(TypeApproximator())
|
||||
|
||||
public abstract class AdditionalCheckerProvider(
|
||||
additionalAnnotationCheckers: List<AnnotationChecker>,
|
||||
additionalDeclarationCheckers: List<DeclarationChecker>,
|
||||
additionalCallCheckers: List<CallChecker>,
|
||||
additionalTypeCheckers: List<AdditionalTypeChecker>
|
||||
) {
|
||||
|
||||
public val annotationCheckers: List<AnnotationChecker> = DEFAULT_ANNOTATION_CHECKERS + additionalAnnotationCheckers
|
||||
public val declarationCheckers: List<DeclarationChecker> = DEFAULT_DECLARATION_CHECKERS + additionalDeclarationCheckers
|
||||
public val callCheckers: List<CallChecker> = DEFAULT_CALL_CHECKERS + additionalCallCheckers
|
||||
public val additionalTypeCheckers: List<AdditionalTypeChecker> = DEFAULT_TYPE_CHECKERS + additionalTypeCheckers
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.diagnostics.*
|
||||
import org.jetbrains.kotlin.builtins.*
|
||||
|
||||
|
||||
public class DataClassAnnotationChecker : AnnotationChecker {
|
||||
public class DataClassAnnotationChecker : DeclarationChecker {
|
||||
override fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink) {
|
||||
if (descriptor !is ClassDescriptor) return
|
||||
if (declaration !is JetClassOrObject) return
|
||||
|
||||
+1
-1
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.psi.JetDeclaration
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticSink
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor
|
||||
|
||||
public trait AnnotationChecker {
|
||||
public trait DeclarationChecker {
|
||||
|
||||
public fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink);
|
||||
|
||||
@@ -148,14 +148,14 @@ public class ModifiersChecker {
|
||||
checkVarianceModifiersOfTypeParameters(modifierListOwner);
|
||||
}
|
||||
checkPlatformNameApplicability(descriptor);
|
||||
runAnnotationCheckers(modifierListOwner, descriptor);
|
||||
runDeclarationCheckers(modifierListOwner, descriptor);
|
||||
}
|
||||
|
||||
public void checkModifiersForLocalDeclaration(@NotNull JetDeclaration modifierListOwner, @NotNull DeclarationDescriptor descriptor) {
|
||||
reportIllegalModalityModifiers(modifierListOwner);
|
||||
reportIllegalVisibilityModifiers(modifierListOwner);
|
||||
checkPlatformNameApplicability(descriptor);
|
||||
runAnnotationCheckers(modifierListOwner, descriptor);
|
||||
runDeclarationCheckers(modifierListOwner, descriptor);
|
||||
}
|
||||
|
||||
public void reportIllegalModalityModifiers(@NotNull JetModifierListOwner modifierListOwner) {
|
||||
@@ -394,8 +394,8 @@ public class ModifiersChecker {
|
||||
return Visibilities.INTERNAL;
|
||||
}
|
||||
|
||||
private void runAnnotationCheckers(@NotNull JetDeclaration declaration, @NotNull DeclarationDescriptor descriptor) {
|
||||
for (AnnotationChecker checker : additionalCheckerProvider.getAnnotationCheckers()) {
|
||||
private void runDeclarationCheckers(@NotNull JetDeclaration declaration, @NotNull DeclarationDescriptor descriptor) {
|
||||
for (DeclarationChecker checker : additionalCheckerProvider.getDeclarationCheckers()) {
|
||||
checker.check(declaration, descriptor, trace);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user