mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-08 15:09:39 +07:00
There used to be a vague error message for enum constants that don't implement methods from an interface which refers to them as 'Anonymous class deriving from *Enum'. This patch makes the message clear displaying the real names of the enum constants in the error message. Signed-off-by: Nikita Eshkeev <nikita.eshkeev@jetbrains.com> GitOrigin-RevId: 700bc2b579e0c8552858ab881d9a3e4e8d81b1f8
42 lines
930 B
Java
42 lines
930 B
Java
interface MyInterface {
|
|
void method1();
|
|
}
|
|
|
|
<error descr="Class 'SampleEnum1' must either be declared abstract or implement abstract method 'method1()' in 'MyInterface'">enum SampleEnum1 implements MyInterface</error> {
|
|
ONE;
|
|
}
|
|
|
|
enum SampleEnum2 implements MyInterface {
|
|
<error descr="Enum constant 'ONE' must implement abstract method 'method1()' in 'MyInterface'">ONE</error>{};
|
|
}
|
|
|
|
enum SampleEnum3 implements MyInterface {
|
|
ONE;
|
|
|
|
@Override
|
|
public void method1() { }
|
|
}
|
|
|
|
enum SampleEnum4 implements MyInterface {
|
|
ONE {
|
|
@Override
|
|
public void method1() { }
|
|
};
|
|
}
|
|
|
|
enum SampleEnum5 implements MyInterface {
|
|
<error descr="Enum constant 'ONE' must implement abstract method 'method1()' in 'MyInterface'">ONE</error>("one") {};
|
|
|
|
SampleEnum5(final String name) {}
|
|
}
|
|
|
|
|
|
enum SampleEnum6 implements MyInterface {
|
|
ONE("one") {
|
|
@Override
|
|
public void method1() {}
|
|
};
|
|
|
|
SampleEnum6(final String name) {}
|
|
}
|