FIR IDE: quickfix to make class abstract if member not implemented
This commit is contained in:
committed by
TeamCityServer
parent
6e3009b82e
commit
06ba143afe
@@ -54,6 +54,14 @@ class MainKtQuickFixRegistrar : KtQuickFixRegistrar() {
|
|||||||
RemoveModifierFix.removeNonRedundantModifier,
|
RemoveModifierFix.removeNonRedundantModifier,
|
||||||
ChangeVariableMutabilityFix.CONST_VAL_FACTORY
|
ChangeVariableMutabilityFix.CONST_VAL_FACTORY
|
||||||
)
|
)
|
||||||
|
registerPsiQuickFixes(
|
||||||
|
KtFirDiagnostic.AbstractMemberNotImplemented::class,
|
||||||
|
AddModifierFix.addAbstractModifier
|
||||||
|
)
|
||||||
|
registerPsiQuickFixes(
|
||||||
|
KtFirDiagnostic.AbstractClassMemberNotImplemented::class,
|
||||||
|
AddModifierFix.addAbstractModifier
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val propertyInitialization = KtQuickFixesListBuilder.registerPsiQuickFix {
|
private val propertyInitialization = KtQuickFixesListBuilder.registerPsiQuickFix {
|
||||||
|
|||||||
Generated
+10
@@ -436,6 +436,16 @@ public class HighLevelQuickFixTestGenerated extends AbstractHighLevelQuickFixTes
|
|||||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("abstractClassMemberNotImplemented.kt")
|
||||||
|
public void testAbstractClassMemberNotImplemented() throws Exception {
|
||||||
|
runTest("idea/testData/quickfix/modifiers/abstractClassMemberNotImplemented.kt");
|
||||||
|
}
|
||||||
|
|
||||||
|
@TestMetadata("abstractMemberNotImplemented.kt")
|
||||||
|
public void testAbstractMemberNotImplemented() throws Exception {
|
||||||
|
runTest("idea/testData/quickfix/modifiers/abstractMemberNotImplemented.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("abstractModifierInEnum.kt")
|
@TestMetadata("abstractModifierInEnum.kt")
|
||||||
public void testAbstractModifierInEnum() throws Exception {
|
public void testAbstractModifierInEnum() throws Exception {
|
||||||
runTest("idea/testData/quickfix/modifiers/abstractModifierInEnum.kt");
|
runTest("idea/testData/quickfix/modifiers/abstractModifierInEnum.kt");
|
||||||
|
|||||||
@@ -0,0 +1,7 @@
|
|||||||
|
// "Make 'Foo' 'abstract'" "true"
|
||||||
|
|
||||||
|
abstract class Bar {
|
||||||
|
abstract val i: Int
|
||||||
|
}
|
||||||
|
|
||||||
|
class <caret>Foo : Bar() {}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
// "Make 'Foo' 'abstract'" "true"
|
||||||
|
|
||||||
|
abstract class Bar {
|
||||||
|
abstract val i: Int
|
||||||
|
}
|
||||||
|
|
||||||
|
abstract class <caret>Foo : Bar() {}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
// "Make 'Foo' 'abstract'" "true"
|
||||||
|
|
||||||
|
class <caret>Foo : List<String> {}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
// "Make 'Foo' 'abstract'" "true"
|
||||||
|
|
||||||
|
abstract class <caret>Foo : List<String> {}
|
||||||
@@ -9119,6 +9119,16 @@ public class QuickFixTestGenerated extends AbstractQuickFixTest {
|
|||||||
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
KotlinTestUtils.runTest(this::doTest, this, testDataFilePath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("abstractClassMemberNotImplemented.kt")
|
||||||
|
public void testAbstractClassMemberNotImplemented() throws Exception {
|
||||||
|
runTest("idea/testData/quickfix/modifiers/abstractClassMemberNotImplemented.kt");
|
||||||
|
}
|
||||||
|
|
||||||
|
@TestMetadata("abstractMemberNotImplemented.kt")
|
||||||
|
public void testAbstractMemberNotImplemented() throws Exception {
|
||||||
|
runTest("idea/testData/quickfix/modifiers/abstractMemberNotImplemented.kt");
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("abstractModifierInEnum.kt")
|
@TestMetadata("abstractModifierInEnum.kt")
|
||||||
public void testAbstractModifierInEnum() throws Exception {
|
public void testAbstractModifierInEnum() throws Exception {
|
||||||
runTest("idea/testData/quickfix/modifiers/abstractModifierInEnum.kt");
|
runTest("idea/testData/quickfix/modifiers/abstractModifierInEnum.kt");
|
||||||
|
|||||||
Reference in New Issue
Block a user