Files
kotlin-fork/compiler/testData/ir/irText/expressions/smartCastsWithDestructuring.txt
T
2018-02-28 10:35:13 +03:00

68 lines
4.4 KiB
Plaintext
Vendored

FILE fqName:<root> fileName:/smartCastsWithDestructuring.kt
CLASS INTERFACE name:I1 modality:ABSTRACT visibility:public flags:
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:I1 flags:
superClasses:
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> (other:kotlin.Any?) returnType:Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> () returnType:Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> () returnType:String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
CLASS INTERFACE name:I2 modality:ABSTRACT visibility:public flags:
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:I2 flags:
superClasses:
CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public flags:
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> (other:kotlin.Any?) returnType:Boolean flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> () returnType:Int flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
overridden:
FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> () returnType:String flags:
$this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
FUN name:component1 visibility:public modality:FINAL <> ($receiver:I1) returnType:Int flags:
$receiver: VALUE_PARAMETER name:<this> type:I1 flags:
BLOCK_BODY
RETURN type=kotlin.Nothing from='component1() on I1: Int'
CONST Int type=kotlin.Int value=1
FUN name:component2 visibility:public modality:FINAL <> ($receiver:I2) returnType:String flags:
$receiver: VALUE_PARAMETER name:<this> type:I2 flags:
BLOCK_BODY
RETURN type=kotlin.Nothing from='component2() on I2: String'
CONST String type=kotlin.String value=
FUN name:test visibility:public modality:FINAL <> (x:I1) returnType:Unit flags:
VALUE_PARAMETER name:x index:0 type:I1 flags:
BLOCK_BODY
WHEN type=kotlin.Unit origin=null
BRANCH
if: TYPE_OP type=kotlin.Boolean origin=NOT_INSTANCEOF typeOperand=I2
typeOperand: CLASS INTERFACE name:I2 modality:ABSTRACT visibility:public flags:
GET_VAR 'value-parameter x: I1' type=I1 origin=null
then: RETURN type=kotlin.Nothing from='test(I1): Unit'
GET_OBJECT 'Unit' type=kotlin.Unit
COMPOSITE type=kotlin.Unit origin=DESTRUCTURING_DECLARATION
VAR IR_TEMPORARY_VARIABLE name:tmp0_container type:I1 flags:val
GET_VAR 'value-parameter x: I1' type=I1 origin=null
VAR name:c1 type:kotlin.Int flags:val
CALL 'component1() on I1: Int' type=kotlin.Int origin=COMPONENT_N(index=1)
$receiver: GET_VAR 'tmp0_container: I1' type=I1 origin=null
VAR name:c2 type:kotlin.String flags:val
CALL 'component2() on I2: String' type=kotlin.String origin=COMPONENT_N(index=2)
$receiver: TYPE_OP type=I2 origin=IMPLICIT_CAST typeOperand=I2
typeOperand: CLASS INTERFACE name:I2 modality:ABSTRACT visibility:public flags:
GET_VAR 'tmp0_container: I1' type=I1 origin=null