Safe Delete: Do not replace SafeDeleteOverrideAnnotation for Java methods
#KT-23613 Fixed
This commit is contained in:
+7
-3
@@ -47,6 +47,7 @@ import org.jetbrains.kotlin.idea.refactoring.checkSuperMethods
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatClass
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatFunction
|
||||
import org.jetbrains.kotlin.idea.refactoring.withExpectedActuals
|
||||
import org.jetbrains.kotlin.idea.refactoring.isTrueJavaMethod
|
||||
import org.jetbrains.kotlin.idea.references.KtReference
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters
|
||||
@@ -160,10 +161,13 @@ class KotlinSafeDeleteProcessor : JavaSafeDeleteProcessor() {
|
||||
|
||||
is SafeDeleteOverrideAnnotation ->
|
||||
usageInfo.smartPointer.element?.let { usageElement ->
|
||||
if (usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() }) {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement)
|
||||
when {
|
||||
usageElement.isTrueJavaMethod() -> usageInfo
|
||||
usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() } -> {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement) as UsageInfo
|
||||
}
|
||||
else -> null
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
is SafeDeleteReferenceJavaDeleteUsageInfo ->
|
||||
|
||||
+7
-3
@@ -45,6 +45,7 @@ import org.jetbrains.kotlin.idea.refactoring.checkSuperMethods
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatClass
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatFunction
|
||||
import org.jetbrains.kotlin.idea.refactoring.withExpectedActuals
|
||||
import org.jetbrains.kotlin.idea.refactoring.isTrueJavaMethod
|
||||
import org.jetbrains.kotlin.idea.references.KtReference
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters
|
||||
@@ -150,10 +151,13 @@ class KotlinSafeDeleteProcessor : JavaSafeDeleteProcessor() {
|
||||
|
||||
is SafeDeleteOverrideAnnotation ->
|
||||
usageInfo.smartPointer.element?.let { usageElement ->
|
||||
if (usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() }) {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement)
|
||||
when {
|
||||
usageElement.isTrueJavaMethod() -> usageInfo
|
||||
usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() } -> {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement) as UsageInfo
|
||||
}
|
||||
else -> null
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
is SafeDeleteReferenceJavaDeleteUsageInfo ->
|
||||
|
||||
+7
-3
@@ -47,6 +47,7 @@ import org.jetbrains.kotlin.idea.refactoring.checkSuperMethods
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatClass
|
||||
import org.jetbrains.kotlin.idea.refactoring.formatFunction
|
||||
import org.jetbrains.kotlin.idea.refactoring.withExpectedActuals
|
||||
import org.jetbrains.kotlin.idea.refactoring.isTrueJavaMethod
|
||||
import org.jetbrains.kotlin.idea.references.KtReference
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions
|
||||
import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters
|
||||
@@ -161,10 +162,13 @@ class KotlinSafeDeleteProcessor : JavaSafeDeleteProcessor() {
|
||||
|
||||
is SafeDeleteOverrideAnnotation ->
|
||||
usageInfo.smartPointer.element?.let { usageElement ->
|
||||
if (usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() }) {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement)
|
||||
when {
|
||||
usageElement.isTrueJavaMethod() -> usageInfo
|
||||
usageElement.toLightMethods().all { method -> method.findSuperMethods().isEmpty() } -> {
|
||||
KotlinSafeDeleteOverrideAnnotation(usageElement, usageInfo.referencedElement) as UsageInfo
|
||||
}
|
||||
else -> null
|
||||
}
|
||||
else null
|
||||
}
|
||||
|
||||
is SafeDeleteReferenceJavaDeleteUsageInfo ->
|
||||
|
||||
Vendored
+1
-1
@@ -3,7 +3,7 @@ class B extends A {
|
||||
foo();
|
||||
}
|
||||
|
||||
public void foo() {
|
||||
private void foo() {
|
||||
|
||||
}
|
||||
}
|
||||
Vendored
-1
@@ -1,5 +1,4 @@
|
||||
class B implements A, Z {
|
||||
@Override
|
||||
public String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
|
||||
Vendored
-1
@@ -1,5 +1,4 @@
|
||||
class B implements A, Z {
|
||||
@Override
|
||||
public String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
|
||||
Vendored
+1
-1
@@ -3,7 +3,7 @@ class B extends A {
|
||||
System.out.println(getFoo());
|
||||
}
|
||||
|
||||
public String getFoo() {
|
||||
private String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
}
|
||||
Vendored
+2
-2
@@ -4,11 +4,11 @@ class B extends A {
|
||||
System.out.println(getFoo());
|
||||
}
|
||||
|
||||
public String getFoo() {
|
||||
private String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
|
||||
public void setFoo(String value) {
|
||||
private void setFoo(String value) {
|
||||
|
||||
}
|
||||
}
|
||||
-1
@@ -1,5 +1,4 @@
|
||||
class B extends A implements Z {
|
||||
@Override
|
||||
public String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
|
||||
-2
@@ -1,10 +1,8 @@
|
||||
class B extends A implements Z {
|
||||
@Override
|
||||
public String getFoo() {
|
||||
return "foo";
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFoo(String value) {
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user