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
@@ -56,6 +56,7 @@ public final enum class EnumSpecialized : kotlin.Enum<EnumSpecialized>, Foo<kotl
public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<EnumSpecialized>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): EnumSpecialized
public final /*synthesized*/ fun values(): kotlin.Array<EnumSpecialized>
}
@@ -19,6 +19,7 @@ public final enum class MyEnum : kotlin.Enum<MyEnum> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<MyEnum>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyEnum>
}
@@ -42,6 +43,7 @@ public final enum class MyOtherEnum : kotlin.Enum<MyOtherEnum> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<MyOtherEnum>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): MyOtherEnum
public final /*synthesized*/ fun values(): kotlin.Array<MyOtherEnum>
}
@@ -33,6 +33,7 @@ public final enum class JvmTarget : kotlin.Enum<JvmTarget> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<JvmTarget>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): JvmTarget
public final /*synthesized*/ fun values(): kotlin.Array<JvmTarget>
}
@@ -20,6 +20,7 @@ public final enum class Color : kotlin.Enum<Color> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<Color>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Color
public final /*synthesized*/ fun values(): kotlin.Array<Color>
}
@@ -20,6 +20,7 @@ public final enum class Format : kotlin.Enum<Format> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<Format>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Format
public final /*synthesized*/ fun values(): kotlin.Array<Format>
}
@@ -46,6 +46,7 @@ package test {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<test.E>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): test.E
public final /*synthesized*/ fun values(): kotlin.Array<test.E>
}
@@ -63,6 +63,7 @@ public final enum class Foo3 : kotlin.Enum<Foo3> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<Foo3>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Foo3
public final /*synthesized*/ fun values(): kotlin.Array<Foo3>
}
@@ -60,6 +60,7 @@ public final enum class Foo3 : kotlin.Enum<Foo3> {
public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
// Static members
public final /*synthesized*/ val entries: kotlin.enums.EnumEntries<Foo3>
public final /*synthesized*/ fun valueOf(/*0*/ value: kotlin.String): Foo3
public final /*synthesized*/ fun values(): kotlin.Array<Foo3>
}