Files
kotlin-fork/compiler/testData/ir/irText/classes/enumWithSecondaryCtor.fir.kt.txt
T
2023-05-04 14:11:19 +00:00

109 lines
1.9 KiB
Kotlin
Vendored

enum class Test0 : Enum<Test0> {
private constructor(x: Int) /* primary */ {
super/*Enum*/<Test0>()
/* <init>() */
}
val x: Int
field = x
get
ZERO = Test0()
private constructor() {
this/*Test0*/(x = 0)
}
fun values(): Array<Test0> /* Synthetic body for ENUM_VALUES */
fun valueOf(value: String): Test0 /* Synthetic body for ENUM_VALUEOF */
val entries: EnumEntries<Test0>
get(): EnumEntries<Test0> /* Synthetic body for ENUM_ENTRIES */
}
enum class Test1 : Enum<Test1> {
private constructor(x: Int) /* primary */ {
super/*Enum*/<Test1>()
/* <init>() */
}
val x: Int
field = x
get
ZERO = Test1()
ONE = Test1(x = 1)
private constructor() {
this/*Test1*/(x = 0)
}
fun values(): Array<Test1> /* Synthetic body for ENUM_VALUES */
fun valueOf(value: String): Test1 /* Synthetic body for ENUM_VALUEOF */
val entries: EnumEntries<Test1>
get(): EnumEntries<Test1> /* Synthetic body for ENUM_ENTRIES */
}
abstract enum class Test2 : Enum<Test2> {
private constructor(x: Int) /* primary */ {
super/*Enum*/<Test2>()
/* <init>() */
}
val x: Int
field = x
get
ZERO = ZERO()
private enum entry class ZERO : Test2 {
private constructor() /* primary */ {
super/*Test2*/()
/* <init>() */
}
override fun foo() {
println(message = "ZERO")
}
}
ONE = ONE()
private enum entry class ONE : Test2 {
private constructor() /* primary */ {
super/*Test2*/(x = 1)
/* <init>() */
}
override fun foo() {
println(message = "ONE")
}
}
private constructor() {
this/*Test2*/(x = 0)
}
abstract fun foo()
fun values(): Array<Test2> /* Synthetic body for ENUM_VALUES */
fun valueOf(value: String): Test2 /* Synthetic body for ENUM_VALUEOF */
val entries: EnumEntries<Test2>
get(): EnumEntries<Test2> /* Synthetic body for ENUM_ENTRIES */
}