[FIR] Support when exhaustiveness for java enum

The problem appear because for java enum its entries was represented by
FirJavaField. To fix this FirEnumEntry was used

#KT-39621 Fixed
This commit is contained in:
Ivan Kylchik
2020-07-08 19:44:01 +03:00
parent 307871a050
commit dcae6f1415
17 changed files with 247 additions and 92 deletions
@@ -1,8 +1,6 @@
public final enum class EnumMembers : R|kotlin/Enum<ft<test/EnumMembers, test/EnumMembers?>!>| {
public final static field FIRST: R|test/EnumMembers|
public final static field SECOND: R|test/EnumMembers|
public final static enum entry FIRST: R|test/EnumMembers|
public final static enum entry SECOND: R|test/EnumMembers|
public final field isFirst: R|kotlin/Boolean|
public open fun first(): R|kotlin/Boolean|
@@ -1,8 +1,6 @@
public open enum class EnumWithSpecializedEntry : R|kotlin/Enum<ft<test/EnumWithSpecializedEntry, test/EnumWithSpecializedEntry?>!>| {
public final static field E1: R|test/EnumWithSpecializedEntry|
public final static field E2: R|test/EnumWithSpecializedEntry|
public final static enum entry E1: R|test/EnumWithSpecializedEntry|
public final static enum entry E2: R|test/EnumWithSpecializedEntry|
public final static fun values(): R|kotlin/Array<test/EnumWithSpecializedEntry>| {
}
@@ -1,8 +1,6 @@
public final enum class JavaEnum : R|kotlin/Enum<ft<test/JavaEnum, test/JavaEnum?>!>| {
public final static field ENTRY: R|test/JavaEnum|
public final static field ANOTHER: R|test/JavaEnum|
public final static enum entry ENTRY: R|test/JavaEnum|
public final static enum entry ANOTHER: R|test/JavaEnum|
public final static fun values(): R|kotlin/Array<test/JavaEnum>| {
}