Add type operand symbol for type operator expression

This commit is contained in:
Dmitry Petrov
2018-02-22 12:39:04 +03:00
parent e89047d2cc
commit b206bf199f
65 changed files with 442 additions and 61 deletions
@@ -109,11 +109,13 @@ FILE fqName:<root> fileName:/destructuringInLambda.kt
WHEN type=kotlin.Unit origin=null
BRANCH
if: TYPE_OP type=kotlin.Boolean origin=NOT_INSTANCEOF typeOperand=A
typeOperand: CLASS CLASS name:A modality:FINAL visibility:public flags:data
GET_VAR 'value-parameter other: Any?' type=kotlin.Any? origin=null
then: RETURN type=kotlin.Nothing from='equals(Any?): Boolean'
CONST Boolean type=kotlin.Boolean value=false
VAR IR_TEMPORARY_VARIABLE name:tmp0_other_with_cast type:A flags:val
TYPE_OP type=A origin=CAST typeOperand=A
typeOperand: CLASS CLASS name:A modality:FINAL visibility:public flags:data
GET_VAR 'value-parameter other: Any?' type=kotlin.Any? origin=null
WHEN type=kotlin.Unit origin=null
BRANCH
+1
View File
@@ -6,6 +6,7 @@ FILE fqName:<root> fileName:/localFunction.kt
FUN name:local visibility:local modality:FINAL <> () returnType:Unit flags:
BLOCK_BODY
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags:
BLOCK type=kotlin.Int origin=POSTFIX_INCR
VAR IR_TEMPORARY_VARIABLE name:tmp0 type:kotlin.Int flags:val
GET_VAR 'x: Int' type=kotlin.Int origin=POSTFIX_INCR
@@ -93,6 +93,7 @@ FILE fqName:<root> fileName:/multipleImplicitReceivers.kt
VALUE_PARAMETER name:invokeImpl index:1 type:IInvoke flags:
BLOCK_BODY
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public flags:
CALL 'with(A, A.() -> Int): Int' type=kotlin.Int origin=null
<T>: A
<R>: Int