diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableTool.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableTool.kt index adc2f8789b01..3d767ad312a0 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableTool.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableTool.kt @@ -11,7 +11,8 @@ import org.jetbrains.kotlin.analysis.api.lifetime.allowAnalysisOnEdt import org.jetbrains.kotlin.psi.KtElement /** - * A common base interface for [KotlinApplicableIntention] and [KotlinApplicableInspection]. + * A common base interface for [org.jetbrains.kotlin.idea.codeinsight.api.applicable.intentions.AbstractKotlinApplicableIntention] and + * [org.jetbrains.kotlin.idea.codeinsight.api.applicable.inspections.AbstractKotlinApplicableInspection]. */ interface KotlinApplicableTool : KotlinApplicableToolBase { /** diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolBase.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolBase.kt index ef71b84f7b61..86e08b33a8d8 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolBase.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolBase.kt @@ -5,7 +5,8 @@ import org.jetbrains.kotlin.idea.codeinsight.api.applicators.KotlinApplicability import org.jetbrains.kotlin.psi.KtElement /** - * A common base interface for [KotlinApplicableIntentionBase] and [KotlinApplicableInspectionBase]. + * A common base interface for [org.jetbrains.kotlin.idea.codeinsight.api.applicable.intentions.AbstractKotlinApplicableIntentionBase] and + * [org.jetbrains.kotlin.idea.codeinsight.api.applicable.inspections.AbstractKotlinApplicableInspectionBase]. */ interface KotlinApplicableToolBase { /** diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolWithContext.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolWithContext.kt index 11415b7005c4..d4cd25b8452c 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolWithContext.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/KotlinApplicableToolWithContext.kt @@ -12,6 +12,10 @@ import org.jetbrains.kotlin.analysis.api.lifetime.allowAnalysisOnEdt import org.jetbrains.kotlin.idea.util.application.runReadAction import org.jetbrains.kotlin.psi.KtElement +/** + * A common base interface for [org.jetbrains.kotlin.idea.codeinsight.api.applicable.intentions.AbstractKotlinApplicableIntentionWithContext] + * and [org.jetbrains.kotlin.idea.codeinsight.api.applicable.inspections.AbstractKotlinApplicableInspectionWithContext]. + */ interface KotlinApplicableToolWithContext : KotlinApplicableToolBase { /** * The text to be shown in the list of available fixes. diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/fixes/AbstractKotlinApplicableQuickFix.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/fixes/AbstractKotlinApplicableQuickFix.kt index 7d663518eb5c..b87b50ba6155 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/fixes/AbstractKotlinApplicableQuickFix.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/fixes/AbstractKotlinApplicableQuickFix.kt @@ -9,7 +9,8 @@ import org.jetbrains.kotlin.idea.codeinsight.api.classic.quickfixes.KotlinQuickF import org.jetbrains.kotlin.psi.KtFile /** - * A [KotlinQuickFixAction] providing a similar API for quick fixes as [KotlinApplicableIntention] provides for intentions. + * A [KotlinQuickFixAction] providing a similar API for quick fixes as + * [org.jetbrains.kotlin.idea.codeinsight.api.applicable.intentions.AbstractKotlinApplicableIntention] provides for intentions. */ abstract class AbstractKotlinApplicableQuickFix(target: ELEMENT) : KotlinQuickFixAction(target) { open fun getActionName(element: ELEMENT): @IntentionName String = familyName diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspection.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspection.kt index 8b1148dd58fc..7acd115e1649 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspection.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspection.kt @@ -11,11 +11,11 @@ import kotlin.reflect.KClass */ abstract class AbstractKotlinApplicableDiagnosticInspection>( elementType: KClass, -) : AbstractKotlinApplicableInspection(elementType), KotlinApplicableDiagnosticInspectionBase { +) : AbstractKotlinApplicableInspection(elementType), AbstractKotlinApplicableDiagnosticInspectionBase { /** * Whether this inspection is applicable to [element] given a [diagnostic]. * - * @see KotlinApplicableTool.isApplicableByAnalyze + * @see org.jetbrains.kotlin.idea.codeinsight.api.applicable.KotlinApplicableTool.isApplicableByAnalyze */ context(KtAnalysisSession) abstract fun isApplicableByDiagnostic(element: ELEMENT, diagnostic: DIAGNOSTIC): Boolean diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionBase.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionBase.kt index d83400cba8d5..7a35c1c45c9c 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionBase.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionBase.kt @@ -9,12 +9,12 @@ import org.jetbrains.kotlin.psi.KtElement import kotlin.reflect.KClass /** - * [KotlinApplicableDiagnosticInspectionBase] is a base interface for [AbstractKotlinApplicableDiagnosticInspection] and + * [AbstractKotlinApplicableDiagnosticInspectionBase] is a base interface for [AbstractKotlinApplicableDiagnosticInspection] and * [AbstractKotlinApplicableDiagnosticInspectionWithContext]. * * TODO: Consider supporting multiple diagnostics. */ -interface KotlinApplicableDiagnosticInspectionBase< +interface AbstractKotlinApplicableDiagnosticInspectionBase< ELEMENT : KtElement, DIAGNOSTIC : KtDiagnosticWithPsi > : KotlinApplicableToolBase { @@ -30,7 +30,7 @@ context(KtAnalysisSession) internal fun < ELEMENT : KtElement, DIAGNOSTIC : KtDiagnosticWithPsi -> KotlinApplicableDiagnosticInspectionBase.getDiagnostic(element: ELEMENT): DIAGNOSTIC? { +> AbstractKotlinApplicableDiagnosticInspectionBase.getDiagnostic(element: ELEMENT): DIAGNOSTIC? { val diagnostics = element.getDiagnostics(KtDiagnosticCheckerFilter.ONLY_EXTENDED_CHECKERS) val suitableDiagnostics = diagnostics.filterIsInstance(getDiagnosticType().java) return suitableDiagnostics.firstOrNull() diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionWithContext.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionWithContext.kt index 13b5ba4a78fe..1f70a96c5353 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionWithContext.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableDiagnosticInspectionWithContext.kt @@ -11,11 +11,11 @@ import kotlin.reflect.KClass */ abstract class AbstractKotlinApplicableDiagnosticInspectionWithContext, CONTEXT>( elementType: KClass, -) : AbstractKotlinApplicableInspectionWithContext(elementType), KotlinApplicableDiagnosticInspectionBase { +) : AbstractKotlinApplicableInspectionWithContext(elementType), AbstractKotlinApplicableDiagnosticInspectionBase { /** * Provides some context for [apply] given some [element] and [diagnostic]. * - * @see KotlinApplicableToolWithContext.prepareContext + * @see org.jetbrains.kotlin.idea.codeinsight.api.applicable.KotlinApplicableToolWithContext.prepareContext */ context(KtAnalysisSession) abstract fun prepareContextByDiagnostic(element: ELEMENT, diagnostic: DIAGNOSTIC): CONTEXT? diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspection.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspection.kt index 4f77743a95df..e22da1c2fa74 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspection.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspection.kt @@ -21,7 +21,7 @@ import kotlin.reflect.KClass */ abstract class AbstractKotlinApplicableInspection( elementType: KClass, -) : KotlinApplicableInspectionBase(elementType), KotlinApplicableTool { +) : AbstractKotlinApplicableInspectionBase(elementType), KotlinApplicableTool { /** * [getProblemDescription] must be lightweight: it should not perform expensive computations so that it doesn't cause performance * issues. @@ -40,7 +40,7 @@ abstract class AbstractKotlinApplicableInspection( if (!isApplicable) return null val elementPointer = element.createSmartPointer() - val quickFix = object : KotlinApplicableInspectionQuickFix() { + val quickFix = object : AbstractKotlinApplicableInspectionQuickFix() { override fun applyTo(element: ELEMENT) { apply(element, element.project, element.findExistingEditor()) } diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionBase.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionBase.kt index 6a9f8bb06919..e9a01cde06de 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionBase.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionBase.kt @@ -15,10 +15,10 @@ import org.jetbrains.kotlin.psi.KtElement import kotlin.reflect.KClass /** - * [KotlinApplicableInspectionBase] is a base implementation for [AbstractKotlinApplicableInspection] and + * [AbstractKotlinApplicableInspectionBase] is a base implementation for [AbstractKotlinApplicableInspection] and * [AbstractKotlinApplicableInspectionWithContext]. */ -sealed class KotlinApplicableInspectionBase( +sealed class AbstractKotlinApplicableInspectionBase( elementType: KClass, ) : KotlinSingleElementInspection(elementType), KotlinApplicableToolBase { /** @@ -62,7 +62,7 @@ sealed class KotlinApplicableInspectionBase( } } -internal abstract class KotlinApplicableInspectionQuickFix : LocalQuickFix { +internal abstract class AbstractKotlinApplicableInspectionQuickFix : LocalQuickFix { abstract fun applyTo(element: ELEMENT) abstract override fun getName(): String diff --git a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionWithContext.kt b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionWithContext.kt index ccea5f620c09..db69d970c445 100644 --- a/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionWithContext.kt +++ b/plugins/kotlin/code-insight/api/src/org/jetbrains/kotlin/idea/codeinsight/api/applicable/inspections/AbstractKotlinApplicableInspectionWithContext.kt @@ -21,7 +21,7 @@ import kotlin.reflect.KClass */ abstract class AbstractKotlinApplicableInspectionWithContext( elementType: KClass, -) : KotlinApplicableInspectionBase(elementType), KotlinApplicableToolWithContext { +) : AbstractKotlinApplicableInspectionBase(elementType), KotlinApplicableToolWithContext { /** * [getProblemDescription] must be lightweight: it should not perform expensive computations so that it doesn't cause performance * issues. @@ -40,7 +40,7 @@ abstract class AbstractKotlinApplicableInspectionWithContext() { + val quickFix = object : AbstractKotlinApplicableInspectionQuickFix() { override fun applyTo(element: ELEMENT) { apply(element, context, element.project, element.findExistingEditor()) }