Files
kotlin-fork/compiler/testData/ir/irText/expressions/chainOfSafeCalls.txt
T
Dmitry Petrov 0b647ac358 Basic class members generation.
Split testData into 'classes' and 'expressions'.
2016-10-18 09:08:32 +03:00

32 lines
1.4 KiB
Plaintext
Vendored

FILE /chainOfSafeCalls.kt
CLASS CLASS C
FUN public final fun foo(): C
BLOCK_BODY
RETURN type=kotlin.Nothing
THIS public final class C type=C
FUN public final fun bar(): C?
BLOCK_BODY
RETURN type=kotlin.Nothing
THIS public final class C type=C
FUN public fun test(/*0*/ nc: C?): C?
BLOCK_BODY
RETURN type=kotlin.Nothing
BLOCK type=C? operator=SAFE_CALL
VAR val tmp2_safe_receiver: C?
WHEN type=C? operator=SAFE_CALL
if: CALL .EQEQ type=kotlin.Boolean operator=EQEQ
arg0: GET_VAR nc type=C? operator=null
arg1: CONST Null type=kotlin.Nothing? value='null'
then: CONST Null type=kotlin.Nothing? value='null'
else: CALL .bar type=C? operator=null
$this: CALL .foo type=C operator=null
$this: GET_VAR nc type=C? operator=null
WHEN type=C? operator=SAFE_CALL
if: CALL .EQEQ type=kotlin.Boolean operator=EQEQ
arg0: GET_VAR tmp2_safe_receiver type=C? operator=null
arg1: CONST Null type=kotlin.Nothing? value='null'
then: CONST Null type=kotlin.Nothing? value='null'
else: CALL .foo type=C operator=null
$this: CALL .foo type=C operator=null
$this: GET_VAR tmp2_safe_receiver type=C? operator=null