blob: 091a1198776126e8150fb1741153a488dc925e60 [file]
FILE fqName:<root> fileName:/break.kt
PROPERTY name:sb visibility:public modality:FINAL [val]
FIELD PROPERTY_BACKING_FIELD name:sb type:java.lang.StringBuilder visibility:private [final,static]
EXPRESSION_BODY
CONSTRUCTOR_CALL 'public constructor <init> () declared in java.lang.StringBuilder' type=java.lang.StringBuilder origin=null
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-sb> visibility:public modality:FINAL returnType:java.lang.StringBuilder
correspondingProperty: PROPERTY name:sb visibility:public modality:FINAL [val]
BLOCK_BODY
RETURN type=kotlin.Nothing from='public final fun <get-sb> (): java.lang.StringBuilder declared in <root>'
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:sb type:java.lang.StringBuilder visibility:private [final,static]' type=java.lang.StringBuilder origin=null
FUN name:bar visibility:public modality:FINAL returnType:kotlin.Unit
BLOCK_BODY
VAR name:i type:kotlin.Int [var]
CONST Int type=kotlin.Int value=0
BLOCK type=kotlin.Unit origin=null
DO_WHILE label=l1 origin=DO_WHILE_LOOP
body: COMPOSITE type=kotlin.Unit origin=null
TRY type=kotlin.Unit
try: BLOCK type=kotlin.Unit origin=null
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="bar@l1"
THROW type=kotlin.Nothing
CONSTRUCTOR_CALL 'public constructor <init> () declared in java.lang.Exception' type=java.lang.Exception origin=null
CATCH parameter=val e: java.lang.Exception declared in <root>.bar
VAR CATCH_PARAMETER name:e type:java.lang.Exception [val]
BLOCK type=kotlin.Unit origin=null
BLOCK type=kotlin.Unit origin=null
DO_WHILE label=l2 origin=DO_WHILE_LOOP
body: COMPOSITE type=kotlin.Unit origin=null
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
ARG arg0: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERC
ARG <this>: BLOCK type=kotlin.Int origin=POSTFIX_INCR
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.Int [val]
GET_VAR 'var i: kotlin.Int declared in <root>.bar' type=kotlin.Int origin=POSTFIX_INCR
SET_VAR 'var i: kotlin.Int declared in <root>.bar' type=kotlin.Unit origin=POSTFIX_INCR
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
ARG <this>: GET_VAR 'val tmp_0: kotlin.Int declared in <root>.bar' type=kotlin.Int origin=null
GET_VAR 'val tmp_0: kotlin.Int declared in <root>.bar' type=kotlin.Int origin=null
ARG other: CONST Int type=kotlin.Int value=2
ARG arg1: CONST Int type=kotlin.Int value=0
then: CONTINUE label=l2 loop.label=l2
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="bar@l2"
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun greater (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=GT
ARG arg0: GET_VAR 'var i: kotlin.Int declared in <root>.bar' type=kotlin.Int origin=null
ARG arg1: CONST Int type=kotlin.Int value=4
then: BREAK label=l1 loop.label=l1
condition: CONST Boolean type=kotlin.Boolean value=true
condition: CONST Boolean type=kotlin.Boolean value=true
FUN name:box visibility:public modality:FINAL returnType:kotlin.String
BLOCK_BODY
CALL 'public final fun foo (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
CALL 'public final fun bar (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
CALL 'public final fun qux (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
CALL 'public final fun assertEquals <T> (expected: T of kotlin.test.assertEquals, actual: T of kotlin.test.assertEquals, message: kotlin.String?): kotlin.Unit declared in kotlin.test' type=kotlin.Unit origin=null
TYPE_ARG T: kotlin.String
ARG expected: CALL 'public final fun trimIndent (<this>: kotlin.String): kotlin.String declared in kotlin.text' type=kotlin.String origin=null
ARG <this>: CONST String type=kotlin.String value="\n foo@l1\n foo@l2\n foo@l2\n foo@l2\n bar@l1\n bar@l2\n bar@l2\n bar@l2\n qux@t1\n qux@l2\n qux@l2\n qux@l2\n\n "
ARG actual: TYPE_OP type=kotlin.String origin=IMPLICIT_NOTNULL typeOperand=kotlin.String
CALL 'public open fun toString (): @[EnhancedNullability] kotlin.String declared in java.lang.StringBuilder' type=@[EnhancedNullability] kotlin.String origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
CONST String type=kotlin.String value="OK"
FUN name:foo visibility:public modality:FINAL returnType:kotlin.Unit
BLOCK_BODY
VAR name:i type:kotlin.Int [var]
CONST Int type=kotlin.Int value=0
WHILE label=l1 origin=WHILE_LOOP
condition: CONST Boolean type=kotlin.Boolean value=true
body: BLOCK type=kotlin.Unit origin=null
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="foo@l1"
TRY type=kotlin.Unit
try: BLOCK type=kotlin.Unit origin=null
WHILE label=l2 origin=WHILE_LOOP
condition: CONST Boolean type=kotlin.Boolean value=true
body: BLOCK type=kotlin.Unit origin=null
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
ARG arg0: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERC
ARG <this>: BLOCK type=kotlin.Int origin=POSTFIX_INCR
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
GET_VAR 'var i: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=POSTFIX_INCR
SET_VAR 'var i: kotlin.Int declared in <root>.foo' type=kotlin.Unit origin=POSTFIX_INCR
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
ARG <this>: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=null
GET_VAR 'val tmp_1: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=null
ARG other: CONST Int type=kotlin.Int value=2
ARG arg1: CONST Int type=kotlin.Int value=0
then: CONTINUE label=l2 loop.label=l2
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="foo@l2"
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun greater (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=GT
ARG arg0: GET_VAR 'var i: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=null
ARG arg1: CONST Int type=kotlin.Int value=4
then: BREAK label=l1 loop.label=l1
finally: BLOCK type=kotlin.Unit origin=null
FUN name:qux visibility:public modality:FINAL returnType:kotlin.Unit
BLOCK_BODY
BLOCK type=kotlin.Unit origin=FOR_LOOP
VAR FOR_LOOP_ITERATOR name:tmp_2 type:kotlin.collections.IntIterator [val]
CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
ARG <this>: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
ARG <this>: CONST Int type=kotlin.Int value=1
ARG other: CONST Int type=kotlin.Int value=6
WHILE label=l1 origin=FOR_LOOP_INNER_WHILE
condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
ARG <this>: GET_VAR 'val tmp_2: kotlin.collections.IntIterator declared in <root>.qux' type=kotlin.collections.IntIterator origin=null
body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
VAR FOR_LOOP_VARIABLE name:i type:kotlin.Int [val]
CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
ARG <this>: GET_VAR 'val tmp_2: kotlin.collections.IntIterator declared in <root>.qux' type=kotlin.collections.IntIterator origin=null
BLOCK type=kotlin.Unit origin=null
TRY type=kotlin.Unit
try: BLOCK type=kotlin.Unit origin=null
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="qux@t1"
THROW type=kotlin.Nothing
CONSTRUCTOR_CALL 'public constructor <init> () declared in java.lang.Exception' type=java.lang.Exception origin=null
finally: BLOCK type=kotlin.Unit origin=null
BLOCK type=kotlin.Unit origin=FOR_LOOP
VAR FOR_LOOP_ITERATOR name:tmp_3 type:kotlin.collections.IntIterator [val]
CALL 'public open fun iterator (): kotlin.collections.IntIterator declared in kotlin.ranges.IntRange' type=kotlin.collections.IntIterator origin=FOR_LOOP_ITERATOR
ARG <this>: CALL 'public final fun rangeTo (other: kotlin.Int): kotlin.ranges.IntRange declared in kotlin.Int' type=kotlin.ranges.IntRange origin=RANGE
ARG <this>: CONST Int type=kotlin.Int value=1
ARG other: CONST Int type=kotlin.Int value=6
WHILE label=l2 origin=FOR_LOOP_INNER_WHILE
condition: CALL 'public abstract fun hasNext (): kotlin.Boolean declared in kotlin.collections.IntIterator' type=kotlin.Boolean origin=FOR_LOOP_HAS_NEXT
ARG <this>: GET_VAR 'val tmp_3: kotlin.collections.IntIterator declared in <root>.qux' type=kotlin.collections.IntIterator origin=null
body: BLOCK type=kotlin.Unit origin=FOR_LOOP_INNER_WHILE
VAR FOR_LOOP_VARIABLE name:j type:kotlin.Int [val]
CALL 'public final fun next (): kotlin.Int declared in kotlin.collections.IntIterator' type=kotlin.Int origin=FOR_LOOP_NEXT
ARG <this>: GET_VAR 'val tmp_3: kotlin.collections.IntIterator declared in <root>.qux' type=kotlin.collections.IntIterator origin=null
BLOCK type=kotlin.Unit origin=null
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EQEQ
ARG arg0: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERC
ARG <this>: GET_VAR 'val j: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
ARG other: CONST Int type=kotlin.Int value=2
ARG arg1: CONST Int type=kotlin.Int value=0
then: CONTINUE label=l2 loop.label=l2
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
CALL 'public final fun appendLine (<this>: java.lang.StringBuilder, value: kotlin.String?): java.lang.StringBuilder declared in kotlin.text' type=java.lang.StringBuilder origin=null
ARG <this>: CALL 'public final fun <get-sb> (): java.lang.StringBuilder declared in <root>' type=java.lang.StringBuilder origin=GET_PROPERTY
ARG value: CONST String type=kotlin.String value="qux@l2"
WHEN type=kotlin.Unit origin=IF
BRANCH
if: CALL 'public final fun greater (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=GT
ARG arg0: GET_VAR 'val j: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
ARG arg1: CONST Int type=kotlin.Int value=4
then: BREAK label=l1 loop.label=l1