diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/KotlinJvmCheckerProvider.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/KotlinJvmCheckerProvider.kt index 68ac956575a..aba17b8f654 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/KotlinJvmCheckerProvider.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/KotlinJvmCheckerProvider.kt @@ -17,7 +17,7 @@ package org.jetbrains.kotlin.load.kotlin import org.jetbrains.kotlin.resolve.AdditionalCheckerProvider -import org.jetbrains.kotlin.resolve.AnnotationChecker +import org.jetbrains.kotlin.resolve.DeclarationChecker import org.jetbrains.kotlin.resolve.annotations.hasPlatformStaticAnnotation import org.jetbrains.kotlin.resolve.DescriptorUtils import org.jetbrains.kotlin.descriptors.ClassKind @@ -59,12 +59,12 @@ import org.jetbrains.kotlin.resolve.BindingContext import org.jetbrains.kotlin.types.expressions.SenselessComparisonChecker public object KotlinJvmCheckerProvider : AdditionalCheckerProvider( - additionalAnnotationCheckers = listOf(PlatformStaticAnnotationChecker(), LocalFunInlineChecker(), ReifiedTypeParameterAnnotationChecker(), NativeFunChecker()), + additionalDeclarationCheckers = listOf(PlatformStaticAnnotationChecker(), LocalFunInlineChecker(), ReifiedTypeParameterAnnotationChecker(), NativeFunChecker()), additionalCallCheckers = listOf(NeedSyntheticChecker()), additionalTypeCheckers = listOf(JavaNullabilityWarningsChecker()) ) -public class LocalFunInlineChecker : AnnotationChecker { +public class LocalFunInlineChecker : DeclarationChecker { override fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink) { if (descriptor.hasInlineAnnotation() && @@ -76,7 +76,7 @@ public class LocalFunInlineChecker : AnnotationChecker { } } -public class PlatformStaticAnnotationChecker : AnnotationChecker { +public class PlatformStaticAnnotationChecker : DeclarationChecker { override fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink) { if (descriptor.hasPlatformStaticAnnotation()) { @@ -116,7 +116,7 @@ public class PlatformStaticAnnotationChecker : AnnotationChecker { } } -public class ReifiedTypeParameterAnnotationChecker : AnnotationChecker { +public class ReifiedTypeParameterAnnotationChecker : DeclarationChecker { override fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink) { if (descriptor.hasIntrinsicAnnotation()) return diff --git a/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/native.kt b/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/native.kt index 378f5516717..3ebb542c48d 100644 --- a/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/native.kt +++ b/compiler/frontend.java/src/org/jetbrains/kotlin/load/kotlin/native.kt @@ -17,7 +17,7 @@ package org.jetbrains.kotlin.load.kotlin.nativeDeclarations import org.jetbrains.kotlin.resolve.DescriptorUtils -import org.jetbrains.kotlin.resolve.AnnotationChecker +import org.jetbrains.kotlin.resolve.DeclarationChecker import org.jetbrains.kotlin.psi.JetDeclaration import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.diagnostics.DiagnosticSink @@ -38,7 +38,7 @@ public fun DeclarationDescriptor.hasNativeAnnotation(): Boolean { public class SuppressNoBodyErrorsForNativeDeclarations : SuppressDiagnosticsByAnnotations(FUNCTION_NO_BODY_ERRORS, NATIVE_ANNOTATION_CLASS_NAME) -public class NativeFunChecker : AnnotationChecker { +public class NativeFunChecker : DeclarationChecker { override fun check(declaration: JetDeclaration, descriptor: DeclarationDescriptor, diagnosticHolder: DiagnosticSink) { if (!descriptor.hasNativeAnnotation()) return diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AdditionalCheckerProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AdditionalCheckerProvider.kt index 8a1dcea5137..412361630d7 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AdditionalCheckerProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/AdditionalCheckerProvider.kt @@ -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, + additionalDeclarationCheckers: List, additionalCallCheckers: List, additionalTypeCheckers: List ) { - public val annotationCheckers: List = DEFAULT_ANNOTATION_CHECKERS + additionalAnnotationCheckers + public val declarationCheckers: List = DEFAULT_DECLARATION_CHECKERS + additionalDeclarationCheckers public val callCheckers: List = DEFAULT_CALL_CHECKERS + additionalCallCheckers public val additionalTypeCheckers: List = DEFAULT_TYPE_CHECKERS + additionalTypeCheckers diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/DataClassAnnotationChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DataClassAnnotationChecker.kt index 411a934c239..6815253427e 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/DataClassAnnotationChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DataClassAnnotationChecker.kt @@ -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 diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DeclarationChecker.kt similarity index 96% rename from compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt rename to compiler/frontend/src/org/jetbrains/kotlin/resolve/DeclarationChecker.kt index cf8a160ea05..47c9cb1e1f5 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/AnnotationChecker.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/DeclarationChecker.kt @@ -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); diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.java b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.java index cc6e5acf7a2..dea16f5c333 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.java +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/ModifiersChecker.java @@ -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); } } diff --git a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/KotlinJsCheckerProvider.kt b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/KotlinJsCheckerProvider.kt index eb729e6027e..2ff03f9c7ca 100644 --- a/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/KotlinJsCheckerProvider.kt +++ b/js/js.frontend/src/org/jetbrains/kotlin/js/resolve/KotlinJsCheckerProvider.kt @@ -17,7 +17,7 @@ package org.jetbrains.kotlin.js.resolve import org.jetbrains.kotlin.resolve.AdditionalCheckerProvider -import org.jetbrains.kotlin.resolve.AnnotationChecker +import org.jetbrains.kotlin.resolve.DeclarationChecker import org.jetbrains.kotlin.psi.JetDeclaration import org.jetbrains.kotlin.descriptors.DeclarationDescriptor import org.jetbrains.kotlin.diagnostics.DiagnosticSink @@ -34,12 +34,12 @@ import org.jetbrains.kotlin.types.typeUtil.isSubtypeOf import org.jetbrains.kotlin.js.resolve.diagnostics.JsCallChecker public object KotlinJsCheckerProvider : AdditionalCheckerProvider( - additionalAnnotationCheckers = listOf(NativeInvokeChecker(), NativeGetterChecker(), NativeSetterChecker()), + additionalDeclarationCheckers = listOf(NativeInvokeChecker(), NativeGetterChecker(), NativeSetterChecker()), additionalCallCheckers = listOf(JsCallChecker()), additionalTypeCheckers = listOf() ) -private abstract class AbstractNativeAnnotationsChecker(private val requiredAnnotation: PredefinedAnnotation) : AnnotationChecker { +private abstract class AbstractNativeAnnotationsChecker(private val requiredAnnotation: PredefinedAnnotation) : DeclarationChecker { open fun additionalCheck(declaration: JetNamedFunction, descriptor: FunctionDescriptor, diagnosticHolder: DiagnosticSink) {}