FIR2IR: add extension receiver parameters to functions

This commit is contained in:
Mikhail Glukhikh
2019-07-17 15:21:34 +03:00
parent be3fe9495c
commit 63b7fa70f9
63 changed files with 393 additions and 158 deletions
@@ -59,19 +59,22 @@ FILE fqName:<root> fileName:/forWithImplicitReceivers.kt
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
CLASS INTERFACE name:IReceiver modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IReceiver
FUN name:iterator visibility:public modality:OPEN <> ($this:<root>.IReceiver) returnType:<root>.IntCell
FUN name:iterator visibility:public modality:OPEN <> ($this:<root>.IReceiver, $receiver:<root>.FiveTimes) returnType:<root>.IntCell
$this: VALUE_PARAMETER name:<this> type:<root>.IReceiver
$receiver: VALUE_PARAMETER name:<this> type:<root>.FiveTimes
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun iterator (): <root>.IntCell declared in <root>.IReceiver'
CONSTRUCTOR_CALL 'public constructor <init> (value: kotlin.Int) [primary] declared in <root>.IntCell' type=<root>.IntCell origin=null
value: CONST Int type=kotlin.Int value=5
FUN name:hasNext visibility:public modality:OPEN <> ($this:<root>.IReceiver) returnType:kotlin.Boolean
FUN name:hasNext visibility:public modality:OPEN <> ($this:<root>.IReceiver, $receiver:<root>.IntCell) returnType:kotlin.Boolean
$this: VALUE_PARAMETER name:<this> type:<root>.IReceiver
$receiver: VALUE_PARAMETER name:<this> type:<root>.IntCell
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun hasNext (): kotlin.Boolean declared in <root>.IReceiver'
ERROR_CALL 'Comparison of arguments with different types: kotlin/Int, kotlin/Boolean' type=kotlin.Boolean
FUN name:next visibility:public modality:OPEN <> ($this:<root>.IReceiver) returnType:kotlin.Int
FUN name:next visibility:public modality:OPEN <> ($this:<root>.IReceiver, $receiver:<root>.IntCell) returnType:kotlin.Int
$this: VALUE_PARAMETER name:<this> type:<root>.IReceiver
$receiver: VALUE_PARAMETER name:<this> type:<root>.IntCell
BLOCK_BODY
RETURN type=kotlin.Nothing from='public open fun next (): kotlin.Int declared in <root>.IReceiver'
BLOCK type=kotlin.Int origin=null
@@ -94,7 +97,8 @@ FILE fqName:<root> fileName:/forWithImplicitReceivers.kt
overridden:
public open fun toString (): kotlin.String declared in kotlin.Any
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit
FUN name:test visibility:public modality:FINAL <> ($receiver:<root>.IReceiver) returnType:kotlin.Unit
$receiver: VALUE_PARAMETER name:<this> type:<root>.IReceiver
BLOCK_BODY
VAR name:<range> type:<root>.FiveTimes [val]
GET_OBJECT 'CLASS OBJECT name:FiveTimes modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.FiveTimes