K1/K2: add Enum.entries unconditionally and filter them out in tower

Before this commit, we added Enum.entries only in case when
LanguageFeature.EnumEntries was ON (with an exception in K1/Java case).
In this commit we add Enum.entries unconditionally, and in case
the language feature is OFF we filter them out during tower resolve.
This commit is contained in:
Mikhail Glukhikh
2022-07-27 11:22:49 +02:00
committed by Space
parent 0a5b3f1e13
commit 7333589663
97 changed files with 322 additions and 21 deletions
@@ -5,6 +5,9 @@ internal final enum class In : R|kotlin/Enum<test/In>| {
public final static fun values(): R|kotlin/Array<test/In>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/In>|
public get(): R|kotlin/enums/EnumEntries<test/In>|
private constructor(): R|test/In|
public final static enum entry A: R|test/In|
@@ -17,6 +20,9 @@ private final enum class Pr : R|kotlin/Enum<test/Pr>| {
public final static fun values(): R|kotlin/Array<test/Pr>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/Pr>|
public get(): R|kotlin/enums/EnumEntries<test/Pr>|
private constructor(): R|test/Pr|
public final static enum entry A: R|test/Pr|
@@ -29,6 +35,9 @@ public final enum class Pu : R|kotlin/Enum<test/Pu>| {
public final static fun values(): R|kotlin/Array<test/Pu>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/Pu>|
public get(): R|kotlin/enums/EnumEntries<test/Pu>|
private constructor(): R|test/Pu|
public final static enum entry A: R|test/Pu|
@@ -8,6 +8,9 @@ public final enum class En : R|kotlin/Enum<test/En>| {
public final val b: R|kotlin/Boolean|
public get(): R|kotlin/Boolean|
public final static val entries: R|kotlin/enums/EnumEntries<test/En>|
public get(): R|kotlin/enums/EnumEntries<test/En>|
public final val i: R|kotlin/Int|
public get(): R|kotlin/Int|
@@ -23,6 +23,9 @@ public final enum class Enum : R|kotlin/Enum<test/Enum>| {
public final val c: R|kotlin/Int|
public get(): R|kotlin/Int|
public final static val entries: R|kotlin/enums/EnumEntries<test/Enum>|
public get(): R|kotlin/enums/EnumEntries<test/Enum>|
private constructor(): R|test/Enum|
public final static enum entry ENTRY1: R|test/Enum|
@@ -6,6 +6,9 @@ public final class A : R|kotlin/Any| {
public final static fun values(): R|kotlin/Array<test/A.E>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/A.E>|
public get(): R|kotlin/enums/EnumEntries<test/A.E>|
private constructor(): R|test/A.E|
public final static enum entry ENTRY: R|test/A.E|
@@ -11,6 +11,9 @@ public final class A : R|kotlin/Any| {
public final static fun values(): R|kotlin/Array<test/A.E>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/A.E>|
public get(): R|kotlin/enums/EnumEntries<test/A.E>|
private constructor(): R|test/A.E|
public final static enum entry ENTRY: R|test/A.E|
@@ -5,6 +5,9 @@ public final enum class MyEnum : R|kotlin/Enum<test/MyEnum>| {
public final static fun values(): R|kotlin/Array<test/MyEnum>| {
}
public final static val entries: R|kotlin/enums/EnumEntries<test/MyEnum>|
public get(): R|kotlin/enums/EnumEntries<test/MyEnum>|
private constructor(): R|test/MyEnum|
public final static enum entry ENTRY: R|test/MyEnum|