mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-17 07:20:53 +07:00
- extracted new option - reuse this option in MissortedModifiersInspection - override uses this option too GitOrigin-RevId: 39f3f72991240753c86c7f80df865728aa9743ad
34 lines
1016 B
Java
34 lines
1016 B
Java
import org.jetbrains.annotations.NotNull;
|
|
|
|
class TooComplexCode {
|
|
static class X { @NotNull X get() { return this; }}
|
|
static class A extends X { @NotNull X get() { return new B(); }}
|
|
static class B extends X { @NotNull X get() { return new C(); }}
|
|
static class C extends X { @NotNull X get() { return new A(); }}
|
|
|
|
void tooComplex(@NotNull X x) {
|
|
if (x instanceof A) {
|
|
X y = newMethod(x);
|
|
if (y instanceof A) {
|
|
System.out.println("A A "+x+' '+y);
|
|
}
|
|
if (y instanceof B) {
|
|
System.out.println("A B "+x+' '+y);
|
|
}
|
|
}
|
|
if (x instanceof B) {
|
|
X y = newMethod(x);
|
|
if (y instanceof A) {
|
|
System.out.println("B A "+x+' '+y);
|
|
}
|
|
if (y instanceof B) {
|
|
System.out.println("B B "+x+' '+y);
|
|
}
|
|
}
|
|
}
|
|
|
|
@NotNull
|
|
private TooComplexCode.X newMethod(@NotNull X x) {
|
|
return x.get();
|
|
}
|
|
} |