[FIR2IR] Generate synthetic bodies for Enum.values() and valueOf()

This commit is contained in:
Mikhail Glukhikh
2020-03-19 14:54:56 +03:00
parent 94fe79578e
commit 9836520287
24 changed files with 132 additions and 124 deletions
@@ -135,11 +135,11 @@ FILE fqName:<root> fileName:/classesWithAnnotations.kt
ENUM_CONSTRUCTOR_CALL 'public constructor <init> (name: kotlin.String, ordinal: kotlin.Int) [primary] declared in kotlin.Enum'
<E>: <root>.TestEnum
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ENUM_CLASS name:TestEnum modality:FINAL visibility:public superTypes:[kotlin.Enum<<root>.TestEnum>]'
FUN name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<<root>.TestEnum>
BLOCK_BODY
FUN name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:<root>.TestEnum
FUN ENUM_CLASS_SPECIAL_MEMBER name:values visibility:public modality:FINAL <> () returnType:kotlin.Array<<root>.TestEnum>
SYNTHETIC_BODY kind=ENUM_VALUES
FUN ENUM_CLASS_SPECIAL_MEMBER name:valueOf visibility:public modality:FINAL <> (value:kotlin.String) returnType:<root>.TestEnum
VALUE_PARAMETER name:value index:0 type:kotlin.String
BLOCK_BODY
SYNTHETIC_BODY kind=ENUM_VALUEOF
FUN FAKE_OVERRIDE name:clone visibility:protected modality:FINAL <> ($this:kotlin.Enum<E of kotlin.Enum>) returnType:kotlin.Any [fake_override]
overridden:
protected final fun clone (): kotlin.Any declared in kotlin.Enum