diff --git a/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenClassGenerator.kt b/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenClassGenerator.kt index e7b4abbd30f..13c427b2261 100644 --- a/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenClassGenerator.kt +++ b/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenClassGenerator.kt @@ -16,6 +16,8 @@ import org.jetbrains.kotlin.fir.declarations.builder.buildClassImpl import org.jetbrains.kotlin.fir.declarations.impl.FirResolvedDeclarationStatusImpl import org.jetbrains.kotlin.fir.extensions.AnnotationFqn import org.jetbrains.kotlin.fir.extensions.FirClassGenerationExtension +import org.jetbrains.kotlin.fir.extensions.predicate.DeclarationPredicate +import org.jetbrains.kotlin.fir.extensions.predicate.has import org.jetbrains.kotlin.fir.resolve.firProvider import org.jetbrains.kotlin.fir.resolve.impl.FirProviderImpl import org.jetbrains.kotlin.fir.symbols.impl.FirRegularClassSymbol @@ -42,13 +44,7 @@ class AllOpenClassGenerator(session: FirSession) : FirClassGenerationExtension(s return listOf(GeneratedClass(klass, containingFile)) } - override val directlyApplicableAnnotations: Set = setOf(FqName("org.jetbrains.kotlin.fir.plugin.WithClass")) - - override val childrenApplicableAnnotations: Set - get() = emptySet() - - override val metaAnnotations: Map - get() = emptyMap() + override val predicate: DeclarationPredicate = has(FqName("org.jetbrains.kotlin.fir.plugin.WithClass")) override val key: FirPluginKey get() = AllOpenPluginKey diff --git a/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenStatusTransformer.kt b/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenStatusTransformer.kt index ce7ff0e1de0..c9578edd110 100644 --- a/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenStatusTransformer.kt +++ b/plugins/fir/fir-plugin-prototype/src/org/jetbrains/kotlin/fir/plugin/AllOpenStatusTransformer.kt @@ -12,6 +12,7 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclarationStatus import org.jetbrains.kotlin.fir.declarations.FirPluginKey import org.jetbrains.kotlin.fir.extensions.AnnotationFqn import org.jetbrains.kotlin.fir.extensions.FirStatusTransformerExtension +import org.jetbrains.kotlin.fir.extensions.predicate.* import org.jetbrains.kotlin.fir.extensions.transform import org.jetbrains.kotlin.name.FqName @@ -25,17 +26,7 @@ class AllOpenStatusTransformer(session: FirSession) : FirStatusTransformerExtens return status.transform(modality = Modality.OPEN) } - override val mode: Mode - get() = Mode.ANNOTATED_ELEMENT - - override val directlyApplicableAnnotations: Set - get() = setOf(ALL_OPEN) - - override val childrenApplicableAnnotations: Set - get() = setOf(ALL_OPEN) - - override val metaAnnotations: Map - get() = mapOf(ALL_OPEN to MetaAnnotationMode.ANNOTATED_AND_CHILDREN) + override val predicate: DeclarationPredicate = hasOrUnder(ALL_OPEN) or metaHasOrUnder(ALL_OPEN) override val key: FirPluginKey get() = AllOpenPluginKey diff --git a/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/AbstractFirAllOpenDiagnosticTest.kt b/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/AbstractFirAllOpenDiagnosticTest.kt index 4b730c5d59c..ffb451b47d8 100644 --- a/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/AbstractFirAllOpenDiagnosticTest.kt +++ b/plugins/fir/fir-plugin-prototype/tests/org/jetbrains/kotlin/fir/plugin/AbstractFirAllOpenDiagnosticTest.kt @@ -8,12 +8,12 @@ package org.jetbrains.kotlin.fir.plugin import org.jetbrains.kotlin.cli.jvm.config.addJvmClasspathRoot import org.jetbrains.kotlin.config.CompilerConfiguration import org.jetbrains.kotlin.fir.AbstractFirDiagnosticsTest -import org.jetbrains.kotlin.fir.extensions.FirOldExtensionsService +import org.jetbrains.kotlin.fir.extensions.FirExtensionService import org.jetbrains.kotlin.fir.extensions.registerExtensions import java.io.File abstract class AbstractFirAllOpenDiagnosticTest : AbstractFirDiagnosticsTest() { - override fun registerFirExtensions(service: FirOldExtensionsService) { + override fun registerFirExtensions(service: FirExtensionService) { service.registerExtensions(FirAllOpenComponentRegistrar().configure()) }