Files
kotlin-fork/compiler/testData/ir/irText/expressions/forWithImplicitReceivers.txt
T
Dmitry Petrov 28b3ea27f3 Generate explicit call to 'Any()' if no superclass found.
Generate call super-constructor calls as IrDelegatedConstructorCall.
2016-10-18 09:08:57 +03:00

62 lines
3.1 KiB
Plaintext
Vendored

FILE /forWithImplicitReceivers.kt
CLASS OBJECT FiveTimes
CONSTRUCTOR private constructor FiveTimes()
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL Any
INSTANCE_INITIALIZER_CALL classDescriptor=FiveTimes
CLASS CLASS IntCell
CONSTRUCTOR public constructor IntCell(/*0*/ value: kotlin.Int)
BLOCK_BODY
DELEGATING_CONSTRUCTOR_CALL Any
SET_BACKING_FIELD value type=kotlin.Unit operator=null
GET_VAR value type=kotlin.Int operator=INITIALIZE_PROPERTY_FROM_PARAMETER
INSTANCE_INITIALIZER_CALL classDescriptor=IntCell
PROPERTY public final var value: kotlin.Int
EXPRESSION_BODY
GET_VAR value type=kotlin.Int operator=INITIALIZE_PROPERTY_FROM_PARAMETER
CLASS INTERFACE IReceiver
FUN public open operator fun FiveTimes.iterator(): IntCell
BLOCK_BODY
RETURN type=kotlin.Nothing from=iterator
CALL .<init> type=IntCell operator=null
value: CONST Int type=kotlin.Int value='5'
FUN public open operator fun IntCell.hasNext(): kotlin.Boolean
BLOCK_BODY
RETURN type=kotlin.Nothing from=hasNext
CALL .GT0 type=kotlin.Boolean operator=GT
arg0: CALL .compareTo type=kotlin.Int operator=GT
$this: CALL .<get-value> type=kotlin.Int operator=GET_PROPERTY
$this: $RECEIVER of: hasNext type=IntCell
other: CONST Int type=kotlin.Int value='0'
FUN public open operator fun IntCell.next(): kotlin.Int
BLOCK_BODY
RETURN type=kotlin.Nothing from=next
BLOCK type=kotlin.Int operator=POSTFIX_DECR
VAR val tmp0: kotlin.Int
CALL .<get-value> type=kotlin.Int operator=POSTFIX_DECR
$this: $RECEIVER of: next type=IntCell
CALL .<set-value> type=kotlin.Unit operator=POSTFIX_DECR
$this: $RECEIVER of: next type=IntCell
<set-?>: CALL .dec type=kotlin.Int operator=POSTFIX_DECR
$this: GET_VAR tmp0 type=kotlin.Int operator=null
GET_VAR tmp0 type=kotlin.Int operator=null
FUN public fun IReceiver.test(): kotlin.Unit
BLOCK_BODY
BLOCK type=kotlin.Unit operator=FOR_LOOP
VAR val tmp0_iterator: IntCell
CALL .iterator type=IntCell operator=FOR_LOOP_ITERATOR
$this: $RECEIVER of: test type=IReceiver
$receiver: GET_OBJECT FiveTimes type=FiveTimes
WHILE label=null operator=FOR_LOOP_INNER_WHILE
condition: CALL .hasNext type=kotlin.Boolean operator=FOR_LOOP_HAS_NEXT
$this: $RECEIVER of: test type=IReceiver
$receiver: GET_VAR tmp0_iterator type=IntCell operator=null
body: BLOCK type=kotlin.Unit operator=FOR_LOOP_INNER_WHILE
VAR val i: kotlin.Int
CALL .next type=kotlin.Int operator=FOR_LOOP_NEXT
$this: $RECEIVER of: test type=IReceiver
$receiver: GET_VAR tmp0_iterator type=IntCell operator=null
BLOCK type=kotlin.Unit operator=null
CALL .println type=kotlin.Unit operator=null
message: GET_VAR i type=kotlin.Int operator=null