| 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 |