KT-7651 IllegalArgumentException on attempt to rename class when it has anonymous subclasses
#KT-7651 fixed #EA-69049 fixed
This commit is contained in:
@@ -35,7 +35,7 @@ public class AutomaticInheritorRenamer(klass: JetClass, newName: String): Automa
|
|||||||
val lightClass = LightClassUtil.getPsiClass(klass)
|
val lightClass = LightClassUtil.getPsiClass(klass)
|
||||||
if (lightClass != null) {
|
if (lightClass != null) {
|
||||||
for (inheritorLightClass in ClassInheritorsSearch.search(lightClass, true).findAll()) {
|
for (inheritorLightClass in ClassInheritorsSearch.search(lightClass, true).findAll()) {
|
||||||
if (inheritorLightClass.getName() != null) {
|
if ((inheritorLightClass.unwrapped as? PsiNamedElement)?.getName() != null) {
|
||||||
myElements.add(inheritorLightClass.unwrapped as PsiNamedElement)
|
myElements.add(inheritorLightClass.unwrapped as PsiNamedElement)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,5 +5,7 @@ class JavaBar extends Bar {
|
|||||||
class Usage {
|
class Usage {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
Bar bar = null;
|
Bar bar = null;
|
||||||
|
new Bar() {
|
||||||
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,6 +11,9 @@ fun main(args: Array<String>) {
|
|||||||
val someVerySpecialBar: Bar = Bar()
|
val someVerySpecialBar: Bar = Bar()
|
||||||
val barAnother: Bar = Bar()
|
val barAnother: Bar = Bar()
|
||||||
|
|
||||||
|
val anonymous = object : Bar() {
|
||||||
|
}
|
||||||
|
|
||||||
val (bar1: Bar, bars: List<Bar>) = Pair(Bar(), listOf<Bar>())
|
val (bar1: Bar, bars: List<Bar>) = Pair(Bar(), listOf<Bar>())
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -5,5 +5,7 @@ class JavaFoo extends Foo {
|
|||||||
class Usage {
|
class Usage {
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
Foo foo = null;
|
Foo foo = null;
|
||||||
|
new Foo() {
|
||||||
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -11,6 +11,9 @@ fun main(args: Array<String>) {
|
|||||||
val someVerySpecialFoo: Foo = Foo()
|
val someVerySpecialFoo: Foo = Foo()
|
||||||
val fooAnother: Foo = Foo()
|
val fooAnother: Foo = Foo()
|
||||||
|
|
||||||
|
val anonymous = object : Foo() {
|
||||||
|
}
|
||||||
|
|
||||||
val (foo1: Foo, foos: List<Foo>) = Pair(Foo(), listOf<Foo>())
|
val (foo1: Foo, foos: List<Foo>) = Pair(Foo(), listOf<Foo>())
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user