Renames
This commit is contained in:
+2
-2
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.annotations.Annotations
|
||||
import org.jetbrains.kotlin.idea.completion.*
|
||||
import org.jetbrains.kotlin.idea.completion.handlers.KotlinFunctionInsertHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMethodsHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler
|
||||
import org.jetbrains.kotlin.idea.core.psiClassToDescriptor
|
||||
import org.jetbrains.kotlin.idea.resolve.ResolutionFacade
|
||||
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
|
||||
@@ -170,7 +170,7 @@ class TypeInstantiationItems(
|
||||
|
||||
shortenReferences(context, startOffset, startOffset + text.length())
|
||||
|
||||
ImplementMethodsHandler().invoke(context.getProject(), editor, context.getFile(), true)
|
||||
ImplementMembersHandler().invoke(context.getProject(), editor, context.getFile(), true)
|
||||
}
|
||||
lookupElement = lookupElement.suppressAutoInsertion()
|
||||
lookupElement = lookupElement.assignSmartCompletionPriority(SmartCompletionItemPriority.ANONYMOUS_OBJECT)
|
||||
|
||||
+3
-3
@@ -24,15 +24,15 @@ import org.jetbrains.kotlin.descriptors.ClassDescriptor
|
||||
import org.jetbrains.kotlin.idea.JetBundle
|
||||
import org.jetbrains.kotlin.resolve.OverrideResolver
|
||||
|
||||
public class ImplementMethodsHandler : OverrideImplementMethodsHandler(), IntentionAction {
|
||||
override fun collectMethodsToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject> {
|
||||
public class ImplementMembersHandler : OverrideImplementMembersHandler(), IntentionAction {
|
||||
override fun collectMembersToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject> {
|
||||
return OverrideResolver.getMissingImplementations(descriptor)
|
||||
.map { OverrideMemberChooserObject.create(project, it, it) }
|
||||
}
|
||||
|
||||
override fun getChooserTitle() = "Implement Members"
|
||||
|
||||
override fun getNoMethodsFoundHint() = "No methods to implement have been found"
|
||||
override fun getNoMembersFoundHint() = "No members to implement have been found"
|
||||
|
||||
override fun getText() = JetBundle.message("implement.members")
|
||||
override fun getFamilyName() = JetBundle.message("implement.members")
|
||||
+7
-7
@@ -37,14 +37,14 @@ import org.jetbrains.kotlin.psi.psiUtil.getNonStrictParentOfType
|
||||
import org.jetbrains.kotlin.renderer.*
|
||||
import java.util.ArrayList
|
||||
|
||||
public abstract class OverrideImplementMethodsHandler : LanguageCodeInsightActionHandler {
|
||||
public abstract class OverrideImplementMembersHandler : LanguageCodeInsightActionHandler {
|
||||
|
||||
public fun collectMethodsToGenerate(classOrObject: JetClassOrObject): Collection<OverrideMemberChooserObject> {
|
||||
public fun collectMembersToGenerate(classOrObject: JetClassOrObject): Collection<OverrideMemberChooserObject> {
|
||||
val descriptor = classOrObject.resolveToDescriptor() as? ClassDescriptor ?: return emptySet()
|
||||
return collectMethodsToGenerate(descriptor, classOrObject.project)
|
||||
return collectMembersToGenerate(descriptor, classOrObject.project)
|
||||
}
|
||||
|
||||
protected abstract fun collectMethodsToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject>
|
||||
protected abstract fun collectMembersToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject>
|
||||
|
||||
private fun showOverrideImplementChooser(project: Project, members: Array<OverrideMemberChooserObject>): MemberChooser<OverrideMemberChooserObject>? {
|
||||
val chooser = MemberChooser(members, true, true, project)
|
||||
@@ -63,15 +63,15 @@ public abstract class OverrideImplementMethodsHandler : LanguageCodeInsightActio
|
||||
return classOrObject != null
|
||||
}
|
||||
|
||||
protected abstract fun getNoMethodsFoundHint(): String
|
||||
protected abstract fun getNoMembersFoundHint(): String
|
||||
|
||||
public fun invoke(project: Project, editor: Editor, file: PsiFile, implementAll: Boolean) {
|
||||
val elementAtCaret = file.findElementAt(editor.caretModel.offset)
|
||||
val classOrObject = elementAtCaret?.getNonStrictParentOfType<JetClassOrObject>()!!
|
||||
|
||||
val members = collectMethodsToGenerate(classOrObject)
|
||||
val members = collectMembersToGenerate(classOrObject)
|
||||
if (members.isEmpty() && !implementAll) {
|
||||
HintManager.getInstance().showErrorHint(editor, getNoMethodsFoundHint())
|
||||
HintManager.getInstance().showErrorHint(editor, getNoMembersFoundHint())
|
||||
return
|
||||
}
|
||||
|
||||
+3
-3
@@ -21,8 +21,8 @@ import org.jetbrains.kotlin.descriptors.*
|
||||
import java.util.ArrayList
|
||||
import java.util.LinkedHashMap
|
||||
|
||||
public class OverrideMethodsHandler : OverrideImplementMethodsHandler() {
|
||||
override fun collectMethodsToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject> {
|
||||
public class OverrideMembersHandler : OverrideImplementMembersHandler() {
|
||||
override fun collectMembersToGenerate(descriptor: ClassDescriptor, project: Project): Collection<OverrideMemberChooserObject> {
|
||||
val result = ArrayList<OverrideMemberChooserObject>()
|
||||
for (member in descriptor.unsubstitutedMemberScope.getAllDescriptors()) {
|
||||
if (member is CallableMemberDescriptor
|
||||
@@ -74,5 +74,5 @@ public class OverrideMethodsHandler : OverrideImplementMethodsHandler() {
|
||||
|
||||
override fun getChooserTitle() = "Override Members"
|
||||
|
||||
override fun getNoMethodsFoundHint() = "No methods to override have been found"
|
||||
override fun getNoMembersFoundHint() = "No members to override have been found"
|
||||
}
|
||||
@@ -447,8 +447,8 @@
|
||||
<debugger.syntheticProvider implementation="org.jetbrains.kotlin.idea.debugger.filter.KotlinSyntheticTypeComponentProvider"/>
|
||||
<debugger.javaBreakpointHandlerFactory implementation="org.jetbrains.kotlin.idea.debugger.breakpoints.KotlinBreakpointHandlerFactory"/>
|
||||
|
||||
<codeInsight.implementMethod language="jet" implementationClass="org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMethodsHandler"/>
|
||||
<codeInsight.overrideMethod language="jet" implementationClass="org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMethodsHandler"/>
|
||||
<codeInsight.implementMethod language="jet" implementationClass="org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler"/>
|
||||
<codeInsight.overrideMethod language="jet" implementationClass="org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMembersHandler"/>
|
||||
|
||||
<framework.type implementation="org.jetbrains.kotlin.idea.framework.JavaFrameworkType"/>
|
||||
<framework.type implementation="org.jetbrains.kotlin.idea.framework.JSFrameworkType"/>
|
||||
|
||||
+2
-2
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.descriptors.ClassKind;
|
||||
import org.jetbrains.kotlin.descriptors.ConstructorDescriptor;
|
||||
import org.jetbrains.kotlin.descriptors.DeclarationDescriptor;
|
||||
import org.jetbrains.kotlin.idea.caches.resolve.ResolvePackage;
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMethodsHandler;
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler;
|
||||
import org.jetbrains.kotlin.psi.JetReferenceExpression;
|
||||
import org.jetbrains.kotlin.resolve.BindingContext;
|
||||
import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode;
|
||||
@@ -89,7 +89,7 @@ class AnonymousTemplateEditingListener extends TemplateEditingAdapter {
|
||||
}
|
||||
}
|
||||
|
||||
new ImplementMethodsHandler().invoke(psiFile.getProject(), editor, psiFile, true);
|
||||
new ImplementMembersHandler().invoke(psiFile.getProject(), editor, psiFile, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.idea.quickfix
|
||||
import com.intellij.codeInsight.intention.IntentionAction
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory
|
||||
import org.jetbrains.kotlin.diagnostics.Errors.*
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMethodsHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler
|
||||
import org.jetbrains.kotlin.idea.inspections.AddReflectionQuickFix
|
||||
import org.jetbrains.kotlin.idea.quickfix.createFromUsage.createCallable.*
|
||||
import org.jetbrains.kotlin.idea.quickfix.createFromUsage.createClass.CreateClassFromCallWithConstructorCalleeActionFactory
|
||||
@@ -144,7 +144,7 @@ public class QuickFixRegistrar : QuickFixContributor {
|
||||
USELESS_NULLABLE_CHECK.registerFactory(RemoveNullableFix.createFactory(RemoveNullableFix.NullableKind.USELESS))
|
||||
|
||||
|
||||
val implementMethodsHandler = ImplementMethodsHandler()
|
||||
val implementMethodsHandler = ImplementMembersHandler()
|
||||
ABSTRACT_MEMBER_NOT_IMPLEMENTED.registerActions(implementMethodsHandler)
|
||||
MANY_IMPL_MEMBER_NOT_IMPLEMENTED.registerActions(implementMethodsHandler)
|
||||
|
||||
|
||||
@@ -28,10 +28,10 @@ import com.intellij.psi.util.PsiTreeUtil
|
||||
import com.intellij.testFramework.LightProjectDescriptor
|
||||
import com.intellij.util.SmartList
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMethodsHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideImplementMethodsHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.ImplementMembersHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideImplementMembersHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMemberChooserObject
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMethodsHandler
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMembersHandler
|
||||
import org.jetbrains.kotlin.idea.test.JetLightCodeInsightFixtureTestCase
|
||||
import org.jetbrains.kotlin.idea.test.JetLightProjectDescriptor
|
||||
import org.jetbrains.kotlin.idea.util.application.executeWriteCommand
|
||||
@@ -47,31 +47,31 @@ public abstract class AbstractOverrideImplementTest : JetLightCodeInsightFixture
|
||||
override fun getProjectDescriptor(): LightProjectDescriptor = JetLightProjectDescriptor.INSTANCE
|
||||
|
||||
protected fun doImplementFileTest() {
|
||||
doFileTest(ImplementMethodsHandler())
|
||||
doFileTest(ImplementMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doOverrideFileTest() {
|
||||
doFileTest(OverrideMethodsHandler())
|
||||
doFileTest(OverrideMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doMultiImplementFileTest() {
|
||||
doMultiFileTest(ImplementMethodsHandler())
|
||||
doMultiFileTest(ImplementMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doMultiOverrideFileTest() {
|
||||
doMultiFileTest(OverrideMethodsHandler())
|
||||
doMultiFileTest(OverrideMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doImplementDirectoryTest() {
|
||||
doDirectoryTest(ImplementMethodsHandler())
|
||||
doDirectoryTest(ImplementMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doOverrideDirectoryTest(memberToImplement: String?) {
|
||||
doDirectoryTest(OverrideMethodsHandler(), memberToImplement)
|
||||
doDirectoryTest(OverrideMembersHandler(), memberToImplement)
|
||||
}
|
||||
|
||||
protected fun doMultiOverrideDirectoryTest() {
|
||||
doMultiDirectoryTest(OverrideMethodsHandler())
|
||||
doMultiDirectoryTest(OverrideMembersHandler())
|
||||
}
|
||||
|
||||
protected fun doImplementJavaDirectoryTest(className: String, methodName: String) {
|
||||
@@ -91,42 +91,42 @@ public abstract class AbstractOverrideImplementTest : JetLightCodeInsightFixture
|
||||
myFixture.checkResultByFile(getTestName(true) + "/foo/JavaClass.java.after")
|
||||
}
|
||||
|
||||
private fun doFileTest(handler: OverrideImplementMethodsHandler) {
|
||||
private fun doFileTest(handler: OverrideImplementMembersHandler) {
|
||||
myFixture.configureByFile(getTestName(true) + ".kt")
|
||||
doOverrideImplement(handler, null)
|
||||
checkResultByFile(getTestName(true) + ".kt.after")
|
||||
}
|
||||
|
||||
private fun doMultiFileTest(handler: OverrideImplementMethodsHandler) {
|
||||
private fun doMultiFileTest(handler: OverrideImplementMembersHandler) {
|
||||
myFixture.configureByFile(getTestName(true) + ".kt")
|
||||
doMultiOverrideImplement(handler)
|
||||
checkResultByFile(getTestName(true) + ".kt.after")
|
||||
}
|
||||
|
||||
protected fun doDirectoryTest(handler: OverrideImplementMethodsHandler) {
|
||||
protected fun doDirectoryTest(handler: OverrideImplementMembersHandler) {
|
||||
doDirectoryTest(handler, null)
|
||||
}
|
||||
|
||||
private fun doDirectoryTest(handler: OverrideImplementMethodsHandler, memberToOverride: String?) {
|
||||
private fun doDirectoryTest(handler: OverrideImplementMembersHandler, memberToOverride: String?) {
|
||||
myFixture.copyDirectoryToProject(getTestName(true), "")
|
||||
myFixture.configureFromTempProjectFile("foo/Impl.kt")
|
||||
doOverrideImplement(handler, memberToOverride)
|
||||
checkResultByFile(getTestName(true) + "/foo/Impl.kt.after")
|
||||
}
|
||||
|
||||
private fun doMultiDirectoryTest(handler: OverrideImplementMethodsHandler) {
|
||||
private fun doMultiDirectoryTest(handler: OverrideImplementMembersHandler) {
|
||||
myFixture.copyDirectoryToProject(getTestName(true), "")
|
||||
myFixture.configureFromTempProjectFile("foo/Impl.kt")
|
||||
doMultiOverrideImplement(handler)
|
||||
checkResultByFile(getTestName(true) + "/foo/Impl.kt.after")
|
||||
}
|
||||
|
||||
private fun doOverrideImplement(handler: OverrideImplementMethodsHandler, memberToOverride: String?) {
|
||||
private fun doOverrideImplement(handler: OverrideImplementMembersHandler, memberToOverride: String?) {
|
||||
val elementAtCaret = myFixture.file.findElementAt(myFixture.editor.caretModel.offset)
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, javaClass<JetClassOrObject>())
|
||||
?: error("Caret should be inside class or object")
|
||||
|
||||
val chooserObjects = handler.collectMethodsToGenerate(classOrObject)
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject)
|
||||
|
||||
val singleToOverride = if (memberToOverride == null) {
|
||||
val filtered = chooserObjects.filter { it.descriptor.containingDeclaration != KotlinBuiltIns.getInstance().any }
|
||||
@@ -152,12 +152,12 @@ public abstract class AbstractOverrideImplementTest : JetLightCodeInsightFixture
|
||||
performGenerateCommand(classOrObject, listOf(singleToOverride))
|
||||
}
|
||||
|
||||
private fun doMultiOverrideImplement(handler: OverrideImplementMethodsHandler) {
|
||||
private fun doMultiOverrideImplement(handler: OverrideImplementMembersHandler) {
|
||||
val elementAtCaret = myFixture.file.findElementAt(myFixture.editor.caretModel.offset)
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, javaClass<JetClassOrObject>())
|
||||
?: error("Caret should be inside class or object")
|
||||
|
||||
val chooserObjects = handler.collectMethodsToGenerate(classOrObject).sortBy { it.descriptor.name.asString() + " in " + it.immediateSuper.containingDeclaration.name.asString() }
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject).sortBy { it.descriptor.name.asString() + " in " + it.immediateSuper.containingDeclaration.name.asString() }
|
||||
performGenerateCommand(classOrObject, chooserObjects)
|
||||
}
|
||||
|
||||
@@ -178,7 +178,7 @@ public abstract class AbstractOverrideImplementTest : JetLightCodeInsightFixture
|
||||
selectedElements: List<OverrideMemberChooserObject>) {
|
||||
try {
|
||||
myFixture.project.executeWriteCommand("") {
|
||||
OverrideImplementMethodsHandler.generateMethods(myFixture.editor, classOrObject, selectedElements)
|
||||
OverrideImplementMembersHandler.generateMethods(myFixture.editor, classOrObject, selectedElements)
|
||||
}
|
||||
}
|
||||
catch (throwable: Throwable) {
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package org.jetbrains.kotlin.idea.codeInsight;
|
||||
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMethodsHandler;
|
||||
import org.jetbrains.kotlin.idea.core.overrideImplement.OverrideMembersHandler;
|
||||
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase;
|
||||
|
||||
public final class OverrideImplementTest extends AbstractOverrideImplementTest {
|
||||
@@ -180,11 +180,11 @@ public final class OverrideImplementTest extends AbstractOverrideImplementTest {
|
||||
}
|
||||
|
||||
public void testSameTypeName() {
|
||||
doDirectoryTest(new OverrideMethodsHandler());
|
||||
doDirectoryTest(new OverrideMembersHandler());
|
||||
}
|
||||
|
||||
public void testPropagationKJK() {
|
||||
doDirectoryTest(new OverrideMethodsHandler());
|
||||
doDirectoryTest(new OverrideMembersHandler());
|
||||
}
|
||||
|
||||
public void testMultipleSupers() {
|
||||
|
||||
Reference in New Issue
Block a user