[Tests] Use stable order for ir/kotlinLike dumps
^KT-65406
This commit is contained in:
committed by
Space Team
parent
0fa42a9c11
commit
e6f4d6e6fa
@@ -1,17 +1,23 @@
|
||||
FILE fqName:test fileName:/test.kt
|
||||
FUN name:eval visibility:public modality:FINAL <T> (f:kotlin.Function0<T of test.eval>) returnType:T of test.eval
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<T of test.eval>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun eval <T> (f: kotlin.Function0<T of test.eval>): T of test.eval declared in test'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=T of test.eval origin=INVOKE
|
||||
$this: GET_VAR 'f: kotlin.Function0<T of test.eval> declared in test.eval' type=kotlin.Function0<T of test.eval> origin=VARIABLE_AS_FUNCTION
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.A.B]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.C
|
||||
CONSTRUCTOR visibility:public <> () returnType:test.C [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A.B'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.A.B]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:f visibility:public modality:FINAL <> ($this:test.C) returnType:@[FlexibleNullability] kotlin.String?
|
||||
$this: VALUE_PARAMETER name:<this> type:test.C
|
||||
BLOCK_BODY
|
||||
@@ -36,16 +42,10 @@ FILE fqName:test fileName:/test.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): @[FlexibleNullability] kotlin.String? declared in test.C.g'
|
||||
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:y type:@[FlexibleNullability] kotlin.String? visibility:protected/*protected and package*/' type=@[FlexibleNullability] kotlin.String? origin=null
|
||||
receiver: GET_VAR '<this>: test.C declared in test.C.g' type=test.C origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:eval visibility:public modality:FINAL <T> (f:kotlin.Function0<T of test.eval>) returnType:T of test.eval
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<T of test.eval>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun eval <T> (f: kotlin.Function0<T of test.eval>): T of test.eval declared in test'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=T of test.eval origin=INVOKE
|
||||
$this: GET_VAR 'f: kotlin.Function0<T of test.eval> declared in test.eval' type=kotlin.Function0<T of test.eval> origin=VARIABLE_AS_FUNCTION
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
package test
|
||||
|
||||
fun <T : Any?> eval(f: Function0<T>): T {
|
||||
return f.invoke()
|
||||
}
|
||||
|
||||
class C : B {
|
||||
constructor() /* primary */ {
|
||||
super/*B*/()
|
||||
@@ -27,3 +23,7 @@ class C : B {
|
||||
|
||||
}
|
||||
|
||||
fun <T : Any?> eval(f: Function0<T>): T {
|
||||
return f.invoke()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,17 +1,23 @@
|
||||
FILE fqName:test fileName:/test.kt
|
||||
FUN name:eval visibility:public modality:FINAL <T> (f:kotlin.Function0<T of test.eval>) returnType:T of test.eval
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<T of test.eval>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun eval <T> (f: kotlin.Function0<T of test.eval>): T of test.eval declared in test'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=T of test.eval origin=INVOKE
|
||||
$this: GET_VAR 'f: kotlin.Function0<T of test.eval> declared in test.eval' type=kotlin.Function0<T of test.eval> origin=VARIABLE_AS_FUNCTION
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.A.B]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.C
|
||||
CONSTRUCTOR visibility:public <> () returnType:test.C [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A.B'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.A.B]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:f visibility:public modality:FINAL <> ($this:test.C) returnType:@[FlexibleNullability] kotlin.String?
|
||||
$this: VALUE_PARAMETER name:<this> type:test.C
|
||||
BLOCK_BODY
|
||||
@@ -36,22 +42,16 @@ FILE fqName:test fileName:/test.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): @[FlexibleNullability] kotlin.String? declared in test.C.g'
|
||||
GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:y type:@[FlexibleNullability] kotlin.String? visibility:protected/*protected and package*/' type=@[FlexibleNullability] kotlin.String? origin=null
|
||||
receiver: GET_VAR '<this>: test.C declared in test.C.g' type=test.C origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.A.B
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY FAKE_OVERRIDE name:y visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
|
||||
overridden:
|
||||
protected/*protected and package*/ final y: @[FlexibleNullability] kotlin.String?
|
||||
PROPERTY FAKE_OVERRIDE name:x visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
|
||||
overridden:
|
||||
protected/*protected and package*/ final x: @[FlexibleNullability] kotlin.String?
|
||||
PROPERTY FAKE_OVERRIDE name:y visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
|
||||
overridden:
|
||||
protected/*protected and package*/ final y: @[FlexibleNullability] kotlin.String?
|
||||
FUN name:eval visibility:public modality:FINAL <T> (f:kotlin.Function0<T of test.eval>) returnType:T of test.eval
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<T of test.eval>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun eval <T> (f: kotlin.Function0<T of test.eval>): T of test.eval declared in test'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=T of test.eval origin=INVOKE
|
||||
$this: GET_VAR 'f: kotlin.Function0<T of test.eval> declared in test.eval' type=kotlin.Function0<T of test.eval> origin=VARIABLE_AS_FUNCTION
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
package test
|
||||
|
||||
fun <T : Any?> eval(f: Function0<T>): T {
|
||||
return f.invoke()
|
||||
}
|
||||
|
||||
class C : B {
|
||||
constructor() /* primary */ {
|
||||
super/*B*/()
|
||||
@@ -27,3 +23,7 @@ class C : B {
|
||||
|
||||
}
|
||||
|
||||
fun <T : Any?> eval(f: Function0<T>): T {
|
||||
return f.invoke()
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
FILE fqName:<root> fileName:/arrayAssignment.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.IntArray [val]
|
||||
@@ -11,10 +15,6 @@ FILE fqName:<root> fileName:/arrayAssignment.kt
|
||||
$this: GET_VAR 'val x: kotlin.IntArray declared in <root>.test' type=kotlin.IntArray origin=null
|
||||
index: CONST Int type=kotlin.Int value=1
|
||||
value: CONST Int type=kotlin.Int value=0
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=null
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
fun foo(): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val x: IntArray = intArrayOf(elements = [1, 2, 3])
|
||||
x.set(index = 1, value = 0)
|
||||
}
|
||||
|
||||
fun foo(): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
intArrayOf(elements = [1, 2, 3]).set(index = foo(), value = 1)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,8 @@
|
||||
FILE fqName:<root> fileName:/arrayAssignment.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.IntArray [val]
|
||||
@@ -11,10 +15,6 @@ FILE fqName:<root> fileName:/arrayAssignment.kt
|
||||
$this: GET_VAR 'val x: kotlin.IntArray declared in <root>.test' type=kotlin.IntArray origin=null
|
||||
index: CONST Int type=kotlin.Int value=1
|
||||
value: CONST Int type=kotlin.Int value=0
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=EQ
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
fun foo(): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
fun test() {
|
||||
val x: IntArray = intArrayOf(elements = [1, 2, 3])
|
||||
x.set(index = 1, value = 0)
|
||||
}
|
||||
|
||||
fun foo(): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
intArrayOf(elements = [1, 2, 3]).set(index = foo(), value = 1)
|
||||
}
|
||||
|
||||
|
||||
+57
-57
@@ -1,23 +1,6 @@
|
||||
FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.IntArray declared in <root>'
|
||||
CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
|
||||
elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CONST Int type=kotlin.Int value=2
|
||||
CONST Int type=kotlin.Int value=3
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.IntArray) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.IntArray visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -29,6 +12,11 @@ FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.IntArray declared in <root>.C'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.IntArray visibility:private [final]' type=kotlin.IntArray origin=null
|
||||
receiver: GET_VAR '<this>: <root>.C declared in <root>.C.<get-x>' type=<root>.C origin=null
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.IntArray) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -42,54 +30,66 @@ FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.IntArray declared in <root>'
|
||||
CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
|
||||
elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CONST Int type=kotlin.Int value=2
|
||||
CONST Int type=kotlin.Int value=3
|
||||
FUN name:testCall visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=MULTEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
|
||||
CALL 'public final fun bar (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MULTEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
FUN name:testMember visibility:public modality:FINAL <> (c:<root>.C) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:c index:0 type:<root>.C
|
||||
BLOCK_BODY
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun <get-x> (): kotlin.IntArray declared in <root>.C' type=kotlin.IntArray origin=GET_PROPERTY
|
||||
$this: GET_VAR 'c: <root>.C declared in <root>.testMember' type=<root>.C origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.Int [val]
|
||||
CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
GET_VAR 'val tmp_4: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.IntArray [var]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.IntArray [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:kotlin.IntArray [val]
|
||||
GET_VAR 'var x: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_5: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_5: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
FUN name:testCall visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=MULTEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
CALL 'public final fun bar (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MULTEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
FUN name:testMember visibility:public modality:FINAL <> (c:<root>.C) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:c index:0 type:<root>.C
|
||||
BLOCK_BODY
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun <get-x> (): kotlin.IntArray declared in <root>.C' type=kotlin.IntArray origin=GET_PROPERTY
|
||||
$this: GET_VAR 'c: <root>.C declared in <root>.testMember' type=<root>.C origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:kotlin.Int [val]
|
||||
CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_5: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_5: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
|
||||
+30
-29
@@ -1,45 +1,46 @@
|
||||
fun foo(): IntArray {
|
||||
return intArrayOf(elements = [1, 2, 3])
|
||||
}
|
||||
|
||||
fun bar(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
class C {
|
||||
val x: IntArray
|
||||
field = x
|
||||
get
|
||||
|
||||
constructor(x: IntArray) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val x: IntArray
|
||||
field = x
|
||||
get
|
||||
}
|
||||
|
||||
fun bar(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
fun foo(): IntArray {
|
||||
return intArrayOf(elements = [1, 2, 3])
|
||||
}
|
||||
|
||||
fun testCall() {
|
||||
{ // BLOCK
|
||||
val tmp_0: IntArray = foo()
|
||||
val tmp_1: Int = bar()
|
||||
tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).times(other = 2))
|
||||
}
|
||||
}
|
||||
|
||||
fun testMember(c: C) {
|
||||
val tmp_2: IntArray = c.<get-x>()
|
||||
val tmp_3: Int = 0
|
||||
val tmp_4: Int = tmp_2.get(index = tmp_3)
|
||||
tmp_2.set(index = tmp_3, value = tmp_4.inc())
|
||||
tmp_4 /*~> Unit */
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
var x: IntArray = foo()
|
||||
{ // BLOCK
|
||||
val tmp_0: IntArray = x
|
||||
val tmp_1: Int = 0
|
||||
tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).plus(other = 1))
|
||||
val tmp_5: IntArray = x
|
||||
val tmp_6: Int = 0
|
||||
tmp_5.set(index = tmp_6, value = tmp_5.get(index = tmp_6).plus(other = 1))
|
||||
}
|
||||
}
|
||||
|
||||
fun testCall() {
|
||||
{ // BLOCK
|
||||
val tmp_2: IntArray = foo()
|
||||
val tmp_3: Int = bar()
|
||||
tmp_2.set(index = tmp_3, value = tmp_2.get(index = tmp_3).times(other = 2))
|
||||
}
|
||||
}
|
||||
|
||||
fun testMember(c: C) {
|
||||
val tmp_4: IntArray = c.<get-x>()
|
||||
val tmp_5: Int = 0
|
||||
val tmp_6: Int = tmp_4.get(index = tmp_5)
|
||||
tmp_4.set(index = tmp_5, value = tmp_6.inc())
|
||||
tmp_6 /*~> Unit */
|
||||
}
|
||||
|
||||
@@ -1,23 +1,6 @@
|
||||
FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.IntArray declared in <root>'
|
||||
CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
|
||||
elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CONST Int type=kotlin.Int value=2
|
||||
CONST Int type=kotlin.Int value=3
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.IntArray) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.IntArray visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -29,6 +12,11 @@ FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.IntArray declared in <root>.C'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.IntArray visibility:private [final]' type=kotlin.IntArray origin=null
|
||||
receiver: GET_VAR '<this>: <root>.C declared in <root>.C.<get-x>' type=<root>.C origin=null
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.IntArray) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -42,55 +30,67 @@ FILE fqName:<root> fileName:/arrayAugmentedAssignment1.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.IntArray [var]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.IntArray [val]
|
||||
GET_VAR 'var x: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:kotlin.IntArray
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.IntArray declared in <root>'
|
||||
CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
|
||||
elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CONST Int type=kotlin.Int value=2
|
||||
CONST Int type=kotlin.Int value=3
|
||||
FUN name:testCall visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=MULTEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.IntArray [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
|
||||
CALL 'public final fun bar (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MULTEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=MULTEQ
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.testCall' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.testCall' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
FUN name:testMember visibility:public modality:FINAL <> (c:<root>.C) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:c index:0 type:<root>.C
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.IntArray [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.IntArray [val]
|
||||
CALL 'public final fun <get-x> (): kotlin.IntArray declared in <root>.C' type=kotlin.IntArray origin=GET_PROPERTY
|
||||
$this: GET_VAR 'c: <root>.C declared in <root>.testMember' type=<root>.C origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.Int [val]
|
||||
CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_5: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_5: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_2: kotlin.IntArray declared in <root>.testMember' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_4: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_4: kotlin.Int declared in <root>.testMember' type=kotlin.Int origin=null
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.IntArray [var]
|
||||
CALL 'public final fun foo (): kotlin.IntArray declared in <root>' type=kotlin.IntArray origin=null
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:kotlin.IntArray [val]
|
||||
GET_VAR 'var x: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:kotlin.Int [val]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_5: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_5: kotlin.IntArray declared in <root>.testVariable' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
|
||||
@@ -1,47 +1,48 @@
|
||||
fun foo(): IntArray {
|
||||
return intArrayOf(elements = [1, 2, 3])
|
||||
}
|
||||
|
||||
fun bar(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
class C {
|
||||
val x: IntArray
|
||||
field = x
|
||||
get
|
||||
|
||||
constructor(x: IntArray) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val x: IntArray
|
||||
field = x
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
var x: IntArray = foo()
|
||||
{ // BLOCK
|
||||
val tmp_0: IntArray = x
|
||||
val tmp_1: Int = 0
|
||||
tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).plus(other = 1))
|
||||
}
|
||||
fun bar(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
fun foo(): IntArray {
|
||||
return intArrayOf(elements = [1, 2, 3])
|
||||
}
|
||||
|
||||
fun testCall() {
|
||||
{ // BLOCK
|
||||
val tmp_2: IntArray = foo()
|
||||
val tmp_3: Int = bar()
|
||||
tmp_2.set(index = tmp_3, value = tmp_2.get(index = tmp_3).times(other = 2))
|
||||
val tmp_0: IntArray = foo()
|
||||
val tmp_1: Int = bar()
|
||||
tmp_0.set(index = tmp_1, value = tmp_0.get(index = tmp_1).times(other = 2))
|
||||
}
|
||||
}
|
||||
|
||||
fun testMember(c: C) {
|
||||
{ // BLOCK
|
||||
val tmp_4: IntArray = c.<get-x>()
|
||||
val tmp_5: Int = 0
|
||||
val tmp_6: Int = tmp_4.get(index = tmp_5)
|
||||
tmp_4.set(index = tmp_5, value = tmp_6.inc())
|
||||
tmp_6
|
||||
val tmp_2: IntArray = c.<get-x>()
|
||||
val tmp_3: Int = 0
|
||||
val tmp_4: Int = tmp_2.get(index = tmp_3)
|
||||
tmp_2.set(index = tmp_3, value = tmp_4.inc())
|
||||
tmp_4
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
var x: IntArray = foo()
|
||||
{ // BLOCK
|
||||
val tmp_5: IntArray = x
|
||||
val tmp_6: Int = 0
|
||||
tmp_5.set(index = tmp_6, value = tmp_5.get(index = tmp_6).plus(other = 1))
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
FILE fqName:<root> fileName:/arrayAugmentedAssignment2.kt
|
||||
CLASS INTERFACE name:IA modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IA
|
||||
FUN name:get visibility:public modality:ABSTRACT <> ($this:<root>.IA, index:kotlin.String) returnType:kotlin.Int [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IA
|
||||
VALUE_PARAMETER name:index index:0 type:kotlin.String
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -17,26 +14,29 @@ FILE fqName:<root> fileName:/arrayAugmentedAssignment2.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:get visibility:public modality:ABSTRACT <> ($this:<root>.IA, index:kotlin.String) returnType:kotlin.Int [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IA
|
||||
VALUE_PARAMETER name:index index:0 type:kotlin.String
|
||||
CLASS INTERFACE name:IB modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IB
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:set visibility:public modality:ABSTRACT <> ($this:<root>.IB, $receiver:<root>.IA, index:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IB
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.IA
|
||||
VALUE_PARAMETER name:index index:0 type:kotlin.String
|
||||
VALUE_PARAMETER name:value index:1 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
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 <> ($receiver:<root>.IB, a:<root>.IA) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.IB
|
||||
VALUE_PARAMETER name:a index:0 type:<root>.IA
|
||||
|
||||
@@ -1,11 +1,6 @@
|
||||
FILE fqName:<root> fileName:/assignments.kt
|
||||
CLASS CLASS name:Ref modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Ref
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.Int) returnType:<root>.Ref [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Ref modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -25,6 +20,11 @@ FILE fqName:<root> fileName:/assignments.kt
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.Ref declared in <root>.Ref.<set-x>' type=<root>.Ref origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.Ref.<set-x>' type=kotlin.Int origin=null
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.Int) returnType:<root>.Ref [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Ref modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
class Ref {
|
||||
var x: Int
|
||||
field = x
|
||||
get
|
||||
set
|
||||
|
||||
constructor(x: Int) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x: Int
|
||||
field = x
|
||||
get
|
||||
set
|
||||
|
||||
}
|
||||
|
||||
fun test1() {
|
||||
@@ -21,3 +21,4 @@ fun test1() {
|
||||
fun test2(r: Ref) {
|
||||
r.<set-x>(<set-?> = 0)
|
||||
}
|
||||
|
||||
|
||||
@@ -14,6 +14,28 @@ FILE fqName:<root> fileName:/augmentedAssignment1.kt
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:kotlin.Int visibility:private [static]' type=kotlin.Unit origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.<set-p>' type=kotlin.Int origin=null
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun minus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=3
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun div (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=4
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.Int [var]
|
||||
@@ -38,25 +60,3 @@ FILE fqName:<root> fileName:/augmentedAssignment1.kt
|
||||
CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=null
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun minus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=3
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun div (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=4
|
||||
CALL 'public final fun <set-p> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=EQ
|
||||
<set-?>: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=GET_PROPERTY
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
|
||||
@@ -3,6 +3,14 @@ var p: Int
|
||||
get
|
||||
set
|
||||
|
||||
fun testProperty() {
|
||||
<set-p>(<set-?> = <get-p>().plus(other = 1))
|
||||
<set-p>(<set-?> = <get-p>().minus(other = 2))
|
||||
<set-p>(<set-?> = <get-p>().times(other = 3))
|
||||
<set-p>(<set-?> = <get-p>().div(other = 4))
|
||||
<set-p>(<set-?> = <get-p>().rem(other = 5))
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
var x: Int = 0
|
||||
x = x.plus(other = 1)
|
||||
@@ -12,10 +20,3 @@ fun testVariable() {
|
||||
x = x.rem(other = 5)
|
||||
}
|
||||
|
||||
fun testProperty() {
|
||||
<set-p>(<set-?> = <get-p>().plus(other = 1))
|
||||
<set-p>(<set-?> = <get-p>().minus(other = 2))
|
||||
<set-p>(<set-?> = <get-p>().times(other = 3))
|
||||
<set-p>(<set-?> = <get-p>().div(other = 4))
|
||||
<set-p>(<set-?> = <get-p>().rem(other = 5))
|
||||
}
|
||||
|
||||
@@ -14,30 +14,6 @@ FILE fqName:<root> fileName:/augmentedAssignment1.kt
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:kotlin.Int visibility:private [static]' type=kotlin.Unit origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.<set-p>' type=kotlin.Int origin=null
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=PLUSEQ
|
||||
CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=PLUSEQ
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=MINUSEQ
|
||||
CALL 'public final fun minus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MINUSEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=MINUSEQ
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=MULTEQ
|
||||
CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MULTEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=MULTEQ
|
||||
other: CONST Int type=kotlin.Int value=3
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=DIVEQ
|
||||
CALL 'public final fun div (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=DIVEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=DIVEQ
|
||||
other: CONST Int type=kotlin.Int value=4
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=PERCEQ
|
||||
CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERCEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=PERCEQ
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
@@ -65,3 +41,27 @@ FILE fqName:<root> fileName:/augmentedAssignment1.kt
|
||||
<set-?>: CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERCEQ
|
||||
$this: CALL 'public final fun <get-p> (): kotlin.Int declared in <root>' type=kotlin.Int origin=PERCEQ
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:x type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=PLUSEQ
|
||||
CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=PLUSEQ
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=MINUSEQ
|
||||
CALL 'public final fun minus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MINUSEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=MINUSEQ
|
||||
other: CONST Int type=kotlin.Int value=2
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=MULTEQ
|
||||
CALL 'public final fun times (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=MULTEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=MULTEQ
|
||||
other: CONST Int type=kotlin.Int value=3
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=DIVEQ
|
||||
CALL 'public final fun div (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=DIVEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=DIVEQ
|
||||
other: CONST Int type=kotlin.Int value=4
|
||||
SET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Unit origin=PERCEQ
|
||||
CALL 'public final fun rem (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PERCEQ
|
||||
$this: GET_VAR 'var x: kotlin.Int declared in <root>.testVariable' type=kotlin.Int origin=PERCEQ
|
||||
other: CONST Int type=kotlin.Int value=5
|
||||
|
||||
@@ -3,15 +3,6 @@ var p: Int
|
||||
get
|
||||
set
|
||||
|
||||
fun testVariable() {
|
||||
var x: Int = 0
|
||||
x = x.plus(other = 1)
|
||||
x = x.minus(other = 2)
|
||||
x = x.times(other = 3)
|
||||
x = x.div(other = 4)
|
||||
x = x.rem(other = 5)
|
||||
}
|
||||
|
||||
fun testProperty() {
|
||||
{ // BLOCK
|
||||
<set-p>(<set-?> = <get-p>().plus(other = 1))
|
||||
@@ -29,3 +20,13 @@ fun testProperty() {
|
||||
<set-p>(<set-?> = <get-p>().rem(other = 5))
|
||||
}
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
var x: Int = 0
|
||||
x = x.plus(other = 1)
|
||||
x = x.minus(other = 2)
|
||||
x = x.times(other = 3)
|
||||
x = x.div(other = 4)
|
||||
x = x.rem(other = 5)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,13 @@
|
||||
FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-p> visibility:public modality:FINAL <> () returnType:<root>.A
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> (): <root>.A declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]' type=<root>.A origin=null
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
|
||||
@@ -18,7 +27,7 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
FUN name:divAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
@@ -26,11 +35,7 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:timesAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:divAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
@@ -38,15 +43,23 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-p> visibility:public modality:FINAL <> () returnType:<root>.A
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> (): <root>.A declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]' type=<root>.A origin=null
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PLUSEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="+="
|
||||
CALL 'public final fun minusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MINUSEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="-="
|
||||
CALL 'public final fun timesAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MULTEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
CALL 'public final fun divAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=DIVEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="/="
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="%="
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:a type:<root>.A [val]
|
||||
@@ -66,20 +79,7 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=null
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:timesAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PLUSEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="+="
|
||||
CALL 'public final fun minusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MINUSEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="-="
|
||||
CALL 'public final fun timesAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MULTEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
CALL 'public final fun divAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=DIVEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="/="
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=GET_PROPERTY
|
||||
s: CONST String type=kotlin.String value="%="
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
val p: A
|
||||
field = A()
|
||||
get
|
||||
|
||||
class A {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -7,24 +11,25 @@ class A {
|
||||
|
||||
}
|
||||
|
||||
operator fun A.plusAssign(s: String) {
|
||||
operator fun A.divAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.minusAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.timesAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.divAssign(s: String) {
|
||||
operator fun A.plusAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.remAssign(s: String) {
|
||||
}
|
||||
|
||||
val p: A
|
||||
field = A()
|
||||
get
|
||||
fun testProperty() {
|
||||
<get-p>().plusAssign(s = "+=")
|
||||
<get-p>().minusAssign(s = "-=")
|
||||
<get-p>().timesAssign(s = "*=")
|
||||
<get-p>().divAssign(s = "/=")
|
||||
<get-p>().remAssign(s = "%=")
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
val a: A = A()
|
||||
@@ -35,10 +40,6 @@ fun testVariable() {
|
||||
a.remAssign(s = "*=")
|
||||
}
|
||||
|
||||
fun testProperty() {
|
||||
<get-p>().plusAssign(s = "+=")
|
||||
<get-p>().minusAssign(s = "-=")
|
||||
<get-p>().timesAssign(s = "*=")
|
||||
<get-p>().divAssign(s = "/=")
|
||||
<get-p>().remAssign(s = "%=")
|
||||
operator fun A.timesAssign(s: String) {
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,13 @@
|
||||
FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-p> visibility:public modality:FINAL <> () returnType:<root>.A
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> (): <root>.A declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]' type=<root>.A origin=null
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
|
||||
@@ -18,7 +27,7 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
FUN name:divAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
@@ -26,11 +35,7 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:timesAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:divAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
@@ -38,34 +43,6 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-p> visibility:public modality:FINAL <> () returnType:<root>.A
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> (): <root>.A declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:p type:<root>.A visibility:private [final,static]' type=<root>.A origin=null
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:a type:<root>.A [val]
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
CALL 'public final fun plusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PLUSEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=PLUSEQ
|
||||
s: CONST String type=kotlin.String value="+="
|
||||
CALL 'public final fun minusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MINUSEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=MINUSEQ
|
||||
s: CONST String type=kotlin.String value="-="
|
||||
CALL 'public final fun timesAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MULTEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=MULTEQ
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
CALL 'public final fun divAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=DIVEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=DIVEQ
|
||||
s: CONST String type=kotlin.String value="/="
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=PERCEQ
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
FUN name:testProperty visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
@@ -88,3 +65,26 @@ FILE fqName:<root> fileName:/augmentedAssignment2.kt
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: CALL 'public final fun <get-p> (): <root>.A declared in <root>' type=<root>.A origin=PERCEQ
|
||||
s: CONST String type=kotlin.String value="%="
|
||||
FUN name:testVariable visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:a type:<root>.A [val]
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A' type=<root>.A origin=null
|
||||
CALL 'public final fun plusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PLUSEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=PLUSEQ
|
||||
s: CONST String type=kotlin.String value="+="
|
||||
CALL 'public final fun minusAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MINUSEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=MINUSEQ
|
||||
s: CONST String type=kotlin.String value="-="
|
||||
CALL 'public final fun timesAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=MULTEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=MULTEQ
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
CALL 'public final fun divAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=DIVEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=DIVEQ
|
||||
s: CONST String type=kotlin.String value="/="
|
||||
CALL 'public final fun remAssign (s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=PERCEQ
|
||||
$receiver: GET_VAR 'val a: <root>.A declared in <root>.testVariable' type=<root>.A origin=PERCEQ
|
||||
s: CONST String type=kotlin.String value="*="
|
||||
FUN name:timesAssign visibility:public modality:FINAL <> ($receiver:<root>.A, s:kotlin.String) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
val p: A
|
||||
field = A()
|
||||
get
|
||||
|
||||
class A {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -7,34 +11,18 @@ class A {
|
||||
|
||||
}
|
||||
|
||||
operator fun A.plusAssign(s: String) {
|
||||
operator fun A.divAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.minusAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.timesAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.divAssign(s: String) {
|
||||
operator fun A.plusAssign(s: String) {
|
||||
}
|
||||
|
||||
operator fun A.remAssign(s: String) {
|
||||
}
|
||||
|
||||
val p: A
|
||||
field = A()
|
||||
get
|
||||
|
||||
fun testVariable() {
|
||||
val a: A = A()
|
||||
a.plusAssign(s = "+=")
|
||||
a.minusAssign(s = "-=")
|
||||
a.timesAssign(s = "*=")
|
||||
a.divAssign(s = "/=")
|
||||
a.remAssign(s = "*=")
|
||||
}
|
||||
|
||||
fun testProperty() {
|
||||
{ // BLOCK
|
||||
<get-p>().plusAssign(s = "+=")
|
||||
@@ -52,3 +40,16 @@ fun testProperty() {
|
||||
<get-p>().remAssign(s = "%=")
|
||||
}
|
||||
}
|
||||
|
||||
fun testVariable() {
|
||||
val a: A = A()
|
||||
a.plusAssign(s = "+=")
|
||||
a.minusAssign(s = "-=")
|
||||
a.timesAssign(s = "*=")
|
||||
a.divAssign(s = "/=")
|
||||
a.remAssign(s = "*=")
|
||||
}
|
||||
|
||||
operator fun A.timesAssign(s: String) {
|
||||
}
|
||||
|
||||
|
||||
+10
-10
@@ -5,16 +5,6 @@ FILE fqName:<root> fileName:/augmentedAssignmentWithExpression.kt
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:test1 visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit declared in <root>.Host' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR '<this>: <root>.Host declared in <root>.Host.test1' type=<root>.Host origin=null
|
||||
x: CONST Int type=kotlin.Int value=1
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -28,6 +18,16 @@ FILE fqName:<root> fileName:/augmentedAssignmentWithExpression.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:test1 visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit declared in <root>.Host' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR '<this>: <root>.Host declared in <root>.Host.test1' type=<root>.Host origin=null
|
||||
x: CONST Int type=kotlin.Int value=1
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:<root>.Host
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): <root>.Host declared in <root>'
|
||||
|
||||
+10
-10
@@ -5,16 +5,6 @@ FILE fqName:<root> fileName:/augmentedAssignmentWithExpression.kt
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:test1 visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit declared in <root>.Host' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR '<this>: <root>.Host declared in <root>.Host.test1' type=<root>.Host origin=PLUSEQ
|
||||
x: CONST Int type=kotlin.Int value=1
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -28,6 +18,16 @@ FILE fqName:<root> fileName:/augmentedAssignmentWithExpression.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:test1 visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun plusAssign (x: kotlin.Int): kotlin.Unit declared in <root>.Host' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR '<this>: <root>.Host declared in <root>.Host.test1' type=<root>.Host origin=PLUSEQ
|
||||
x: CONST Int type=kotlin.Int value=1
|
||||
FUN name:foo visibility:public modality:FINAL <> () returnType:<root>.Host
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): <root>.Host declared in <root>'
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
FILE fqName:<root> fileName:/badInlinedBreakContinue.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> (block:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.foo' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:bar visibility:public modality:FINAL <> (block1:kotlin.Function0<kotlin.Unit>, block2:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block1 index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
VALUE_PARAMETER name:block2 index:1 type:kotlin.Function0<kotlin.Unit> [noinline]
|
||||
@@ -17,6 +12,11 @@ FILE fqName:<root> fileName:/badInlinedBreakContinue.kt
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.baz' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:foo visibility:public modality:FINAL <> (block:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.foo' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:myForEach visibility:public modality:FINAL <T> ($receiver:kotlin.collections.Iterable<T of <root>.myForEach>, action:kotlin.Function1<T of <root>.myForEach, kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.Iterable<T of <root>.myForEach>
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
inline fun foo(block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun bar(block1: Function0<Unit>, noinline block2: Function0<Unit>) {
|
||||
block1.invoke()
|
||||
block2.invoke()
|
||||
@@ -11,6 +7,10 @@ inline fun baz(crossinline block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun foo(block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun <T : Any?> Iterable<T>.myForEach(action: Function1<T, Unit>) {
|
||||
{ // BLOCK
|
||||
val tmp_0: Iterator<T> = <this>.iterator()
|
||||
@@ -241,3 +241,4 @@ fun test8() {
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,4 @@
|
||||
FILE fqName:<root> fileName:/badInlinedBreakContinue.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> (block:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.foo' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:bar visibility:public modality:FINAL <> (block1:kotlin.Function0<kotlin.Unit>, block2:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block1 index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
VALUE_PARAMETER name:block2 index:1 type:kotlin.Function0<kotlin.Unit> [noinline]
|
||||
@@ -17,6 +12,11 @@ FILE fqName:<root> fileName:/badInlinedBreakContinue.kt
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.baz' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:foo visibility:public modality:FINAL <> (block:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
VALUE_PARAMETER name:block index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'block: kotlin.Function0<kotlin.Unit> declared in <root>.foo' type=kotlin.Function0<kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:myForEach visibility:public modality:FINAL <T> ($receiver:kotlin.collections.Iterable<T of <root>.myForEach>, action:kotlin.Function1<T of <root>.myForEach, kotlin.Unit>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.Iterable<T of <root>.myForEach>
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
inline fun foo(block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun bar(block1: Function0<Unit>, noinline block2: Function0<Unit>) {
|
||||
block1.invoke()
|
||||
block2.invoke()
|
||||
@@ -11,6 +7,10 @@ inline fun baz(crossinline block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun foo(block: Function0<Unit>) {
|
||||
block.invoke()
|
||||
}
|
||||
|
||||
inline fun <T : Any?> Iterable<T>.myForEach(action: Function1<T, Unit>) {
|
||||
{ // BLOCK
|
||||
val tmp_0: Iterator<T> = <this>.iterator()
|
||||
|
||||
@@ -33,9 +33,6 @@ FILE fqName:<root> fileName:/bangbang.kt
|
||||
CALL 'public final fun CHECK_NOT_NULL <T0> (arg0: T0 of kotlin.internal.ir.CHECK_NOT_NULL?): {T0 of kotlin.internal.ir.CHECK_NOT_NULL & Any} declared in kotlin.internal.ir' type={X of <root>.test3 & Any} origin=EXCLEXCL
|
||||
<T0>: {X of <root>.test3 & Any}
|
||||
arg0: GET_VAR 'a: X of <root>.test3 declared in <root>.test3' type=X of <root>.test3 origin=null
|
||||
FUN name:useString visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:test4 visibility:public modality:FINAL <X> (a:X of <root>.test4) returnType:kotlin.Unit
|
||||
TYPE_PARAMETER name:X index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:a index:0 type:X of <root>.test4
|
||||
@@ -57,3 +54,6 @@ FILE fqName:<root> fileName:/bangbang.kt
|
||||
<T0>: kotlin.Any
|
||||
arg0: TYPE_OP type=kotlin.Any origin=IMPLICIT_CAST typeOperand=kotlin.Any
|
||||
GET_VAR 'a: X of <root>.test4 declared in <root>.test4' type=X of <root>.test4 origin=null
|
||||
FUN name:useString visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
|
||||
@@ -16,9 +16,6 @@ fun <X : Any?> test3(a: X): (X & Any) {
|
||||
return CHECK_NOT_NULL<(X & Any)>(arg0 = a)
|
||||
}
|
||||
|
||||
fun useString(s: String) {
|
||||
}
|
||||
|
||||
fun <X : Any?> test4(a: X) {
|
||||
when {
|
||||
a is String? -> CHECK_NOT_NULL<Any>(arg0 = a) /*~> Unit */
|
||||
@@ -28,3 +25,6 @@ fun <X : Any?> test4(a: X) {
|
||||
}
|
||||
}
|
||||
|
||||
fun useString(s: String) {
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -33,9 +33,6 @@ FILE fqName:<root> fileName:/bangbang.kt
|
||||
CALL 'public final fun CHECK_NOT_NULL <T0> (arg0: T0 of kotlin.internal.ir.CHECK_NOT_NULL?): {T0 of kotlin.internal.ir.CHECK_NOT_NULL & Any} declared in kotlin.internal.ir' type=X of <root>.test3 origin=EXCLEXCL
|
||||
<T0>: X of <root>.test3
|
||||
arg0: GET_VAR 'a: X of <root>.test3 declared in <root>.test3' type=X of <root>.test3 origin=null
|
||||
FUN name:useString visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
FUN name:test4 visibility:public modality:FINAL <X> (a:X of <root>.test4) returnType:kotlin.Unit
|
||||
TYPE_PARAMETER name:X index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:a index:0 type:X of <root>.test4
|
||||
@@ -57,3 +54,6 @@ FILE fqName:<root> fileName:/bangbang.kt
|
||||
CALL 'public final fun CHECK_NOT_NULL <T0> (arg0: T0 of kotlin.internal.ir.CHECK_NOT_NULL?): {T0 of kotlin.internal.ir.CHECK_NOT_NULL & Any} declared in kotlin.internal.ir' type=X of <root>.test4 origin=EXCLEXCL
|
||||
<T0>: X of <root>.test4
|
||||
arg0: GET_VAR 'a: X of <root>.test4 declared in <root>.test4' type=X of <root>.test4 origin=null
|
||||
FUN name:useString visibility:public modality:FINAL <> (s:kotlin.String) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.String
|
||||
BLOCK_BODY
|
||||
|
||||
+4
-3
@@ -16,9 +16,6 @@ fun <X : Any?> test3(a: X): (X & Any) {
|
||||
return CHECK_NOT_NULL<X>(arg0 = a)
|
||||
}
|
||||
|
||||
fun useString(s: String) {
|
||||
}
|
||||
|
||||
fun <X : Any?> test4(a: X) {
|
||||
when {
|
||||
a is String? -> CHECK_NOT_NULL<X>(arg0 = a) /*~> Unit */
|
||||
@@ -27,3 +24,7 @@ fun <X : Any?> test4(a: X) {
|
||||
a is String? -> useString(s = CHECK_NOT_NULL<X>(arg0 = a) /*as String */)
|
||||
}
|
||||
}
|
||||
|
||||
fun useString(s: String) {
|
||||
}
|
||||
|
||||
|
||||
@@ -11,6 +11,14 @@ FILE fqName:<root> fileName:/booleanOperators.kt
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: CONST Boolean type=kotlin.Boolean value=false
|
||||
FUN name:test1x visibility:public modality:FINAL <> (a:kotlin.Boolean, b:kotlin.Boolean) returnType:kotlin.Boolean
|
||||
VALUE_PARAMETER name:a index:0 type:kotlin.Boolean
|
||||
VALUE_PARAMETER name:b index:1 type:kotlin.Boolean
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun test1x (a: kotlin.Boolean, b: kotlin.Boolean): kotlin.Boolean declared in <root>'
|
||||
CALL 'public final fun and (other: kotlin.Boolean): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=null
|
||||
$this: GET_VAR 'a: kotlin.Boolean declared in <root>.test1x' type=kotlin.Boolean origin=null
|
||||
other: GET_VAR 'b: kotlin.Boolean declared in <root>.test1x' type=kotlin.Boolean origin=null
|
||||
FUN name:test2 visibility:public modality:FINAL <> (a:kotlin.Boolean, b:kotlin.Boolean) returnType:kotlin.Boolean
|
||||
VALUE_PARAMETER name:a index:0 type:kotlin.Boolean
|
||||
VALUE_PARAMETER name:b index:1 type:kotlin.Boolean
|
||||
@@ -23,14 +31,6 @@ FILE fqName:<root> fileName:/booleanOperators.kt
|
||||
BRANCH
|
||||
if: CONST Boolean type=kotlin.Boolean value=true
|
||||
then: GET_VAR 'b: kotlin.Boolean declared in <root>.test2' type=kotlin.Boolean origin=null
|
||||
FUN name:test1x visibility:public modality:FINAL <> (a:kotlin.Boolean, b:kotlin.Boolean) returnType:kotlin.Boolean
|
||||
VALUE_PARAMETER name:a index:0 type:kotlin.Boolean
|
||||
VALUE_PARAMETER name:b index:1 type:kotlin.Boolean
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun test1x (a: kotlin.Boolean, b: kotlin.Boolean): kotlin.Boolean declared in <root>'
|
||||
CALL 'public final fun and (other: kotlin.Boolean): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=null
|
||||
$this: GET_VAR 'a: kotlin.Boolean declared in <root>.test1x' type=kotlin.Boolean origin=null
|
||||
other: GET_VAR 'b: kotlin.Boolean declared in <root>.test1x' type=kotlin.Boolean origin=null
|
||||
FUN name:test2x visibility:public modality:FINAL <> (a:kotlin.Boolean, b:kotlin.Boolean) returnType:kotlin.Boolean
|
||||
VALUE_PARAMETER name:a index:0 type:kotlin.Boolean
|
||||
VALUE_PARAMETER name:b index:1 type:kotlin.Boolean
|
||||
|
||||
@@ -5,6 +5,10 @@ fun test1(a: Boolean, b: Boolean): Boolean {
|
||||
}
|
||||
}
|
||||
|
||||
fun test1x(a: Boolean, b: Boolean): Boolean {
|
||||
return a.and(other = b)
|
||||
}
|
||||
|
||||
fun test2(a: Boolean, b: Boolean): Boolean {
|
||||
return when {
|
||||
a -> true
|
||||
@@ -12,10 +16,7 @@ fun test2(a: Boolean, b: Boolean): Boolean {
|
||||
}
|
||||
}
|
||||
|
||||
fun test1x(a: Boolean, b: Boolean): Boolean {
|
||||
return a.and(other = b)
|
||||
}
|
||||
|
||||
fun test2x(a: Boolean, b: Boolean): Boolean {
|
||||
return a.or(other = b)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,40 +1,4 @@
|
||||
FILE fqName:<root> fileName:/boundCallableReferences.kt
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.A) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-bar> visibility:public modality:FINAL <> ($this:<root>.A) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-bar> (): kotlin.Int declared in <root>.A'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-bar>' type=<root>.A origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:qux visibility:public modality:FINAL <> ($receiver:<root>.A) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.reflect.KFunction0<kotlin.Unit> visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
@@ -65,3 +29,39 @@ FILE fqName:<root> fileName:/boundCallableReferences.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): kotlin.reflect.KFunction0<kotlin.Unit> declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:kotlin.reflect.KFunction0<kotlin.Unit> visibility:private [final,static]' type=kotlin.reflect.KFunction0<kotlin.Unit> origin=null
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
|
||||
PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-bar> visibility:public modality:FINAL <> ($this:<root>.A) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-bar> (): kotlin.Int declared in <root>.A'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-bar>' type=<root>.A origin=null
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.A) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
FUN name:qux visibility:public modality:FINAL <> ($receiver:<root>.A) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
BLOCK_BODY
|
||||
|
||||
@@ -1,22 +1,3 @@
|
||||
class A {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun foo() {
|
||||
}
|
||||
|
||||
val bar: Int
|
||||
field = 0
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
fun A.qux() {
|
||||
}
|
||||
|
||||
val test1: KFunction0<Unit>
|
||||
field = A()::foo
|
||||
get
|
||||
@@ -28,3 +9,23 @@ val test2: KProperty0<Int>
|
||||
val test3: KFunction0<Unit>
|
||||
field = A()::qux
|
||||
get
|
||||
|
||||
class A {
|
||||
val bar: Int
|
||||
field = 0
|
||||
get
|
||||
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun foo() {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun A.qux() {
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,20 @@
|
||||
FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
FUN name:testBreakDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
FUN name:testBreakFor visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:xs type:kotlin.IntArray [val]
|
||||
@@ -45,22 +61,45 @@ FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
FUN name:testBreakDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:testContinueDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR name:s type:kotlin.String [var]
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=PREFIX_INCR
|
||||
SET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PREFIX_INCR
|
||||
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PREFIX_INCR
|
||||
$this: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
then: CONTINUE label=null loop.label=null
|
||||
SET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=EQ
|
||||
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String declared in kotlin.String' type=kotlin.String origin=null
|
||||
$this: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
other: STRING_CONCATENATION type=kotlin.String
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
CONST String type=kotlin.String value=";"
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
WHEN type=kotlin.Unit origin=IF
|
||||
BRANCH
|
||||
if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||
arg0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
arg1: CONST String type=kotlin.String value="1;2;"
|
||||
then: THROW type=kotlin.Nothing
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (p0: @[FlexibleNullability] kotlin.Any?) declared in java.lang.AssertionError' type=java.lang.AssertionError origin=null
|
||||
p0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
FUN name:testContinueFor visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:xs type:kotlin.IntArray [val]
|
||||
@@ -107,42 +146,3 @@ FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: CONTINUE label=null loop.label=null
|
||||
FUN name:testContinueDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR name:s type:kotlin.String [var]
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=PREFIX_INCR
|
||||
SET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PREFIX_INCR
|
||||
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PREFIX_INCR
|
||||
$this: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: CONTINUE label=null loop.label=null
|
||||
SET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=EQ
|
||||
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String declared in kotlin.String' type=kotlin.String origin=null
|
||||
$this: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
other: STRING_CONCATENATION type=kotlin.String
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
CONST String type=kotlin.String value=";"
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
WHEN type=kotlin.Unit origin=IF
|
||||
BRANCH
|
||||
if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||
arg0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
arg1: CONST String type=kotlin.String value="1;2;"
|
||||
then: THROW type=kotlin.Nothing
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (p0: @[FlexibleNullability] kotlin.Any?) declared in java.lang.AssertionError' type=java.lang.AssertionError origin=null
|
||||
p0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
fun testBreakDoWhile() {
|
||||
var k: Int = 0
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> break
|
||||
}
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
}
|
||||
|
||||
fun testBreakFor() {
|
||||
val xs: IntArray = IntArray(size = 10, init = local fun <anonymous>(i: Int): Int {
|
||||
return i
|
||||
@@ -26,15 +37,24 @@ fun testBreakWhile() {
|
||||
}
|
||||
}
|
||||
|
||||
fun testBreakDoWhile() {
|
||||
fun testContinueDoWhile() {
|
||||
var k: Int = 0
|
||||
var s: String = ""
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
{ // BLOCK
|
||||
k = k.inc()
|
||||
k
|
||||
} /*~> Unit */
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> break
|
||||
greater(arg0 = k, arg1 = 2) -> continue
|
||||
}
|
||||
s = s.plus(other = k + ";")
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
when {
|
||||
EQEQ(arg0 = s, arg1 = "1;2;").not() -> throw AssertionError(p0 = s)
|
||||
}
|
||||
}
|
||||
|
||||
fun testContinueFor() {
|
||||
@@ -65,23 +85,3 @@ fun testContinueWhile() {
|
||||
}
|
||||
}
|
||||
|
||||
fun testContinueDoWhile() {
|
||||
var k: Int = 0
|
||||
var s: String = ""
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
{ // BLOCK
|
||||
k = k.inc()
|
||||
k
|
||||
} /*~> Unit */
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> continue
|
||||
}
|
||||
s = s.plus(other = k + ";")
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
when {
|
||||
EQEQ(arg0 = s, arg1 = "1;2;").not() -> throw AssertionError(p0 = s)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1,4 +1,20 @@
|
||||
FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
FUN name:testBreakDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
FUN name:testBreakFor visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:xs type:kotlin.IntArray [val]
|
||||
@@ -45,22 +61,45 @@ FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
FUN name:testBreakDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:testContinueDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR name:s type:kotlin.String [var]
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=PREFIX_INCR
|
||||
SET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PREFIX_INCR
|
||||
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PREFIX_INCR
|
||||
$this: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: BREAK label=null loop.label=null
|
||||
then: CONTINUE label=null loop.label=null
|
||||
SET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PLUSEQ
|
||||
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String declared in kotlin.String' type=kotlin.String origin=PLUSEQ
|
||||
$this: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=PLUSEQ
|
||||
other: STRING_CONCATENATION type=kotlin.String
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
CONST String type=kotlin.String value=";"
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testBreakDoWhile' type=kotlin.Int origin=null
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
WHEN type=kotlin.Unit origin=IF
|
||||
BRANCH
|
||||
if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||
arg0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
arg1: CONST String type=kotlin.String value="1;2;"
|
||||
then: THROW type=kotlin.Nothing
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (p0: @[FlexibleNullability] kotlin.Any?) declared in java.lang.AssertionError' type=java.lang.AssertionError origin=null
|
||||
p0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
FUN name:testContinueFor visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:xs type:kotlin.IntArray [val]
|
||||
@@ -107,42 +146,3 @@ FILE fqName:<root> fileName:/breakContinueInWhen.kt
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: CONTINUE label=null loop.label=null
|
||||
FUN name:testContinueDoWhile visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
VAR name:k type:kotlin.Int [var]
|
||||
CONST Int type=kotlin.Int value=0
|
||||
VAR name:s type:kotlin.String [var]
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK type=kotlin.Unit origin=null
|
||||
DO_WHILE label=null origin=DO_WHILE_LOOP
|
||||
body: COMPOSITE type=kotlin.Unit origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=PREFIX_INCR
|
||||
SET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PREFIX_INCR
|
||||
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PREFIX_INCR
|
||||
$this: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=PREFIX_INCR
|
||||
WHEN type=kotlin.Unit origin=WHEN
|
||||
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
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=2
|
||||
then: CONTINUE label=null loop.label=null
|
||||
SET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.Unit origin=PLUSEQ
|
||||
CALL 'public final fun plus (other: kotlin.Any?): kotlin.String declared in kotlin.String' type=kotlin.String origin=PLUSEQ
|
||||
$this: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=PLUSEQ
|
||||
other: STRING_CONCATENATION type=kotlin.String
|
||||
GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
CONST String type=kotlin.String value=";"
|
||||
condition: CALL 'public final fun less (arg0: kotlin.Int, arg1: kotlin.Int): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=LT
|
||||
arg0: GET_VAR 'var k: kotlin.Int declared in <root>.testContinueDoWhile' type=kotlin.Int origin=null
|
||||
arg1: CONST Int type=kotlin.Int value=10
|
||||
WHEN type=kotlin.Unit origin=IF
|
||||
BRANCH
|
||||
if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||
arg0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
arg1: CONST String type=kotlin.String value="1;2;"
|
||||
then: THROW type=kotlin.Nothing
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (p0: @[FlexibleNullability] kotlin.Any?) declared in java.lang.AssertionError' type=java.lang.AssertionError origin=null
|
||||
p0: GET_VAR 'var s: kotlin.String declared in <root>.testContinueDoWhile' type=kotlin.String origin=null
|
||||
|
||||
@@ -1,3 +1,14 @@
|
||||
fun testBreakDoWhile() {
|
||||
var k: Int = 0
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> break
|
||||
}
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
}
|
||||
|
||||
fun testBreakFor() {
|
||||
val xs: IntArray = IntArray(size = 10, init = local fun <anonymous>(i: Int): Int {
|
||||
return i
|
||||
@@ -26,15 +37,24 @@ fun testBreakWhile() {
|
||||
}
|
||||
}
|
||||
|
||||
fun testBreakDoWhile() {
|
||||
fun testContinueDoWhile() {
|
||||
var k: Int = 0
|
||||
var s: String = ""
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
{ // BLOCK
|
||||
k = k.inc()
|
||||
k
|
||||
} /*~> Unit */
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> break
|
||||
greater(arg0 = k, arg1 = 2) -> continue
|
||||
}
|
||||
s = s.plus(other = k + ";")
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
when {
|
||||
EQEQ(arg0 = s, arg1 = "1;2;").not() -> throw AssertionError(p0 = s)
|
||||
}
|
||||
}
|
||||
|
||||
fun testContinueFor() {
|
||||
@@ -65,22 +85,3 @@ fun testContinueWhile() {
|
||||
}
|
||||
}
|
||||
|
||||
fun testContinueDoWhile() {
|
||||
var k: Int = 0
|
||||
var s: String = ""
|
||||
{ // BLOCK
|
||||
do// COMPOSITE {
|
||||
{ // BLOCK
|
||||
k = k.inc()
|
||||
k
|
||||
} /*~> Unit */
|
||||
when {
|
||||
greater(arg0 = k, arg1 = 2) -> continue
|
||||
}
|
||||
s = s.plus(other = k + ";")
|
||||
// } while (less(arg0 = k, arg1 = 10))
|
||||
}
|
||||
when {
|
||||
EQEQ(arg0 = s, arg1 = "1;2;").not() -> throw AssertionError(p0 = s)
|
||||
}
|
||||
}
|
||||
|
||||
Vendored
+37
-37
@@ -1,7 +1,4 @@
|
||||
FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
FUN name:use visibility:public modality:FINAL <> (f:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.C [primary]
|
||||
@@ -21,18 +18,6 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:extensionVararg visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:extensionDefault visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
FUN name:extensionBoth visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String, t:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
@@ -41,30 +26,18 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
CONST String type=kotlin.String value=""
|
||||
VALUE_PARAMETER name:t index:2 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:testExtensionVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:extensionDefault visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionVararg visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionVararg.extensionVararg' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionVararg.extensionVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionVararg (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionVararg' type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionDefault visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:extensionVararg visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionDefault visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionDefault.extensionDefault' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionDefault.extensionDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionDefault (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionDefault' type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionBoth visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -77,3 +50,30 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionBoth.extensionBoth' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionBoth.extensionBoth' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionBoth (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionBoth' type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionBoth (i: kotlin.Int, s: kotlin.String, vararg t: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionDefault visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionDefault visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionDefault.extensionDefault' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionDefault.extensionDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionDefault (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionDefault' type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionVararg visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionVararg.extensionVararg' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionVararg.extensionVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionVararg (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionVararg' type=@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:use visibility:public modality:FINAL <> (f:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
Vendored
+13
-13
@@ -1,6 +1,3 @@
|
||||
fun use(f: @ExtensionFunctionType Function2<C, Int, Unit>) {
|
||||
}
|
||||
|
||||
class C {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -10,22 +7,22 @@ class C {
|
||||
|
||||
}
|
||||
|
||||
fun C.extensionVararg(i: Int, vararg s: String) {
|
||||
fun C.extensionBoth(i: Int, s: String = "", vararg t: String) {
|
||||
}
|
||||
|
||||
fun C.extensionDefault(i: Int, s: String = "") {
|
||||
}
|
||||
|
||||
fun C.extensionBoth(i: Int, s: String = "", vararg t: String) {
|
||||
fun C.extensionVararg(i: Int, vararg s: String) {
|
||||
}
|
||||
|
||||
fun testExtensionVararg() {
|
||||
fun testExtensionBoth() {
|
||||
use(f = { // BLOCK
|
||||
local fun extensionVararg(p0: C, p1: Int) {
|
||||
p0.extensionVararg(i = p1)
|
||||
local fun extensionBoth(p0: C, p1: Int) {
|
||||
p0.extensionBoth(i = p1)
|
||||
}
|
||||
|
||||
::extensionVararg
|
||||
::extensionBoth
|
||||
})
|
||||
}
|
||||
|
||||
@@ -39,13 +36,16 @@ fun testExtensionDefault() {
|
||||
})
|
||||
}
|
||||
|
||||
fun testExtensionBoth() {
|
||||
fun testExtensionVararg() {
|
||||
use(f = { // BLOCK
|
||||
local fun extensionBoth(p0: C, p1: Int) {
|
||||
p0.extensionBoth(i = p1)
|
||||
local fun extensionVararg(p0: C, p1: Int) {
|
||||
p0.extensionVararg(i = p1)
|
||||
}
|
||||
|
||||
::extensionBoth
|
||||
::extensionVararg
|
||||
})
|
||||
}
|
||||
|
||||
fun use(f: @ExtensionFunctionType Function2<C, Int, Unit>) {
|
||||
}
|
||||
|
||||
|
||||
Vendored
+37
-37
@@ -1,7 +1,4 @@
|
||||
FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
FUN name:use visibility:public modality:FINAL <> (f:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.C [primary]
|
||||
@@ -21,18 +18,6 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:extensionVararg visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:extensionDefault visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
FUN name:extensionBoth visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String, t:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
@@ -41,30 +26,18 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
CONST String type=kotlin.String value=""
|
||||
VALUE_PARAMETER name:t index:2 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:testExtensionVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:extensionDefault visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.String) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionVararg visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionVararg.extensionVararg' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionVararg.extensionVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionVararg (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionVararg' type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionDefault visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:extensionVararg visibility:public modality:FINAL <> ($receiver:<root>.C, i:kotlin.Int, s:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:s index:1 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionDefault visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionDefault.extensionDefault' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionDefault.extensionDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionDefault (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionDefault' type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionBoth visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -77,3 +50,30 @@ FILE fqName:<root> fileName:/adaptedExtensionFunctions.kt
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionBoth.extensionBoth' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionBoth.extensionBoth' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionBoth (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionBoth' type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionBoth (i: kotlin.Int, s: kotlin.String, vararg t: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionDefault visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionDefault visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionDefault.extensionDefault' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionDefault.extensionDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionDefault (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionDefault' type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionDefault (i: kotlin.Int, s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:testExtensionVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (f: @[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
f: BLOCK type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:extensionVararg visibility:local modality:FINAL <> (p0:<root>.C, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.C
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
$receiver: GET_VAR 'p0: <root>.C declared in <root>.testExtensionVararg.extensionVararg' type=<root>.C origin=null
|
||||
i: GET_VAR 'p1: kotlin.Int declared in <root>.testExtensionVararg.extensionVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun extensionVararg (p0: <root>.C, p1: kotlin.Int): kotlin.Unit declared in <root>.testExtensionVararg' type=kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun extensionVararg (i: kotlin.Int, vararg s: kotlin.String): kotlin.Unit declared in <root>
|
||||
FUN name:use visibility:public modality:FINAL <> (f:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:@[ExtensionFunctionType] kotlin.Function2<<root>.C, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
Vendored
+14
-13
@@ -1,6 +1,3 @@
|
||||
fun use(f: @ExtensionFunctionType Function2<C, Int, Unit>) {
|
||||
}
|
||||
|
||||
class C {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -10,22 +7,22 @@ class C {
|
||||
|
||||
}
|
||||
|
||||
fun C.extensionVararg(i: Int, vararg s: String) {
|
||||
fun C.extensionBoth(i: Int, s: String = "", vararg t: String) {
|
||||
}
|
||||
|
||||
fun C.extensionDefault(i: Int, s: String = "") {
|
||||
}
|
||||
|
||||
fun C.extensionBoth(i: Int, s: String = "", vararg t: String) {
|
||||
fun C.extensionVararg(i: Int, vararg s: String) {
|
||||
}
|
||||
|
||||
fun testExtensionVararg() {
|
||||
fun testExtensionBoth() {
|
||||
use(f = { // BLOCK
|
||||
local fun extensionVararg(p0: C, p1: Int) {
|
||||
p0.extensionVararg(i = p1)
|
||||
local fun extensionBoth(p0: C, p1: Int) {
|
||||
p0.extensionBoth(i = p1)
|
||||
}
|
||||
|
||||
::extensionVararg
|
||||
::extensionBoth
|
||||
})
|
||||
}
|
||||
|
||||
@@ -39,12 +36,16 @@ fun testExtensionDefault() {
|
||||
})
|
||||
}
|
||||
|
||||
fun testExtensionBoth() {
|
||||
fun testExtensionVararg() {
|
||||
use(f = { // BLOCK
|
||||
local fun extensionBoth(p0: C, p1: Int) {
|
||||
p0.extensionBoth(i = p1)
|
||||
local fun extensionVararg(p0: C, p1: Int) {
|
||||
p0.extensionVararg(i = p1)
|
||||
}
|
||||
|
||||
::extensionBoth
|
||||
::extensionVararg
|
||||
})
|
||||
}
|
||||
|
||||
fun use(f: @ExtensionFunctionType Function2<C, Int, Unit>) {
|
||||
}
|
||||
|
||||
|
||||
Vendored
+6
-6
@@ -1,10 +1,4 @@
|
||||
FILE fqName:<root> fileName:/adaptedWithCoercionToUnit.kt
|
||||
FUN name:useUnit0 visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:useUnit1 visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:fn0 visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun fn0 (): kotlin.Int declared in <root>'
|
||||
@@ -64,3 +58,9 @@ FILE fqName:<root> fileName:/adaptedWithCoercionToUnit.kt
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testV1.fnv' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnv (p0: kotlin.Int): kotlin.Unit declared in <root>.testV1' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnv (vararg xs: kotlin.Int): kotlin.Int declared in <root>
|
||||
FUN name:useUnit0 visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:useUnit1 visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
Vendored
+7
-6
@@ -1,9 +1,3 @@
|
||||
fun useUnit0(fn: Function0<Unit>) {
|
||||
}
|
||||
|
||||
fun useUnit1(fn: Function1<Int, Unit>) {
|
||||
}
|
||||
|
||||
fun fn0(): Int {
|
||||
return 1
|
||||
}
|
||||
@@ -55,3 +49,10 @@ fun testV1() {
|
||||
::fnv
|
||||
})
|
||||
}
|
||||
|
||||
fun useUnit0(fn: Function0<Unit>) {
|
||||
}
|
||||
|
||||
fun useUnit1(fn: Function1<Int, Unit>) {
|
||||
}
|
||||
|
||||
|
||||
Vendored
+23
-23
@@ -2,20 +2,9 @@ FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||
CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo<T of test.Foo>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> () returnType:test.Foo<T of test.Foo> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo>
|
||||
TYPE_PARAMETER name:P index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> ($this:test.Foo<T of test.Foo>, a:T of test.Foo, b:P of test.Foo.Inner) returnType:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> [primary]
|
||||
$outer: VALUE_PARAMETER name:<this> type:test.Foo<T of test.Foo>
|
||||
VALUE_PARAMETER name:a index:0 type:T of test.Foo
|
||||
VALUE_PARAMETER name:b index:1 type:P of test.Foo.Inner
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||
PROPERTY name:a visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:a type:T of test.Foo visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -38,6 +27,13 @@ FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-b> (): P of test.Foo.Inner declared in test.Foo.Inner'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:b type:P of test.Foo.Inner visibility:private [final]' type=P of test.Foo.Inner origin=null
|
||||
receiver: GET_VAR '<this>: test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> declared in test.Foo.Inner.<get-b>' type=test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> origin=null
|
||||
CONSTRUCTOR visibility:public <> ($this:test.Foo<T of test.Foo>, a:T of test.Foo, b:P of test.Foo.Inner) returnType:test.Foo.Inner<P of test.Foo.Inner, T of test.Foo> [primary]
|
||||
$outer: VALUE_PARAMETER name:<this> type:test.Foo<T of test.Foo>
|
||||
VALUE_PARAMETER name:a index:0 type:T of test.Foo
|
||||
VALUE_PARAMETER name:b index:1 type:P of test.Foo.Inner
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -51,6 +47,10 @@ FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:public <> () returnType:test.Foo<T of test.Foo> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -64,18 +64,6 @@ FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <A, B> (a:A of test.foo, b:B of test.foo, x:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>) returnType:test.Foo.Inner<B of test.foo, A of test.foo> [inline]
|
||||
TYPE_PARAMETER name:A index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
TYPE_PARAMETER name:B index:1 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:a index:0 type:A of test.foo
|
||||
VALUE_PARAMETER name:b index:1 type:B of test.foo
|
||||
VALUE_PARAMETER name:x index:2 type:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo <A, B> (a: A of test.foo, b: B of test.foo, x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>): test.Foo.Inner<B of test.foo, A of test.foo> declared in test'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function2, p2: P2 of kotlin.Function2): R of kotlin.Function2 declared in kotlin.Function2' type=test.Foo.Inner<B of test.foo, A of test.foo> origin=INVOKE
|
||||
$this: GET_VAR 'x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> declared in test.foo' type=kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> origin=VARIABLE_AS_FUNCTION
|
||||
p1: GET_VAR 'a: A of test.foo declared in test.foo' type=A of test.foo origin=null
|
||||
p2: GET_VAR 'b: B of test.foo declared in test.foo' type=B of test.foo origin=null
|
||||
FUN name:box visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
VAR name:z type:test.Foo<kotlin.String> [val]
|
||||
@@ -96,3 +84,15 @@ FILE fqName:test fileName:/boundInnerGenericConstructor.kt
|
||||
$this: GET_VAR 'val foo: test.Foo.Inner<kotlin.String, kotlin.String> declared in test.box' type=test.Foo.Inner<kotlin.String, kotlin.String> origin=null
|
||||
other: CALL 'public final fun <get-b> (): P of test.Foo.Inner declared in test.Foo.Inner' type=kotlin.String origin=GET_PROPERTY
|
||||
$this: GET_VAR 'val foo: test.Foo.Inner<kotlin.String, kotlin.String> declared in test.box' type=test.Foo.Inner<kotlin.String, kotlin.String> origin=null
|
||||
FUN name:foo visibility:public modality:FINAL <A, B> (a:A of test.foo, b:B of test.foo, x:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>) returnType:test.Foo.Inner<B of test.foo, A of test.foo> [inline]
|
||||
TYPE_PARAMETER name:A index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
TYPE_PARAMETER name:B index:1 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:a index:0 type:A of test.foo
|
||||
VALUE_PARAMETER name:b index:1 type:B of test.foo
|
||||
VALUE_PARAMETER name:x index:2 type:kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo <A, B> (a: A of test.foo, b: B of test.foo, x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>>): test.Foo.Inner<B of test.foo, A of test.foo> declared in test'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function2, p2: P2 of kotlin.Function2): R of kotlin.Function2 declared in kotlin.Function2' type=test.Foo.Inner<B of test.foo, A of test.foo> origin=INVOKE
|
||||
$this: GET_VAR 'x: kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> declared in test.foo' type=kotlin.Function2<A of test.foo, B of test.foo, test.Foo.Inner<B of test.foo, A of test.foo>> origin=VARIABLE_AS_FUNCTION
|
||||
p1: GET_VAR 'a: A of test.foo declared in test.foo' type=A of test.foo origin=null
|
||||
p2: GET_VAR 'b: B of test.foo declared in test.foo' type=B of test.foo origin=null
|
||||
|
||||
Vendored
+16
-15
@@ -1,19 +1,7 @@
|
||||
package test
|
||||
|
||||
class Foo<T : Any?> {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
inner class Inner<P : Any?> {
|
||||
constructor(a: T, b: P) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val a: T
|
||||
field = a
|
||||
get
|
||||
@@ -22,12 +10,20 @@ class Foo<T : Any?> {
|
||||
field = b
|
||||
get
|
||||
|
||||
constructor(a: T, b: P) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
inline fun <A : Any?, B : Any?> foo(a: A, b: B, x: Function2<A, B, Inner<B, A>>): Inner<B, A> {
|
||||
return x.invoke(p1 = a, p2 = b)
|
||||
}
|
||||
|
||||
fun box(): String {
|
||||
@@ -35,3 +31,8 @@ fun box(): String {
|
||||
val foo: Inner<String, String> = foo<String, String>(a = "O", b = "K", x = z::<init>/*<String>()*/)
|
||||
return foo.<get-a>().plus(other = foo.<get-b>())
|
||||
}
|
||||
|
||||
inline fun <A : Any?, B : Any?> foo(a: A, b: B, x: Function2<A, B, Inner<B, A>>): Inner<B, A> {
|
||||
return x.invoke(p1 = a, p2 = b)
|
||||
}
|
||||
|
||||
|
||||
Vendored
+18
-18
@@ -1,9 +1,6 @@
|
||||
FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
CLASS INTERFACE name:IFoo modality:ABSTRACT visibility:public [fun] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -17,18 +14,21 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS INTERFACE name:IFoo2 modality:ABSTRACT visibility:public [fun] superTypes:[<root>.IFoo]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo2
|
||||
FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public abstract fun foo (i: kotlin.Int): kotlin.Unit declared in <root>.IFoo
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
CLASS INTERFACE name:IFoo2 modality:ABSTRACT visibility:public [fun] superTypes:[<root>.IFoo]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo2
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.IFoo
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public abstract fun foo (i: kotlin.Int): kotlin.Unit declared in <root>.IFoo
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.IFoo
|
||||
@@ -81,27 +81,22 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun get (i: <root>.IFoo): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.A, i:<root>.IFoo, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:get visibility:public modality:FINAL <> ($receiver:<root>.B, i:<root>.IFoo) returnType:kotlin.Int [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun get (i: <root>.IFoo): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.A, i:<root>.IFoo, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.B, i:<root>.IFoo2, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo2
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
@@ -236,3 +231,8 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
$receiver: GET_VAR 'val tmp_10: <root>.A declared in <root>.test6' type=<root>.A origin=null
|
||||
i: GET_VAR 'val tmp_11: kotlin.Any declared in <root>.test6' type=kotlin.Any origin=null
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
|
||||
Vendored
+6
-6
@@ -28,18 +28,14 @@ operator fun A.get(i: IFoo): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
operator fun A.set(i: IFoo, newValue: Int) {
|
||||
}
|
||||
|
||||
operator fun B.get(i: IFoo): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
operator fun B.set(i: IFoo2, newValue: Int) {
|
||||
operator fun A.set(i: IFoo, newValue: Int) {
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
operator fun B.set(i: IFoo2, newValue: Int) {
|
||||
}
|
||||
|
||||
fun test1() {
|
||||
@@ -109,3 +105,7 @@ fun test6(a: Any) {
|
||||
}
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
|
||||
+18
-18
@@ -1,9 +1,6 @@
|
||||
FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
CLASS INTERFACE name:IFoo modality:ABSTRACT visibility:public [fun] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -17,18 +14,21 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS INTERFACE name:IFoo2 modality:ABSTRACT visibility:public [fun] superTypes:[<root>.IFoo]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo2
|
||||
FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public abstract fun foo (i: kotlin.Int): kotlin.Unit declared in <root>.IFoo
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
CLASS INTERFACE name:IFoo2 modality:ABSTRACT visibility:public [fun] superTypes:[<root>.IFoo]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo2
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.IFoo
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit [fake_override]
|
||||
overridden:
|
||||
public abstract fun foo (i: kotlin.Int): kotlin.Unit declared in <root>.IFoo
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.IFoo
|
||||
@@ -81,27 +81,22 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun get (i: <root>.IFoo): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.A, i:<root>.IFoo, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:get visibility:public modality:FINAL <> ($receiver:<root>.B, i:<root>.IFoo) returnType:kotlin.Int [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun get (i: <root>.IFoo): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.A, i:<root>.IFoo, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:set visibility:public modality:FINAL <> ($receiver:<root>.B, i:<root>.IFoo2, newValue:kotlin.Int) returnType:kotlin.Unit [operator]
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:i index:0 type:<root>.IFoo2
|
||||
VALUE_PARAMETER name:newValue index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
@@ -235,3 +230,8 @@ FILE fqName:<root> fileName:/caoWithAdaptationForSam.kt
|
||||
i: TYPE_OP type=<root>.IFoo origin=IMPLICIT_CAST typeOperand=<root>.IFoo
|
||||
GET_VAR 'val tmp_11: kotlin.Any declared in <root>.test6' type=kotlin.Any origin=null
|
||||
other: CONST Int type=kotlin.Int value=1
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
|
||||
+7
-6
@@ -28,18 +28,14 @@ operator fun A.get(i: IFoo): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
operator fun A.set(i: IFoo, newValue: Int) {
|
||||
}
|
||||
|
||||
operator fun B.get(i: IFoo): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
operator fun B.set(i: IFoo2, newValue: Int) {
|
||||
operator fun A.set(i: IFoo, newValue: Int) {
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
operator fun B.set(i: IFoo2, newValue: Int) {
|
||||
}
|
||||
|
||||
fun test1() {
|
||||
@@ -108,3 +104,8 @@ fun test6(a: Any) {
|
||||
tmp_10.set(i = tmp_11 /*as IFoo */, newValue = tmp_10.get(i = tmp_11 /*as IFoo */).plus(other = 1))
|
||||
}
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
|
||||
Vendored
+11
-11
@@ -1,11 +1,4 @@
|
||||
FILE fqName:<root> fileName:/constructorWithAdaptedArguments.kt
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Any>) returnType:kotlin.Any
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Any>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.Any>): kotlin.Any declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.Any origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.Any> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.Any> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=42
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> (xs:kotlin.IntArray) returnType:<root>.C [primary]
|
||||
@@ -28,10 +21,6 @@ FILE fqName:<root> fileName:/constructorWithAdaptedArguments.kt
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS CLASS name:Outer modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Outer
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Outer [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Outer modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
CLASS CLASS name:Inner modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Outer.Inner
|
||||
CONSTRUCTOR visibility:public <> ($this:<root>.Outer, xs:kotlin.IntArray) returnType:<root>.Outer.Inner [primary]
|
||||
@@ -53,6 +42,10 @@ FILE fqName:<root> fileName:/constructorWithAdaptedArguments.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Outer [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Outer modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -112,3 +105,10 @@ FILE fqName:<root> fileName:/constructorWithAdaptedArguments.kt
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testInnerClassConstructorCapturingOuter.<init>' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun <init> (p0: kotlin.Int): <root>.Outer.Inner declared in <root>.testInnerClassConstructorCapturingOuter' type=kotlin.Function1<kotlin.Int, <root>.Outer.Inner> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public constructor <init> (vararg xs: kotlin.Int) declared in <root>.Outer.Inner
|
||||
$receiver: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Outer' type=<root>.Outer origin=null
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Any>) returnType:kotlin.Any
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Any>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.Any>): kotlin.Any declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.Any origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.Any> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.Any> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=42
|
||||
|
||||
Vendored
+11
-10
@@ -1,7 +1,3 @@
|
||||
fun use(fn: Function1<Int, Any>): Any {
|
||||
return fn.invoke(p1 = 42)
|
||||
}
|
||||
|
||||
class C {
|
||||
constructor(vararg xs: Int) /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -12,12 +8,6 @@ class C {
|
||||
}
|
||||
|
||||
class Outer {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
inner class Inner {
|
||||
constructor(vararg xs: Int) /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -27,6 +17,12 @@ class Outer {
|
||||
|
||||
}
|
||||
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun testConstructor(): Any {
|
||||
@@ -58,3 +54,8 @@ fun testInnerClassConstructorCapturingOuter(): Any {
|
||||
Outer()::<init>
|
||||
})
|
||||
}
|
||||
|
||||
fun use(fn: Function1<Int, Any>): Any {
|
||||
return fn.invoke(p1 = 42)
|
||||
}
|
||||
|
||||
|
||||
+43
-43
@@ -1,4 +1,37 @@
|
||||
FILE fqName:<root> fileName:/funWithDefaultParametersAsKCallableStar.kt
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'x: kotlin.String declared in <root>.C.<init>' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:<root>.C) returnType:kotlin.String
|
||||
correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.String declared in <root>.C'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
|
||||
receiver: GET_VAR '<this>: <root>.C declared in <root>.C.<get-x>' type=<root>.C origin=null
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.String) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:defaultsOnly visibility:public modality:FINAL <> (x:kotlin.String) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
@@ -14,47 +47,10 @@ FILE fqName:<root> fileName:/funWithDefaultParametersAsKCallableStar.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun regularAndDefaults (x1: kotlin.String, x2: kotlin.String): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:varargs visibility:public modality:FINAL <> (xs:kotlin.Array<out kotlin.String>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun varargs (vararg xs: kotlin.String): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.String) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'x: kotlin.String declared in <root>.C.<init>' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL <> ($this:<root>.C) returnType:kotlin.String
|
||||
correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.String declared in <root>.C'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
|
||||
receiver: GET_VAR '<this>: <root>.C declared in <root>.C.<get-x>' type=<root>.C origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:useKCallableStar visibility:public modality:FINAL <> (fn:kotlin.reflect.KCallable<*>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.reflect.KCallable<*>
|
||||
FUN name:testCtorStar visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useKCallableStar (fn: kotlin.reflect.KCallable<*>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public constructor <init> (x: kotlin.String) declared in <root>.C' type=kotlin.reflect.KFunction1<kotlin.String, <root>.C> origin=null reflectionTarget=<same>
|
||||
FUN name:testDefaultsOnlyStar visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useKCallableStar (fn: kotlin.reflect.KCallable<*>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -67,7 +63,11 @@ FILE fqName:<root> fileName:/funWithDefaultParametersAsKCallableStar.kt
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useKCallableStar (fn: kotlin.reflect.KCallable<*>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun varargs (vararg xs: kotlin.String): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.Array<out kotlin.String>, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testCtorStar visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useKCallableStar visibility:public modality:FINAL <> (fn:kotlin.reflect.KCallable<*>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.reflect.KCallable<*>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useKCallableStar (fn: kotlin.reflect.KCallable<*>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public constructor <init> (x: kotlin.String) declared in <root>.C' type=kotlin.reflect.KFunction1<kotlin.String, <root>.C> origin=null reflectionTarget=<same>
|
||||
FUN name:varargs visibility:public modality:FINAL <> (xs:kotlin.Array<out kotlin.String>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun varargs (vararg xs: kotlin.String): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
|
||||
+21
-20
@@ -1,3 +1,16 @@
|
||||
class C {
|
||||
val x: String
|
||||
field = x
|
||||
get
|
||||
|
||||
constructor(x: String = "") /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun defaultsOnly(x: String = ""): Int {
|
||||
return 1
|
||||
}
|
||||
@@ -6,24 +19,8 @@ fun regularAndDefaults(x1: String, x2: String = ""): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
fun varargs(vararg xs: String): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
class C {
|
||||
constructor(x: String = "") /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val x: String
|
||||
field = x
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
fun useKCallableStar(fn: KCallable<*>) {
|
||||
fun testCtorStar() {
|
||||
useKCallableStar(fn = C::<init>)
|
||||
}
|
||||
|
||||
fun testDefaultsOnlyStar() {
|
||||
@@ -38,6 +35,10 @@ fun testVarargsStar() {
|
||||
useKCallableStar(fn = ::varargs)
|
||||
}
|
||||
|
||||
fun testCtorStar() {
|
||||
useKCallableStar(fn = C::<init>)
|
||||
fun useKCallableStar(fn: KCallable<*>) {
|
||||
}
|
||||
|
||||
fun varargs(vararg xs: String): Int {
|
||||
return 1
|
||||
}
|
||||
|
||||
|
||||
+86
-86
@@ -2,11 +2,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.L<LL of <root>.L>
|
||||
TYPE_PARAMETER name:LL index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (ll:LL of <root>.L) returnType:<root>.L<LL of <root>.L> [primary]
|
||||
VALUE_PARAMETER name:ll index:0 type:LL of <root>.L
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:ll visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:ll type:LL of <root>.L visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -18,6 +13,11 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-ll> (): LL of <root>.L declared in <root>.L'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:ll type:LL of <root>.L visibility:private [final]' type=LL of <root>.L origin=null
|
||||
receiver: GET_VAR '<this>: <root>.L<LL of <root>.L> declared in <root>.L.<get-ll>' type=<root>.L<LL of <root>.L> origin=null
|
||||
CONSTRUCTOR visibility:public <> (ll:LL of <root>.L) returnType:<root>.L<LL of <root>.L> [primary]
|
||||
VALUE_PARAMETER name:ll index:0 type:LL of <root>.L
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -34,11 +34,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Rec<T of <root>.Rec>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (rt:T of <root>.Rec) returnType:<root>.Rec<T of <root>.Rec> [primary]
|
||||
VALUE_PARAMETER name:rt index:0 type:T of <root>.Rec
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:rt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:rt type:T of <root>.Rec visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -50,6 +45,11 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:rt type:T of <root>.Rec visibility:private [final]' type=T of <root>.Rec origin=null
|
||||
receiver: GET_VAR '<this>: <root>.Rec<T of <root>.Rec> declared in <root>.Rec.<get-rt>' type=<root>.Rec<T of <root>.Rec> origin=null
|
||||
CONSTRUCTOR visibility:public <> (rt:T of <root>.Rec) returnType:<root>.Rec<T of <root>.Rec> [primary]
|
||||
VALUE_PARAMETER name:rt index:0 type:T of <root>.Rec
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -63,66 +63,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FUN name:<get-p> visibility:public modality:FINAL <PT> ($receiver:<root>.Rec<PT of <root>.<get-p>>) returnType:<root>.L<PT of <root>.<get-p>>
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:PT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.<get-p>.PLocal, pt:PT of <root>.<get-p>) returnType:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.<get-p>.PLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:PT of <root>.<get-p>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.<get-p>.PLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.<get-p>.PLocal declared in <root>.<get-p>.PLocal.<init>' type=LT of <root>.<get-p>.PLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]'
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'pt: PT of <root>.<get-p> declared in <root>.<get-p>.PLocal.<init>' type=PT of <root>.<get-p> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-pt> visibility:public modality:FINAL <> ($this:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>) returnType:PT of <root>.<get-p>
|
||||
correspondingProperty: PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): PT of <root>.<get-p> declared in <root>.<get-p>.PLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]' type=PT of <root>.<get-p> origin=null
|
||||
receiver: GET_VAR '<this>: <root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> declared in <root>.<get-p>.PLocal.<get-pt>' type=<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> origin=null
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.<get-p>.PLocal>) returnType:LT of <root>.<get-p>.PLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.<get-p>.PLocal>
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> <PT> (): <root>.L<PT of <root>.<get-p>> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>> origin=null
|
||||
<T1>: PT of <root>.<get-p>
|
||||
<T2>: PT of <root>.<get-p>
|
||||
<R>: <root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>>
|
||||
t1: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
t2: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
bb: FUNCTION_REFERENCE 'public constructor <init> (lt: LT of <root>.<get-p>.PLocal, pt: PT of <root>.<get-p>) declared in <root>.<get-p>.PLocal' type=kotlin.reflect.KFunction2<PT of <root>.<get-p>, PT of <root>.<get-p>, <root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>>> origin=null reflectionTarget=<same>
|
||||
<LT>: PT of <root>.<get-p>
|
||||
FUN name:fn visibility:public modality:FINAL <FT> ($receiver:<root>.Rec<FT of <root>.fn>) returnType:<root>.L<FT of <root>.fn>
|
||||
TYPE_PARAMETER name:FT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<FT of <root>.fn>
|
||||
@@ -130,14 +70,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.fn.FLocal, pt:FT of <root>.fn) returnType:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.fn.FLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:FT of <root>.fn
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.fn.FLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.fn.FLocal declared in <root>.fn.FLocal.<init>' type=LT of <root>.fn.FLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]'
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:FT of <root>.fn visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -149,14 +81,14 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): FT of <root>.fn declared in <root>.fn.FLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:FT of <root>.fn visibility:private [final]' type=FT of <root>.fn origin=null
|
||||
receiver: GET_VAR '<this>: <root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> declared in <root>.fn.FLocal.<get-pt>' type=<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> origin=null
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.fn.FLocal>) returnType:LT of <root>.fn.FLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.fn.FLocal>
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.fn.FLocal, pt:FT of <root>.fn) returnType:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.fn.FLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:FT of <root>.fn
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.fn.FLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.fn.FLocal declared in <root>.fn.FLocal.<init>' type=LT of <root>.fn.FLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
@@ -170,6 +102,14 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.fn.FLocal>) returnType:LT of <root>.fn.FLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.fn.FLocal>
|
||||
RETURN type=kotlin.Nothing from='public final fun fn <FT> (): <root>.L<FT of <root>.fn> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.fn.FLocal<FT of <root>.fn, FT of <root>.fn> origin=null
|
||||
<T1>: FT of <root>.fn
|
||||
@@ -194,3 +134,63 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
$this: GET_VAR 'bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2> declared in <root>.foo2' type=kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2> origin=VARIABLE_AS_FUNCTION
|
||||
p1: GET_VAR 't1: T1 of <root>.foo2 declared in <root>.foo2' type=T1 of <root>.foo2 origin=null
|
||||
p2: GET_VAR 't2: T2 of <root>.foo2 declared in <root>.foo2' type=T2 of <root>.foo2 origin=null
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FUN name:<get-p> visibility:public modality:FINAL <PT> ($receiver:<root>.Rec<PT of <root>.<get-p>>) returnType:<root>.L<PT of <root>.<get-p>>
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:PT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'pt: PT of <root>.<get-p> declared in <root>.<get-p>.PLocal.<init>' type=PT of <root>.<get-p> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-pt> visibility:public modality:FINAL <> ($this:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>) returnType:PT of <root>.<get-p>
|
||||
correspondingProperty: PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): PT of <root>.<get-p> declared in <root>.<get-p>.PLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]' type=PT of <root>.<get-p> origin=null
|
||||
receiver: GET_VAR '<this>: <root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> declared in <root>.<get-p>.PLocal.<get-pt>' type=<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> origin=null
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.<get-p>.PLocal, pt:PT of <root>.<get-p>) returnType:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal, PT of <root>.<get-p>> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.<get-p>.PLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:PT of <root>.<get-p>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.<get-p>.PLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.<get-p>.PLocal declared in <root>.<get-p>.PLocal.<init>' type=LT of <root>.<get-p>.PLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.<get-p>.PLocal>) returnType:LT of <root>.<get-p>.PLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.<get-p>.PLocal>
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> <PT> (): <root>.L<PT of <root>.<get-p>> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>> origin=null
|
||||
<T1>: PT of <root>.<get-p>
|
||||
<T2>: PT of <root>.<get-p>
|
||||
<R>: <root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>>
|
||||
t1: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
t2: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
bb: FUNCTION_REFERENCE 'public constructor <init> (lt: LT of <root>.<get-p>.PLocal, pt: PT of <root>.<get-p>) declared in <root>.<get-p>.PLocal' type=kotlin.reflect.KFunction2<PT of <root>.<get-p>, PT of <root>.<get-p>, <root>.<get-p>.PLocal<PT of <root>.<get-p>, PT of <root>.<get-p>>> origin=null reflectionTarget=<same>
|
||||
<LT>: PT of <root>.<get-p>
|
||||
|
||||
+30
-30
@@ -1,59 +1,41 @@
|
||||
open class L<LL : Any?> {
|
||||
val ll: LL
|
||||
field = ll
|
||||
get
|
||||
|
||||
constructor(ll: LL) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val ll: LL
|
||||
field = ll
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
class Rec<T : Any?> {
|
||||
val rt: T
|
||||
field = rt
|
||||
get
|
||||
|
||||
constructor(rt: T) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val rt: T
|
||||
field = rt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
val <PT : Any?> Rec<PT>.p: L<PT>
|
||||
get(): L<PT> {
|
||||
local class PLocal<LT : Any?> : L<LT> {
|
||||
constructor(lt: LT, pt: PT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val pt: PT
|
||||
field = pt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
return foo2<PT, PT, PLocal<PT, PT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = PLocal::<init>/*<PT>()*/)
|
||||
}
|
||||
|
||||
fun <FT : Any?> Rec<FT>.fn(): L<FT> {
|
||||
local class FLocal<LT : Any?> : L<LT> {
|
||||
val pt: FT
|
||||
field = pt
|
||||
get
|
||||
|
||||
constructor(lt: LT, pt: FT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val pt: FT
|
||||
field = pt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
return foo2<FT, FT, FLocal<FT, FT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = FLocal::<init>/*<FT>()*/)
|
||||
@@ -63,3 +45,21 @@ fun <T1 : Any?, T2 : Any?, R : Any?> foo2(t1: T1, t2: T2, bb: Function2<T1, T2,
|
||||
return bb.invoke(p1 = t1, p2 = t2)
|
||||
}
|
||||
|
||||
val <PT : Any?> Rec<PT>.p: L<PT>
|
||||
get(): L<PT> {
|
||||
local class PLocal<LT : Any?> : L<LT> {
|
||||
val pt: PT
|
||||
field = pt
|
||||
get
|
||||
|
||||
constructor(lt: LT, pt: PT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return foo2<PT, PT, PLocal<PT, PT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = PLocal::<init>/*<PT>()*/)
|
||||
}
|
||||
|
||||
|
||||
+86
-86
@@ -2,11 +2,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.L<LL of <root>.L>
|
||||
TYPE_PARAMETER name:LL index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (ll:LL of <root>.L) returnType:<root>.L<LL of <root>.L> [primary]
|
||||
VALUE_PARAMETER name:ll index:0 type:LL of <root>.L
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:ll visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:ll type:LL of <root>.L visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -18,6 +13,11 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-ll> (): LL of <root>.L declared in <root>.L'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:ll type:LL of <root>.L visibility:private [final]' type=LL of <root>.L origin=null
|
||||
receiver: GET_VAR '<this>: <root>.L<LL of <root>.L> declared in <root>.L.<get-ll>' type=<root>.L<LL of <root>.L> origin=null
|
||||
CONSTRUCTOR visibility:public <> (ll:LL of <root>.L) returnType:<root>.L<LL of <root>.L> [primary]
|
||||
VALUE_PARAMETER name:ll index:0 type:LL of <root>.L
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -34,11 +34,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Rec<T of <root>.Rec>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (rt:T of <root>.Rec) returnType:<root>.Rec<T of <root>.Rec> [primary]
|
||||
VALUE_PARAMETER name:rt index:0 type:T of <root>.Rec
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:rt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:rt type:T of <root>.Rec visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -50,6 +45,11 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:rt type:T of <root>.Rec visibility:private [final]' type=T of <root>.Rec origin=null
|
||||
receiver: GET_VAR '<this>: <root>.Rec<T of <root>.Rec> declared in <root>.Rec.<get-rt>' type=<root>.Rec<T of <root>.Rec> origin=null
|
||||
CONSTRUCTOR visibility:public <> (rt:T of <root>.Rec) returnType:<root>.Rec<T of <root>.Rec> [primary]
|
||||
VALUE_PARAMETER name:rt index:0 type:T of <root>.Rec
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Rec modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -63,66 +63,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FUN name:<get-p> visibility:public modality:FINAL <PT> ($receiver:<root>.Rec<PT of <root>.<get-p>>) returnType:<root>.L<PT of <root>.<get-p>>
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:PT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.<get-p>.PLocal, pt:PT of <root>.<get-p>) returnType:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.<get-p>.PLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:PT of <root>.<get-p>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.<get-p>.PLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.<get-p>.PLocal declared in <root>.<get-p>.PLocal.<init>' type=LT of <root>.<get-p>.PLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]'
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'pt: PT of <root>.<get-p> declared in <root>.<get-p>.PLocal.<init>' type=PT of <root>.<get-p> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-pt> visibility:public modality:FINAL <> ($this:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>) returnType:PT of <root>.<get-p>
|
||||
correspondingProperty: PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): PT of <root>.<get-p> declared in <root>.<get-p>.PLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]' type=PT of <root>.<get-p> origin=null
|
||||
receiver: GET_VAR '<this>: <root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> declared in <root>.<get-p>.PLocal.<get-pt>' type=<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> origin=null
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.<get-p>.PLocal>) returnType:LT of <root>.<get-p>.PLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.<get-p>.PLocal>
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> <PT> (): <root>.L<PT of <root>.<get-p>> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.<get-p>.PLocal<PT of <root>.<get-p>> origin=null
|
||||
<T1>: PT of <root>.<get-p>
|
||||
<T2>: PT of <root>.<get-p>
|
||||
<R>: <root>.<get-p>.PLocal<PT of <root>.<get-p>>
|
||||
t1: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
t2: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
bb: FUNCTION_REFERENCE 'public constructor <init> (lt: LT of <root>.<get-p>.PLocal, pt: PT of <root>.<get-p>) declared in <root>.<get-p>.PLocal' type=kotlin.reflect.KFunction2<PT of <root>.<get-p>, PT of <root>.<get-p>, <root>.<get-p>.PLocal<PT of <root>.<get-p>>> origin=null reflectionTarget=<same>
|
||||
<LT>: PT of <root>.<get-p>
|
||||
FUN name:fn visibility:public modality:FINAL <FT> ($receiver:<root>.Rec<FT of <root>.fn>) returnType:<root>.L<FT of <root>.fn>
|
||||
TYPE_PARAMETER name:FT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<FT of <root>.fn>
|
||||
@@ -130,14 +70,6 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.fn.FLocal, pt:FT of <root>.fn) returnType:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.fn.FLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:FT of <root>.fn
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.fn.FLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.fn.FLocal declared in <root>.fn.FLocal.<init>' type=LT of <root>.fn.FLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]'
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:FT of <root>.fn visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -149,14 +81,14 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): FT of <root>.fn declared in <root>.fn.FLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:FT of <root>.fn visibility:private [final]' type=FT of <root>.fn origin=null
|
||||
receiver: GET_VAR '<this>: <root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> declared in <root>.fn.FLocal.<get-pt>' type=<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> origin=null
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.fn.FLocal>) returnType:LT of <root>.fn.FLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.fn.FLocal>
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.fn.FLocal, pt:FT of <root>.fn) returnType:<root>.fn.FLocal<LT of <root>.fn.FLocal, FT of <root>.fn> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.fn.FLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:FT of <root>.fn
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.fn.FLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.fn.FLocal declared in <root>.fn.FLocal.<init>' type=LT of <root>.fn.FLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:FLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.fn.FLocal>]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
@@ -170,6 +102,14 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.fn.FLocal>) returnType:LT of <root>.fn.FLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.fn.FLocal>
|
||||
RETURN type=kotlin.Nothing from='public final fun fn <FT> (): <root>.L<FT of <root>.fn> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.fn.FLocal<FT of <root>.fn, FT of <root>.fn> origin=null
|
||||
<T1>: FT of <root>.fn
|
||||
@@ -194,3 +134,63 @@ FILE fqName:<root> fileName:/genericLocalClassConstructorReference.kt
|
||||
$this: GET_VAR 'bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2> declared in <root>.foo2' type=kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2> origin=VARIABLE_AS_FUNCTION
|
||||
p1: GET_VAR 't1: T1 of <root>.foo2 declared in <root>.foo2' type=T1 of <root>.foo2 origin=null
|
||||
p2: GET_VAR 't2: T2 of <root>.foo2 declared in <root>.foo2' type=T2 of <root>.foo2 origin=null
|
||||
PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
FUN name:<get-p> visibility:public modality:FINAL <PT> ($receiver:<root>.Rec<PT of <root>.<get-p>>) returnType:<root>.L<PT of <root>.<get-p>>
|
||||
correspondingProperty: PROPERTY name:p visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:PT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Rec<PT of <root>.<get-p>>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>
|
||||
TYPE_PARAMETER name:LT index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 'pt: PT of <root>.<get-p> declared in <root>.<get-p>.PLocal.<init>' type=PT of <root>.<get-p> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-pt> visibility:public modality:FINAL <> ($this:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>) returnType:PT of <root>.<get-p>
|
||||
correspondingProperty: PROPERTY name:pt visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-pt> (): PT of <root>.<get-p> declared in <root>.<get-p>.PLocal'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:pt type:PT of <root>.<get-p> visibility:private [final]' type=PT of <root>.<get-p> origin=null
|
||||
receiver: GET_VAR '<this>: <root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> declared in <root>.<get-p>.PLocal.<get-pt>' type=<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> origin=null
|
||||
CONSTRUCTOR visibility:public <> (lt:LT of <root>.<get-p>.PLocal, pt:PT of <root>.<get-p>) returnType:<root>.<get-p>.PLocal<LT of <root>.<get-p>.PLocal> [primary]
|
||||
VALUE_PARAMETER name:lt index:0 type:LT of <root>.<get-p>.PLocal
|
||||
VALUE_PARAMETER name:pt index:1 type:PT of <root>.<get-p>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> (ll: LL of <root>.L) declared in <root>.L'
|
||||
<LL>: LT of <root>.<get-p>.PLocal
|
||||
ll: GET_VAR 'lt: LT of <root>.<get-p>.PLocal declared in <root>.<get-p>.PLocal.<init>' type=LT of <root>.<get-p>.PLocal origin=null
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PLocal modality:FINAL visibility:local superTypes:[<root>.L<LT of <root>.<get-p>.PLocal>]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final ll: LL of <root>.L
|
||||
FUN FAKE_OVERRIDE name:<get-ll> visibility:public modality:FINAL <> ($this:<root>.L<LT of <root>.<get-p>.PLocal>) returnType:LT of <root>.<get-p>.PLocal [fake_override]
|
||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:ll visibility:public modality:FINAL [fake_override,val]
|
||||
overridden:
|
||||
public final fun <get-ll> (): LL of <root>.L declared in <root>.L
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.L<LT of <root>.<get-p>.PLocal>
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-p> <PT> (): <root>.L<PT of <root>.<get-p>> declared in <root>'
|
||||
CALL 'public final fun foo2 <T1, T2, R> (t1: T1 of <root>.foo2, t2: T2 of <root>.foo2, bb: kotlin.Function2<T1 of <root>.foo2, T2 of <root>.foo2, R of <root>.foo2>): R of <root>.foo2 declared in <root>' type=<root>.<get-p>.PLocal<PT of <root>.<get-p>> origin=null
|
||||
<T1>: PT of <root>.<get-p>
|
||||
<T2>: PT of <root>.<get-p>
|
||||
<R>: <root>.<get-p>.PLocal<PT of <root>.<get-p>>
|
||||
t1: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
t2: CALL 'public final fun <get-rt> (): T of <root>.Rec declared in <root>.Rec' type=PT of <root>.<get-p> origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.Rec<PT of <root>.<get-p>> declared in <root>.<get-p>' type=<root>.Rec<PT of <root>.<get-p>> origin=null
|
||||
bb: FUNCTION_REFERENCE 'public constructor <init> (lt: LT of <root>.<get-p>.PLocal, pt: PT of <root>.<get-p>) declared in <root>.<get-p>.PLocal' type=kotlin.reflect.KFunction2<PT of <root>.<get-p>, PT of <root>.<get-p>, <root>.<get-p>.PLocal<PT of <root>.<get-p>>> origin=null reflectionTarget=<same>
|
||||
<LT>: PT of <root>.<get-p>
|
||||
|
||||
+31
-30
@@ -1,59 +1,41 @@
|
||||
open class L<LL : Any?> {
|
||||
val ll: LL
|
||||
field = ll
|
||||
get
|
||||
|
||||
constructor(ll: LL) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val ll: LL
|
||||
field = ll
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
class Rec<T : Any?> {
|
||||
val rt: T
|
||||
field = rt
|
||||
get
|
||||
|
||||
constructor(rt: T) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val rt: T
|
||||
field = rt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
val <PT : Any?> Rec<PT>.p: L<PT>
|
||||
get(): L<PT> {
|
||||
local class PLocal<LT : Any?> : L<LT> {
|
||||
constructor(lt: LT, pt: PT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val pt: PT
|
||||
field = pt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
return foo2<PT, PT, PLocal<PT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = PLocal::<init>/*<PT>()*/)
|
||||
}
|
||||
|
||||
fun <FT : Any?> Rec<FT>.fn(): L<FT> {
|
||||
local class FLocal<LT : Any?> : L<LT> {
|
||||
val pt: FT
|
||||
field = pt
|
||||
get
|
||||
|
||||
constructor(lt: LT, pt: FT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val pt: FT
|
||||
field = pt
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
return foo2<FT, FT, FLocal<FT, FT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = FLocal::<init>/*<FT>()*/)
|
||||
@@ -62,3 +44,22 @@ fun <FT : Any?> Rec<FT>.fn(): L<FT> {
|
||||
fun <T1 : Any?, T2 : Any?, R : Any?> foo2(t1: T1, t2: T2, bb: Function2<T1, T2, R>): R {
|
||||
return bb.invoke(p1 = t1, p2 = t2)
|
||||
}
|
||||
|
||||
val <PT : Any?> Rec<PT>.p: L<PT>
|
||||
get(): L<PT> {
|
||||
local class PLocal<LT : Any?> : L<LT> {
|
||||
val pt: PT
|
||||
field = pt
|
||||
get
|
||||
|
||||
constructor(lt: LT, pt: PT) /* primary */ {
|
||||
super/*L*/<LT>(ll = lt)
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return foo2<PT, PT, PLocal<PT>>(t1 = <this>.<get-rt>(), t2 = <this>.<get-rt>(), bb = PLocal::<init>/*<PT>()*/)
|
||||
}
|
||||
|
||||
|
||||
+34
-34
@@ -1,38 +1,4 @@
|
||||
FILE fqName:<root> fileName:/genericMember.kt
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A<T of <root>.A>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A<T of <root>.A> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.A<T of <root>.A>) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A<T of <root>.A>
|
||||
BLOCK_BODY
|
||||
PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-bar> visibility:public modality:FINAL <> ($this:<root>.A<T of <root>.A>) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A<T of <root>.A>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-bar> (): kotlin.Int declared in <root>.A'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.A<T of <root>.A> declared in <root>.A.<get-bar>' type=<root>.A<T of <root>.A> origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.reflect.KFunction1<<root>.A<kotlin.String>, kotlin.Unit> visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
@@ -51,3 +17,37 @@ FILE fqName:<root> fileName:/genericMember.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): kotlin.reflect.KProperty1<<root>.A<kotlin.String>, kotlin.Int> declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2 type:kotlin.reflect.KProperty1<<root>.A<kotlin.String>, kotlin.Int> visibility:private [final,static]' type=kotlin.reflect.KProperty1<<root>.A<kotlin.String>, kotlin.Int> origin=null
|
||||
CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A<T of <root>.A>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-bar> visibility:public modality:FINAL <> ($this:<root>.A<T of <root>.A>) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A<T of <root>.A>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-bar> (): kotlin.Int declared in <root>.A'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:bar type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.A<T of <root>.A> declared in <root>.A.<get-bar>' type=<root>.A<T of <root>.A> origin=null
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A<T of <root>.A> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.A<T of <root>.A>) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A<T of <root>.A>
|
||||
BLOCK_BODY
|
||||
|
||||
+12
-11
@@ -1,4 +1,16 @@
|
||||
val test1: KFunction1<A<String>, Unit>
|
||||
field = A::foo
|
||||
get
|
||||
|
||||
val test2: KProperty1<A<String>, Int>
|
||||
field = A::bar
|
||||
get
|
||||
|
||||
class A<T : Any?> {
|
||||
val bar: Int
|
||||
field = 42
|
||||
get
|
||||
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
@@ -8,16 +20,5 @@ class A<T : Any?> {
|
||||
fun foo() {
|
||||
}
|
||||
|
||||
val bar: Int
|
||||
field = 42
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
val test1: KFunction1<A<String>, Unit>
|
||||
field = A::foo
|
||||
get
|
||||
|
||||
val test2: KProperty1<A<String>, Int>
|
||||
field = A::bar
|
||||
get
|
||||
|
||||
+35
-35
@@ -1,39 +1,4 @@
|
||||
FILE fqName:test fileName:/importedFromObject.kt
|
||||
CLASS OBJECT name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo
|
||||
CONSTRUCTOR visibility:private <> () returnType:test.Foo [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:a visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.String visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:FINAL <> ($this:test.Foo) returnType:kotlin.String
|
||||
correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:test.Foo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-a> (): kotlin.String declared in test.Foo'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
|
||||
receiver: GET_VAR '<this>: test.Foo declared in test.Foo.<get-a>' type=test.Foo origin=null
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:test.Foo) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:test.Foo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.String declared in test.Foo'
|
||||
CONST String type=kotlin.String value=""
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.reflect.KProperty0<kotlin.String> visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
@@ -74,3 +39,38 @@ FILE fqName:test fileName:/importedFromObject.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test2a> (): kotlin.reflect.KFunction0<kotlin.String> declared in test'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test2a type:kotlin.reflect.KFunction0<kotlin.String> visibility:private [final,static]' type=kotlin.reflect.KFunction0<kotlin.String> origin=null
|
||||
CLASS OBJECT name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:test.Foo
|
||||
PROPERTY name:a visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.String visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:FINAL <> ($this:test.Foo) returnType:kotlin.String
|
||||
correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:test.Foo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-a> (): kotlin.String declared in test.Foo'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
|
||||
receiver: GET_VAR '<this>: test.Foo declared in test.Foo.<get-a>' type=test.Foo origin=null
|
||||
CONSTRUCTOR visibility:private <> () returnType:test.Foo [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Foo modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:test.Foo) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:test.Foo
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): kotlin.String declared in test.Foo'
|
||||
CONST String type=kotlin.String value=""
|
||||
|
||||
+18
-17
@@ -1,22 +1,5 @@
|
||||
package test
|
||||
|
||||
object Foo {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val a: String
|
||||
field = ""
|
||||
get
|
||||
|
||||
fun foo(): String {
|
||||
return ""
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
val test1: KProperty0<String>
|
||||
field = Foo::a
|
||||
get
|
||||
@@ -32,3 +15,21 @@ val test2: KFunction0<String>
|
||||
val test2a: KFunction0<String>
|
||||
field = Foo::foo
|
||||
get
|
||||
|
||||
object Foo {
|
||||
val a: String
|
||||
field = ""
|
||||
get
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun foo(): String {
|
||||
return ""
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
+29
-29
@@ -1,20 +1,6 @@
|
||||
FILE fqName:<root> fileName:/kt37131.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> (x:kotlin.String) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (x: kotlin.String): kotlin.String declared in <root>'
|
||||
GET_VAR 'x: kotlin.String declared in <root>.foo' type=kotlin.String origin=null
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.String) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]
|
||||
EXPRESSION_BODY
|
||||
@@ -26,6 +12,13 @@ FILE fqName:<root> fileName:/kt37131.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.String declared in <root>.C'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.String visibility:private [final]' type=kotlin.String origin=null
|
||||
receiver: GET_VAR '<this>: <root>.C declared in <root>.C.<get-x>' type=<root>.C origin=null
|
||||
CONSTRUCTOR visibility:public <> (x:kotlin.String) returnType:<root>.C [primary]
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -39,22 +32,13 @@ FILE fqName:<root> fileName:/kt37131.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.Any>) returnType:kotlin.Any
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.Any>
|
||||
FUN name:foo visibility:public modality:FINAL <> (x:kotlin.String) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||
EXPRESSION_BODY
|
||||
CONST String type=kotlin.String value=""
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function0<kotlin.Any>): kotlin.Any declared in <root>'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Any origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function0<kotlin.Any> declared in <root>.use' type=kotlin.Function0<kotlin.Any> origin=VARIABLE_AS_FUNCTION
|
||||
FUN name:testFn visibility:public modality:FINAL <> () returnType:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testFn (): kotlin.Any declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function0<kotlin.Any>): kotlin.Any declared in <root>' type=kotlin.Any origin=null
|
||||
fn: BLOCK type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo visibility:local modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun foo (): kotlin.String declared in <root>.testFn'
|
||||
CALL 'public final fun foo (x: kotlin.String): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (): kotlin.String declared in <root>.testFn' type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo (x: kotlin.String): kotlin.String declared in <root>
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (x: kotlin.String): kotlin.String declared in <root>'
|
||||
GET_VAR 'x: kotlin.String declared in <root>.foo' type=kotlin.String origin=null
|
||||
FUN name:testCtor visibility:public modality:FINAL <> () returnType:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testCtor (): kotlin.Any declared in <root>'
|
||||
@@ -65,3 +49,19 @@ FILE fqName:<root> fileName:/kt37131.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun <init> (): <root>.C declared in <root>.testCtor'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (x: kotlin.String) declared in <root>.C' type=<root>.C origin=null
|
||||
FUNCTION_REFERENCE 'local final fun <init> (): <root>.C declared in <root>.testCtor' type=kotlin.Function0<<root>.C> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public constructor <init> (x: kotlin.String) declared in <root>.C
|
||||
FUN name:testFn visibility:public modality:FINAL <> () returnType:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testFn (): kotlin.Any declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function0<kotlin.Any>): kotlin.Any declared in <root>' type=kotlin.Any origin=null
|
||||
fn: BLOCK type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo visibility:local modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun foo (): kotlin.String declared in <root>.testFn'
|
||||
CALL 'public final fun foo (x: kotlin.String): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (): kotlin.String declared in <root>.testFn' type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo (x: kotlin.String): kotlin.String declared in <root>
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.Any>) returnType:kotlin.Any
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.Any>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function0<kotlin.Any>): kotlin.Any declared in <root>'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.Any origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function0<kotlin.Any> declared in <root>.use' type=kotlin.Function0<kotlin.Any> origin=VARIABLE_AS_FUNCTION
|
||||
|
||||
+19
-18
@@ -1,22 +1,28 @@
|
||||
fun foo(x: String = ""): String {
|
||||
return x
|
||||
}
|
||||
|
||||
class C {
|
||||
val x: String
|
||||
field = x
|
||||
get
|
||||
|
||||
constructor(x: String = "") /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
val x: String
|
||||
field = x
|
||||
get
|
||||
|
||||
}
|
||||
|
||||
fun use(fn: Function0<Any>): Any {
|
||||
return fn.invoke()
|
||||
fun foo(x: String = ""): String {
|
||||
return x
|
||||
}
|
||||
|
||||
fun testCtor(): Any {
|
||||
return use(fn = { // BLOCK
|
||||
local fun <init>(): C {
|
||||
return C()
|
||||
}
|
||||
|
||||
::<init>
|
||||
})
|
||||
}
|
||||
|
||||
fun testFn(): Any {
|
||||
@@ -29,12 +35,7 @@ fun testFn(): Any {
|
||||
})
|
||||
}
|
||||
|
||||
fun testCtor(): Any {
|
||||
return use(fn = { // BLOCK
|
||||
local fun <init>(): C {
|
||||
return C()
|
||||
}
|
||||
|
||||
::<init>
|
||||
})
|
||||
fun use(fn: Function0<Any>): Any {
|
||||
return fn.invoke()
|
||||
}
|
||||
|
||||
|
||||
+20
-20
@@ -6,13 +6,6 @@ FILE fqName:<root> fileName:/kt46069.kt
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:ObjectAssert modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:describedAs visibility:public modality:FINAL <> ($this:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>, description:kotlin.String?, args:kotlin.Array<out kotlin.Any?>) returnType:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>?
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>
|
||||
VALUE_PARAMETER name:description index:0 type:kotlin.String?
|
||||
VALUE_PARAMETER name:args index:1 type:kotlin.Array<out kotlin.Any?> varargElementType:kotlin.Any? [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun describedAs (description: kotlin.String?, vararg args: kotlin.Any?): <root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>? declared in <root>.ObjectAssert'
|
||||
CONST Null type=kotlin.Nothing? value=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -26,12 +19,32 @@ FILE fqName:<root> fileName:/kt46069.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:describedAs visibility:public modality:FINAL <> ($this:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>, description:kotlin.String?, args:kotlin.Array<out kotlin.Any?>) returnType:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>?
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>
|
||||
VALUE_PARAMETER name:description index:0 type:kotlin.String?
|
||||
VALUE_PARAMETER name:args index:1 type:kotlin.Array<out kotlin.Any?> varargElementType:kotlin.Any? [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun describedAs (description: kotlin.String?, vararg args: kotlin.Any?): <root>.ObjectAssert<ACTUAL of <root>.ObjectAssert>? declared in <root>.ObjectAssert'
|
||||
CONST Null type=kotlin.Nothing? value=null
|
||||
CLASS OBJECT name:Assertions modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Assertions
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Assertions [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Assertions modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:assertThat visibility:public modality:FINAL <S> ($this:<root>.Assertions, actual:S of <root>.Assertions.assertThat) returnType:<root>.ObjectAssert<S of <root>.Assertions.assertThat>
|
||||
TYPE_PARAMETER name:S index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Assertions
|
||||
@@ -40,19 +53,6 @@ FILE fqName:<root> fileName:/kt46069.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun assertThat <S> (actual: S of <root>.Assertions.assertThat): <root>.ObjectAssert<S of <root>.Assertions.assertThat> declared in <root>.Assertions'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.ObjectAssert' type=<root>.ObjectAssert<S of <root>.Assertions.assertThat> origin=null
|
||||
<class: ACTUAL>: S of <root>.Assertions.assertThat
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:assertNotNull visibility:public modality:FINAL <T> ($receiver:T of <root>.assertNotNull?, description:kotlin.String?) returnType:kotlin.Unit
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.assertNotNull?
|
||||
|
||||
+74
-74
@@ -1,44 +1,10 @@
|
||||
FILE fqName:<root> fileName:/suspendConversion.kt
|
||||
FUN name:useSuspend visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:useSuspendNullable visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?
|
||||
BLOCK_BODY
|
||||
FUN name:useSuspendNestedNullable visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?
|
||||
BLOCK_BODY
|
||||
FUN name:useSuspendInt visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:foo0 visibility:public modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
FUN name:foo1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
FUN name:fooInt visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:foo2 visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:foo3 visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo3 (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:foo4 visibility:public modality:FINAL <> (i:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.C [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:bar visibility:public modality:FINAL <> ($this:<root>.C) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -52,6 +18,28 @@ FILE fqName:<root> fileName:/suspendConversion.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:bar visibility:public modality:FINAL <> ($this:<root>.C) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
FUN name:foo0 visibility:public modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
FUN name:foo1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
FUN name:foo2 visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
FUN name:foo3 visibility:public modality:FINAL <> () returnType:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo3 (): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:foo4 visibility:public modality:FINAL <> (i:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
FUN name:fooInt visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
FUN name:testLambda visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -59,10 +47,26 @@ FILE fqName:<root> fileName:/suspendConversion.kt
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUN name:testNestedNullableParam visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspendNestedNullable (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>?): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo1 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo1 (): kotlin.Unit declared in <root>.testNestedNullableParam' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo1 (): kotlin.Unit declared in <root>
|
||||
FUN name:testNoCoversion visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun foo0 (): kotlin.Unit declared in <root>' type=kotlin.reflect.KSuspendFunction0<kotlin.Unit> origin=null reflectionTarget=<same>
|
||||
FUN name:testNullableParam visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspendNullable (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>?): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo1 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo1 (): kotlin.Unit declared in <root>.testNullableParam' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo1 (): kotlin.Unit declared in <root>
|
||||
FUN name:testSuspendPlain visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -81,6 +85,34 @@ FILE fqName:<root> fileName:/suspendConversion.kt
|
||||
CALL 'public final fun fooInt (x: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
x: GET_VAR 'p0: kotlin.Int declared in <root>.testSuspendWithArgs.fooInt' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fooInt (p0: kotlin.Int): kotlin.Unit declared in <root>.testSuspendWithArgs' type=kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fooInt (x: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testWithBoundReceiver visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:bar visibility:local modality:FINAL <> ($receiver:<root>.C) returnType:kotlin.Unit [suspend]
|
||||
$receiver: VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:receiver type:<root>.C
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun bar (): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
|
||||
$this: GET_VAR 'receiver: <root>.C declared in <root>.testWithBoundReceiver.bar' type=<root>.C origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUNCTION_REFERENCE 'local final fun bar (): kotlin.Unit declared in <root>.testWithBoundReceiver' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun bar (): kotlin.Unit declared in <root>.C
|
||||
$receiver: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.C' type=<root>.C origin=null
|
||||
FUN name:testWithCoercionToUnit visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo3 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public final fun foo3 (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo3 (): kotlin.Unit declared in <root>.testWithCoercionToUnit' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo3 (): kotlin.Int declared in <root>
|
||||
FUN name:testWithDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo4 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo4 (i: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo4 (): kotlin.Unit declared in <root>.testWithDefaults' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo4 (i: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testWithVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -100,47 +132,15 @@ FILE fqName:<root> fileName:/suspendConversion.kt
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testWithVarargMapped.foo2' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo2 (p0: kotlin.Int): kotlin.Unit declared in <root>.testWithVarargMapped' type=kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo2 (vararg xs: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testWithCoercionToUnit visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useSuspend visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo3 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public final fun foo3 (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo3 (): kotlin.Unit declared in <root>.testWithCoercionToUnit' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo3 (): kotlin.Int declared in <root>
|
||||
FUN name:testWithDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useSuspendInt visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo4 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo4 (i: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo4 (): kotlin.Unit declared in <root>.testWithDefaults' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo4 (i: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testWithBoundReceiver visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useSuspendNestedNullable visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspend (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:bar visibility:local modality:FINAL <> ($receiver:<root>.C) returnType:kotlin.Unit [suspend]
|
||||
$receiver: VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:receiver type:<root>.C
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun bar (): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
|
||||
$this: GET_VAR 'receiver: <root>.C declared in <root>.testWithBoundReceiver.bar' type=<root>.C origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUNCTION_REFERENCE 'local final fun bar (): kotlin.Unit declared in <root>.testWithBoundReceiver' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun bar (): kotlin.Unit declared in <root>.C
|
||||
$receiver: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.C' type=<root>.C origin=null
|
||||
FUN name:testNullableParam visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useSuspendNullable visibility:public modality:FINAL <> (fn:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.coroutines.SuspendFunction0<kotlin.Unit>?
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspendNullable (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>?): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo1 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo1 (): kotlin.Unit declared in <root>.testNullableParam' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo1 (): kotlin.Unit declared in <root>
|
||||
FUN name:testNestedNullableParam visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useSuspendNestedNullable (fn: kotlin.coroutines.SuspendFunction0<kotlin.Unit>?): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo1 visibility:local modality:FINAL <> () returnType:kotlin.Unit [suspend]
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun foo1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo1 (): kotlin.Unit declared in <root>.testNestedNullableParam' type=kotlin.coroutines.SuspendFunction0<kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo1 (): kotlin.Unit declared in <root>
|
||||
|
||||
+63
-62
@@ -1,34 +1,3 @@
|
||||
fun useSuspend(fn: SuspendFunction0<Unit>) {
|
||||
}
|
||||
|
||||
fun useSuspendNullable(fn: SuspendFunction0<Unit>?) {
|
||||
}
|
||||
|
||||
fun useSuspendNestedNullable(fn: SuspendFunction0<Unit>?) {
|
||||
}
|
||||
|
||||
fun useSuspendInt(fn: SuspendFunction1<Int, Unit>) {
|
||||
}
|
||||
|
||||
suspend fun foo0() {
|
||||
}
|
||||
|
||||
fun foo1() {
|
||||
}
|
||||
|
||||
fun fooInt(x: Int) {
|
||||
}
|
||||
|
||||
fun foo2(vararg xs: Int) {
|
||||
}
|
||||
|
||||
fun foo3(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
fun foo4(i: Int = 42) {
|
||||
}
|
||||
|
||||
class C {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -41,6 +10,25 @@ class C {
|
||||
|
||||
}
|
||||
|
||||
suspend fun foo0() {
|
||||
}
|
||||
|
||||
fun foo1() {
|
||||
}
|
||||
|
||||
fun foo2(vararg xs: Int) {
|
||||
}
|
||||
|
||||
fun foo3(): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
fun foo4(i: Int = 42) {
|
||||
}
|
||||
|
||||
fun fooInt(x: Int) {
|
||||
}
|
||||
|
||||
fun testLambda() {
|
||||
useSuspend(fn = local suspend fun <anonymous>() {
|
||||
foo1()
|
||||
@@ -48,10 +36,30 @@ fun testLambda() {
|
||||
)
|
||||
}
|
||||
|
||||
fun testNestedNullableParam() {
|
||||
useSuspendNestedNullable(fn = { // BLOCK
|
||||
local suspend fun foo1() {
|
||||
foo1()
|
||||
}
|
||||
|
||||
::foo1
|
||||
})
|
||||
}
|
||||
|
||||
fun testNoCoversion() {
|
||||
useSuspend(fn = ::foo0)
|
||||
}
|
||||
|
||||
fun testNullableParam() {
|
||||
useSuspendNullable(fn = { // BLOCK
|
||||
local suspend fun foo1() {
|
||||
foo1()
|
||||
}
|
||||
|
||||
::foo1
|
||||
})
|
||||
}
|
||||
|
||||
fun testSuspendPlain() {
|
||||
useSuspend(fn = { // BLOCK
|
||||
local suspend fun foo1() {
|
||||
@@ -72,23 +80,13 @@ fun testSuspendWithArgs() {
|
||||
})
|
||||
}
|
||||
|
||||
fun testWithVararg() {
|
||||
fun testWithBoundReceiver() {
|
||||
useSuspend(fn = { // BLOCK
|
||||
local suspend fun foo2() {
|
||||
foo2()
|
||||
local suspend fun C.bar() {
|
||||
receiver.bar()
|
||||
}
|
||||
|
||||
::foo2
|
||||
})
|
||||
}
|
||||
|
||||
fun testWithVarargMapped() {
|
||||
useSuspendInt(fn = { // BLOCK
|
||||
local suspend fun foo2(p0: Int) {
|
||||
foo2(xs = [p0])
|
||||
}
|
||||
|
||||
::foo2
|
||||
C()::bar
|
||||
})
|
||||
}
|
||||
|
||||
@@ -112,32 +110,35 @@ fun testWithDefaults() {
|
||||
})
|
||||
}
|
||||
|
||||
fun testWithBoundReceiver() {
|
||||
fun testWithVararg() {
|
||||
useSuspend(fn = { // BLOCK
|
||||
local suspend fun C.bar() {
|
||||
receiver.bar()
|
||||
local suspend fun foo2() {
|
||||
foo2()
|
||||
}
|
||||
|
||||
C()::bar
|
||||
::foo2
|
||||
})
|
||||
}
|
||||
|
||||
fun testNullableParam() {
|
||||
useSuspendNullable(fn = { // BLOCK
|
||||
local suspend fun foo1() {
|
||||
foo1()
|
||||
fun testWithVarargMapped() {
|
||||
useSuspendInt(fn = { // BLOCK
|
||||
local suspend fun foo2(p0: Int) {
|
||||
foo2(xs = [p0])
|
||||
}
|
||||
|
||||
::foo1
|
||||
::foo2
|
||||
})
|
||||
}
|
||||
|
||||
fun testNestedNullableParam() {
|
||||
useSuspendNestedNullable(fn = { // BLOCK
|
||||
local suspend fun foo1() {
|
||||
foo1()
|
||||
}
|
||||
|
||||
::foo1
|
||||
})
|
||||
fun useSuspend(fn: SuspendFunction0<Unit>) {
|
||||
}
|
||||
|
||||
fun useSuspendInt(fn: SuspendFunction1<Int, Unit>) {
|
||||
}
|
||||
|
||||
fun useSuspendNestedNullable(fn: SuspendFunction0<Unit>?) {
|
||||
}
|
||||
|
||||
fun useSuspendNullable(fn: SuspendFunction0<Unit>?) {
|
||||
}
|
||||
|
||||
|
||||
+32
-32
@@ -1,36 +1,4 @@
|
||||
FILE fqName:<root> fileName:/typeArguments.kt
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:objectMember visibility:public modality:FINAL <T> ($this:<root>.Host, x:T of <root>.Host.objectMember) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.Host.objectMember
|
||||
BLOCK_BODY
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:topLevel1 visibility:public modality:FINAL <T> (x:T of <root>.topLevel1) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.topLevel1
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel2 visibility:public modality:FINAL <T> (x:kotlin.collections.List<T of <root>.topLevel2>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.collections.List<T of <root>.topLevel2>
|
||||
BLOCK_BODY
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Function1<kotlin.Int, kotlin.Unit> visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
@@ -62,3 +30,35 @@ FILE fqName:<root> fileName:/typeArguments.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): kotlin.Function1<kotlin.Int, kotlin.Unit> declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:kotlin.Function1<kotlin.Int, kotlin.Unit> visibility:private [final,static]' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=null
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:objectMember visibility:public modality:FINAL <T> ($this:<root>.Host, x:T of <root>.Host.objectMember) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.Host.objectMember
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel1 visibility:public modality:FINAL <T> (x:T of <root>.topLevel1) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.topLevel1
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel2 visibility:public modality:FINAL <T> (x:kotlin.collections.List<T of <root>.topLevel2>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.collections.List<T of <root>.topLevel2>
|
||||
BLOCK_BODY
|
||||
|
||||
+12
-11
@@ -1,3 +1,15 @@
|
||||
val test1: Function1<Int, Unit>
|
||||
field = ::topLevel1/*<Int>()*/
|
||||
get
|
||||
|
||||
val test2: Function1<List<String>, Unit>
|
||||
field = ::topLevel2/*<String>()*/
|
||||
get
|
||||
|
||||
val test3: Function1<Int, Unit>
|
||||
field = Host::objectMember/*<Int>()*/
|
||||
get
|
||||
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -16,14 +28,3 @@ inline fun <reified T : Any?> topLevel1(x: T) {
|
||||
inline fun <reified T : Any?> topLevel2(x: List<T>) {
|
||||
}
|
||||
|
||||
val test1: Function1<Int, Unit>
|
||||
field = ::topLevel1/*<Int>()*/
|
||||
get
|
||||
|
||||
val test2: Function1<List<String>, Unit>
|
||||
field = ::topLevel2/*<String>()*/
|
||||
get
|
||||
|
||||
val test3: Function1<Int, Unit>
|
||||
field = Host::objectMember/*<Int>()*/
|
||||
get
|
||||
|
||||
+32
-32
@@ -1,36 +1,4 @@
|
||||
FILE fqName:<root> fileName:/typeArguments.kt
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:objectMember visibility:public modality:FINAL <T> ($this:<root>.Host, x:T of <root>.Host.objectMember) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.Host.objectMember
|
||||
BLOCK_BODY
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:topLevel1 visibility:public modality:FINAL <T> (x:T of <root>.topLevel1) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.topLevel1
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel2 visibility:public modality:FINAL <T> (x:kotlin.collections.List<T of <root>.topLevel2>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.collections.List<T of <root>.topLevel2>
|
||||
BLOCK_BODY
|
||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
||||
FIELD PROPERTY_BACKING_FIELD name:test1 type:kotlin.Function1<kotlin.Int, kotlin.Unit> visibility:private [final,static]
|
||||
EXPRESSION_BODY
|
||||
@@ -62,3 +30,35 @@ FILE fqName:<root> fileName:/typeArguments.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-test3> (): kotlin.Function1<kotlin.Int, kotlin.Unit> declared in <root>'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:test3 type:kotlin.Function1<kotlin.Int, kotlin.Unit> visibility:private [final,static]' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=null
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:objectMember visibility:public modality:FINAL <T> ($this:<root>.Host, x:T of <root>.Host.objectMember) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.Host.objectMember
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel1 visibility:public modality:FINAL <T> (x:T of <root>.topLevel1) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:T of <root>.topLevel1
|
||||
BLOCK_BODY
|
||||
FUN name:topLevel2 visibility:public modality:FINAL <T> (x:kotlin.collections.List<T of <root>.topLevel2>) returnType:kotlin.Unit [inline]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:true
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.collections.List<T of <root>.topLevel2>
|
||||
BLOCK_BODY
|
||||
|
||||
+12
-11
@@ -1,3 +1,15 @@
|
||||
val test1: Function1<Int, Unit>
|
||||
field = ::topLevel1/*<Int>()*/
|
||||
get
|
||||
|
||||
val test2: Function1<List<String>, Unit>
|
||||
field = ::topLevel2/*<String>()*/
|
||||
get
|
||||
|
||||
val test3: Function1<Int, Unit>
|
||||
field = Host::objectMember/*<Int>()*/
|
||||
get
|
||||
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -16,14 +28,3 @@ inline fun <reified T : Any?> topLevel1(x: T) {
|
||||
inline fun <reified T : Any?> topLevel2(x: List<T>) {
|
||||
}
|
||||
|
||||
val test1: Function1<Int, Unit>
|
||||
field = ::topLevel1/*<Int>()*/
|
||||
get
|
||||
|
||||
val test2: Function1<List<String>, Unit>
|
||||
field = ::topLevel2/*<String>()*/
|
||||
get
|
||||
|
||||
val test3: Function1<Int, Unit>
|
||||
field = Host::objectMember/*<Int>()*/
|
||||
get
|
||||
|
||||
+34
-34
@@ -1,22 +1,10 @@
|
||||
FILE fqName:<root> fileName:/unboundMemberReferenceWithAdaptedArguments.kt
|
||||
FUN name:use1 visibility:public modality:FINAL <> (fn:kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:use2 visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CLASS CLASS name:A modality:OPEN visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:foo visibility:public modality:OPEN <> ($this:<root>.A, xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -30,20 +18,18 @@ FILE fqName:<root> fileName:/unboundMemberReferenceWithAdaptedArguments.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:OPEN <> ($this:<root>.A, xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
CLASS OBJECT name:Obj modality:FINAL visibility:public superTypes:[<root>.A]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Obj
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Obj [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.A'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Obj modality:FINAL visibility:public superTypes:[<root>.A]'
|
||||
FUN name:foo visibility:public modality:OPEN <> ($this:<root>.Obj, xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
overridden:
|
||||
public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Obj
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.Obj'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in <root>.A
|
||||
@@ -57,20 +43,14 @@ FILE fqName:<root> fileName:/unboundMemberReferenceWithAdaptedArguments.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in <root>.A
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:testUnbound visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use1 (fn: kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo visibility:local modality:FINAL <> (p0:<root>.A, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.A
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'p0: <root>.A declared in <root>.testUnbound.foo' type=<root>.A origin=null
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p1: kotlin.Int declared in <root>.testUnbound.foo' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (p0: <root>.A, p1: kotlin.Int): kotlin.Unit declared in <root>.testUnbound' type=kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A
|
||||
FUN name:foo visibility:public modality:OPEN <> ($this:<root>.Obj, xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
overridden:
|
||||
public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Obj
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.Obj'
|
||||
CONST Int type=kotlin.Int value=1
|
||||
FUN name:testBound visibility:public modality:FINAL <> (a:<root>.A) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:a index:0 type:<root>.A
|
||||
BLOCK_BODY
|
||||
@@ -102,3 +82,23 @@ FILE fqName:<root> fileName:/unboundMemberReferenceWithAdaptedArguments.kt
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testObject.foo' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (p0: kotlin.Int): kotlin.Unit declared in <root>.testObject' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.Obj
|
||||
$receiver: GET_OBJECT 'CLASS OBJECT name:Obj modality:FINAL visibility:public superTypes:[<root>.A]' type=<root>.Obj
|
||||
FUN name:testUnbound visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use1 (fn: kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:foo visibility:local modality:FINAL <> (p0:<root>.A, p1:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:<root>.A
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p1 index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'p0: <root>.A declared in <root>.testUnbound.foo' type=<root>.A origin=null
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p1: kotlin.Int declared in <root>.testUnbound.foo' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (p0: <root>.A, p1: kotlin.Int): kotlin.Unit declared in <root>.testUnbound' type=kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public open fun foo (vararg xs: kotlin.Int): kotlin.Int declared in <root>.A
|
||||
FUN name:use1 visibility:public modality:FINAL <> (fn:kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<<root>.A, kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:use2 visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
+17
-16
@@ -1,9 +1,3 @@
|
||||
fun use1(fn: Function2<A, Int, Unit>) {
|
||||
}
|
||||
|
||||
fun use2(fn: Function1<Int, Unit>) {
|
||||
}
|
||||
|
||||
open class A {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -30,16 +24,6 @@ object Obj : A {
|
||||
|
||||
}
|
||||
|
||||
fun testUnbound() {
|
||||
use1(fn = { // BLOCK
|
||||
local fun foo(p0: A, p1: Int) {
|
||||
p0.foo(xs = [p1]) /*~> Unit */
|
||||
}
|
||||
|
||||
::foo
|
||||
})
|
||||
}
|
||||
|
||||
fun testBound(a: A) {
|
||||
use2(fn = { // BLOCK
|
||||
local fun A.foo(p0: Int) {
|
||||
@@ -59,3 +43,20 @@ fun testObject() {
|
||||
Obj::foo
|
||||
})
|
||||
}
|
||||
|
||||
fun testUnbound() {
|
||||
use1(fn = { // BLOCK
|
||||
local fun foo(p0: A, p1: Int) {
|
||||
p0.foo(xs = [p1]) /*~> Unit */
|
||||
}
|
||||
|
||||
::foo
|
||||
})
|
||||
}
|
||||
|
||||
fun use1(fn: Function2<A, Int, Unit>) {
|
||||
}
|
||||
|
||||
fun use2(fn: Function1<Int, Unit>) {
|
||||
}
|
||||
|
||||
|
||||
Vendored
+13
-13
@@ -1,23 +1,10 @@
|
||||
FILE fqName:<root> fileName:/varargFunImportedFromObject.kt
|
||||
FUN name:withO visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.String, kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.String, kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withO (fn: kotlin.Function1<kotlin.String, kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.String, kotlin.String> declared in <root>.withO' type=kotlin.Function1<kotlin.String, kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST String type=kotlin.String value="O"
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Array<out kotlin.String>) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (vararg x: kotlin.String): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value="K"
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -31,6 +18,12 @@ FILE fqName:<root> fileName:/varargFunImportedFromObject.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.Host, x:kotlin.Array<out kotlin.String>) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (vararg x: kotlin.String): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value="K"
|
||||
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun test1 (): kotlin.String declared in <root>'
|
||||
@@ -63,3 +56,10 @@ FILE fqName:<root> fileName:/varargFunImportedFromObject.kt
|
||||
GET_VAR 'p0: kotlin.String declared in <root>.test2.foo' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun foo (p0: kotlin.String): kotlin.String declared in <root>.test2' type=kotlin.Function1<kotlin.String, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun foo (vararg x: kotlin.String): kotlin.String declared in <root>.Host
|
||||
$receiver: GET_OBJECT 'CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.Host
|
||||
FUN name:withO visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.String, kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.String, kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withO (fn: kotlin.Function1<kotlin.String, kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.String, kotlin.String> declared in <root>.withO' type=kotlin.Function1<kotlin.String, kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST String type=kotlin.String value="O"
|
||||
|
||||
+11
-11
@@ -1,9 +1,6 @@
|
||||
FILE fqName:<root> fileName:/withAdaptationForSam.kt
|
||||
CLASS INTERFACE name:IFoo modality:ABSTRACT visibility:public [fun] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IFoo
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -17,14 +14,9 @@ FILE fqName:<root> fileName:/withAdaptationForSam.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:useFoo visibility:public modality:FINAL <> (foo:<root>.IFoo) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:foo index:0 type:<root>.IFoo
|
||||
BLOCK_BODY
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
FUN name:foo visibility:public modality:ABSTRACT <> ($this:<root>.IFoo, i:kotlin.Int) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.IFoo
|
||||
VALUE_PARAMETER name:i index:0 type:kotlin.Int
|
||||
FUN name:test visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useFoo (foo: <root>.IFoo): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -38,3 +30,11 @@ FILE fqName:<root> fileName:/withAdaptationForSam.kt
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.test.withVararg' type=kotlin.Int origin=null
|
||||
TYPE_OP type=<root>.IFoo origin=SAM_CONVERSION typeOperand=<root>.IFoo
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.test' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>
|
||||
FUN name:useFoo visibility:public modality:FINAL <> (foo:<root>.IFoo) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:foo index:0 type:<root>.IFoo
|
||||
BLOCK_BODY
|
||||
FUN name:withVararg visibility:public modality:FINAL <> (xs:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CONST Int type=kotlin.Int value=42
|
||||
|
||||
+8
-7
@@ -3,13 +3,6 @@ fun interface IFoo {
|
||||
|
||||
}
|
||||
|
||||
fun useFoo(foo: IFoo) {
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
fun test() {
|
||||
useFoo(foo = { // BLOCK
|
||||
local fun withVararg(p0: Int) {
|
||||
@@ -19,3 +12,11 @@ fun test() {
|
||||
::withVararg /*-> IFoo */
|
||||
})
|
||||
}
|
||||
|
||||
fun useFoo(foo: IFoo) {
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): Int {
|
||||
return 42
|
||||
}
|
||||
|
||||
|
||||
+71
-71
@@ -1,17 +1,29 @@
|
||||
FILE fqName:<root> fileName:/withAdaptedArguments.kt
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.String> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=1
|
||||
FUN name:use0 visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use0 (fn: kotlin.Function0<kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function0<kotlin.String> declared in <root>.use0' type=kotlin.Function0<kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:importedObjectMemberWithVarargs visibility:public modality:FINAL <> ($this:<root>.Host, xs:kotlin.IntArray) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun importedObjectMemberWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value="abc"
|
||||
FUN name:coerceToUnit visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
@@ -38,56 +50,6 @@ FILE fqName:<root> fileName:/withAdaptedArguments.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>'
|
||||
CONST String type=kotlin.String value="abc"
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:importedObjectMemberWithVarargs visibility:public modality:FINAL <> ($this:<root>.Host, xs:kotlin.IntArray) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun importedObjectMemberWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value="abc"
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:testDefault visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testDefault (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithDefault visibility:local modality:FINAL <> (p0:kotlin.Int) returnType:kotlin.String
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithDefault (p0: kotlin.Int): kotlin.String declared in <root>.testDefault'
|
||||
CALL 'public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
a: GET_VAR 'p0: kotlin.Int declared in <root>.testDefault.fnWithDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithDefault (p0: kotlin.Int): kotlin.String declared in <root>.testDefault' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testVararg visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testVararg (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithVarargs visibility:local modality:FINAL <> (p0:kotlin.Int) returnType:kotlin.String
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithVarargs (p0: kotlin.Int): kotlin.String declared in <root>.testVararg'
|
||||
CALL 'public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testVararg.fnWithVarargs' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithVarargs (p0: kotlin.Int): kotlin.String declared in <root>.testVararg' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testCoercionToUnit visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testCoercionToUnit (): kotlin.Unit declared in <root>'
|
||||
@@ -100,6 +62,28 @@ FILE fqName:<root> fileName:/withAdaptedArguments.kt
|
||||
CALL 'public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
a: GET_VAR 'p0: kotlin.Int declared in <root>.testCoercionToUnit.fnWithDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithDefault (p0: kotlin.Int): kotlin.Unit declared in <root>.testCoercionToUnit' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testDefault visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testDefault (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithDefault visibility:local modality:FINAL <> (p0:kotlin.Int) returnType:kotlin.String
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithDefault (p0: kotlin.Int): kotlin.String declared in <root>.testDefault'
|
||||
CALL 'public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
a: GET_VAR 'p0: kotlin.Int declared in <root>.testDefault.fnWithDefault' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithDefault (p0: kotlin.Int): kotlin.String declared in <root>.testDefault' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithDefault (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testDefault0 visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testDefault0 (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use0 (fn: kotlin.Function0<kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithDefaults visibility:local modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithDefaults (): kotlin.String declared in <root>.testDefault0'
|
||||
CALL 'public final fun fnWithDefaults (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithDefaults (): kotlin.String declared in <root>.testDefault0' type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithDefaults (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testImportedObjectMember visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testImportedObjectMember (): kotlin.String declared in <root>'
|
||||
@@ -116,16 +100,19 @@ FILE fqName:<root> fileName:/withAdaptedArguments.kt
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testImportedObjectMember.importedObjectMemberWithVarargs' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun importedObjectMemberWithVarargs (p0: kotlin.Int): kotlin.String declared in <root>.testImportedObjectMember' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun importedObjectMemberWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: GET_OBJECT 'CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.Host
|
||||
FUN name:testDefault0 visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
FUN name:testVararg visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testDefault0 (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use0 (fn: kotlin.Function0<kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithDefaults visibility:local modality:FINAL <> () returnType:kotlin.String
|
||||
RETURN type=kotlin.Nothing from='public final fun testVararg (): kotlin.String declared in <root>'
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:fnWithVarargs visibility:local modality:FINAL <> (p0:kotlin.Int) returnType:kotlin.String
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithDefaults (): kotlin.String declared in <root>.testDefault0'
|
||||
CALL 'public final fun fnWithDefaults (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithDefaults (): kotlin.String declared in <root>.testDefault0' type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithDefaults (a: kotlin.Int, b: kotlin.Int): kotlin.String declared in <root>
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithVarargs (p0: kotlin.Int): kotlin.String declared in <root>.testVararg'
|
||||
CALL 'public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.testVararg.fnWithVarargs' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithVarargs (p0: kotlin.Int): kotlin.String declared in <root>.testVararg' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:testVararg0 visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testVararg0 (): kotlin.String declared in <root>'
|
||||
@@ -136,3 +123,16 @@ FILE fqName:<root> fileName:/withAdaptedArguments.kt
|
||||
RETURN type=kotlin.Nothing from='local final fun fnWithVarargs (): kotlin.String declared in <root>.testVararg0'
|
||||
CALL 'public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>' type=kotlin.String origin=null
|
||||
FUNCTION_REFERENCE 'local final fun fnWithVarargs (): kotlin.String declared in <root>.testVararg0' type=kotlin.Function0<kotlin.String> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun fnWithVarargs (vararg xs: kotlin.Int): kotlin.String declared in <root>
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.String> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=1
|
||||
FUN name:use0 visibility:public modality:FINAL <> (fn:kotlin.Function0<kotlin.String>) returnType:kotlin.String
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function0<kotlin.String>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun use0 (fn: kotlin.Function0<kotlin.String>): kotlin.String declared in <root>'
|
||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 declared in kotlin.Function0' type=kotlin.String origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function0<kotlin.String> declared in <root>.use0' type=kotlin.Function0<kotlin.String> origin=VARIABLE_AS_FUNCTION
|
||||
|
||||
+43
-42
@@ -1,9 +1,14 @@
|
||||
fun use(fn: Function1<Int, String>): String {
|
||||
return fn.invoke(p1 = 1)
|
||||
}
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun importedObjectMemberWithVarargs(vararg xs: Int): String {
|
||||
return "abc"
|
||||
}
|
||||
|
||||
fun use0(fn: Function0<String>): String {
|
||||
return fn.invoke()
|
||||
}
|
||||
|
||||
fun coerceToUnit(fn: Function1<Int, Unit>) {
|
||||
@@ -21,39 +26,6 @@ fun fnWithVarargs(vararg xs: Int): String {
|
||||
return "abc"
|
||||
}
|
||||
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
fun importedObjectMemberWithVarargs(vararg xs: Int): String {
|
||||
return "abc"
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun testDefault(): String {
|
||||
return use(fn = { // BLOCK
|
||||
local fun fnWithDefault(p0: Int): String {
|
||||
return fnWithDefault(a = p0)
|
||||
}
|
||||
|
||||
::fnWithDefault
|
||||
})
|
||||
}
|
||||
|
||||
fun testVararg(): String {
|
||||
return use(fn = { // BLOCK
|
||||
local fun fnWithVarargs(p0: Int): String {
|
||||
return fnWithVarargs(xs = [p0])
|
||||
}
|
||||
|
||||
::fnWithVarargs
|
||||
})
|
||||
}
|
||||
|
||||
fun testCoercionToUnit() {
|
||||
return coerceToUnit(fn = { // BLOCK
|
||||
local fun fnWithDefault(p0: Int) {
|
||||
@@ -64,13 +36,13 @@ fun testCoercionToUnit() {
|
||||
})
|
||||
}
|
||||
|
||||
fun testImportedObjectMember(): String {
|
||||
fun testDefault(): String {
|
||||
return use(fn = { // BLOCK
|
||||
local fun Host.importedObjectMemberWithVarargs(p0: Int): String {
|
||||
return receiver.importedObjectMemberWithVarargs(xs = [p0])
|
||||
local fun fnWithDefault(p0: Int): String {
|
||||
return fnWithDefault(a = p0)
|
||||
}
|
||||
|
||||
Host::importedObjectMemberWithVarargs
|
||||
::fnWithDefault
|
||||
})
|
||||
}
|
||||
|
||||
@@ -84,6 +56,26 @@ fun testDefault0(): String {
|
||||
})
|
||||
}
|
||||
|
||||
fun testImportedObjectMember(): String {
|
||||
return use(fn = { // BLOCK
|
||||
local fun Host.importedObjectMemberWithVarargs(p0: Int): String {
|
||||
return receiver.importedObjectMemberWithVarargs(xs = [p0])
|
||||
}
|
||||
|
||||
Host::importedObjectMemberWithVarargs
|
||||
})
|
||||
}
|
||||
|
||||
fun testVararg(): String {
|
||||
return use(fn = { // BLOCK
|
||||
local fun fnWithVarargs(p0: Int): String {
|
||||
return fnWithVarargs(xs = [p0])
|
||||
}
|
||||
|
||||
::fnWithVarargs
|
||||
})
|
||||
}
|
||||
|
||||
fun testVararg0(): String {
|
||||
return use0(fn = { // BLOCK
|
||||
local fun fnWithVarargs(): String {
|
||||
@@ -93,3 +85,12 @@ fun testVararg0(): String {
|
||||
::fnWithVarargs
|
||||
})
|
||||
}
|
||||
|
||||
fun use(fn: Function1<Int, String>): String {
|
||||
return fn.invoke(p1 = 1)
|
||||
}
|
||||
|
||||
fun use0(fn: Function0<String>): String {
|
||||
return fn.invoke()
|
||||
}
|
||||
|
||||
|
||||
Vendored
+35
-35
@@ -1,23 +1,24 @@
|
||||
FILE fqName:<root> fileName:/withArgumentAdaptationAndReceiver.kt
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.Unit> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=1
|
||||
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:withVararg visibility:public modality:FINAL <> ($this:<root>.Host, xs:kotlin.IntArray) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value=""
|
||||
FUN name:testImplicitThis visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:testBoundReceiverExpression visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -28,11 +29,11 @@ FILE fqName:<root> fileName:/withArgumentAdaptationAndReceiver.kt
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host' type=kotlin.String origin=null
|
||||
$this: GET_VAR 'receiver: <root>.Host declared in <root>.Host.testImplicitThis.withVararg' type=<root>.Host origin=ADAPTED_FUNCTION_REFERENCE
|
||||
$this: GET_VAR 'receiver: <root>.Host declared in <root>.Host.testBoundReceiverExpression.withVararg' type=<root>.Host origin=ADAPTED_FUNCTION_REFERENCE
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.Host.testImplicitThis.withVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.Host.testImplicitThis' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: GET_VAR '<this>: <root>.Host declared in <root>.Host.testImplicitThis' type=<root>.Host origin=null
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.Host.testBoundReceiverExpression.withVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.Host.testBoundReceiverExpression' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Host' type=<root>.Host origin=null
|
||||
FUN name:testBoundReceiverLocalVal visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
@@ -86,7 +87,7 @@ FILE fqName:<root> fileName:/withArgumentAdaptationAndReceiver.kt
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.Host.testBoundReceiverParameter.withVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.Host.testBoundReceiverParameter' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: GET_VAR 'h: <root>.Host declared in <root>.Host.testBoundReceiverParameter' type=<root>.Host origin=null
|
||||
FUN name:testBoundReceiverExpression visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
FUN name:testImplicitThis visibility:public modality:FINAL <> ($this:<root>.Host) returnType:kotlin.Unit
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun use (fn: kotlin.Function1<kotlin.Int, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -97,21 +98,20 @@ FILE fqName:<root> fileName:/withArgumentAdaptationAndReceiver.kt
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
CALL 'public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host' type=kotlin.String origin=null
|
||||
$this: GET_VAR 'receiver: <root>.Host declared in <root>.Host.testBoundReceiverExpression.withVararg' type=<root>.Host origin=ADAPTED_FUNCTION_REFERENCE
|
||||
$this: GET_VAR 'receiver: <root>.Host declared in <root>.Host.testImplicitThis.withVararg' type=<root>.Host origin=ADAPTED_FUNCTION_REFERENCE
|
||||
xs: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.Host.testBoundReceiverExpression.withVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.Host.testBoundReceiverExpression' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Host' type=<root>.Host origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
GET_VAR 'p0: kotlin.Int declared in <root>.Host.testImplicitThis.withVararg' type=kotlin.Int origin=null
|
||||
FUNCTION_REFERENCE 'local final fun withVararg (p0: kotlin.Int): kotlin.Unit declared in <root>.Host.testImplicitThis' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host
|
||||
$receiver: GET_VAR '<this>: <root>.Host declared in <root>.Host.testImplicitThis' type=<root>.Host origin=null
|
||||
FUN name:withVararg visibility:public modality:FINAL <> ($this:<root>.Host, xs:kotlin.IntArray) returnType:kotlin.String
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:xs index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun withVararg (vararg xs: kotlin.Int): kotlin.String declared in <root>.Host'
|
||||
CONST String type=kotlin.String value=""
|
||||
FUN name:use visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Int, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Int, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
CALL 'public abstract fun invoke (p1: P1 of kotlin.Function1): R of kotlin.Function1 declared in kotlin.Function1' type=kotlin.Unit origin=INVOKE
|
||||
$this: GET_VAR 'fn: kotlin.Function1<kotlin.Int, kotlin.Unit> declared in <root>.use' type=kotlin.Function1<kotlin.Int, kotlin.Unit> origin=VARIABLE_AS_FUNCTION
|
||||
p1: CONST Int type=kotlin.Int value=1
|
||||
|
||||
Vendored
+13
-12
@@ -1,7 +1,3 @@
|
||||
fun use(fn: Function1<Int, Unit>) {
|
||||
fn.invoke(p1 = 1)
|
||||
}
|
||||
|
||||
class Host {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -9,17 +5,13 @@ class Host {
|
||||
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): String {
|
||||
return ""
|
||||
}
|
||||
|
||||
fun testImplicitThis() {
|
||||
fun testBoundReceiverExpression() {
|
||||
use(fn = { // BLOCK
|
||||
local fun Host.withVararg(p0: Int) {
|
||||
receiver.withVararg(xs = [p0]) /*~> Unit */
|
||||
}
|
||||
|
||||
<this>::withVararg
|
||||
Host()::withVararg
|
||||
})
|
||||
}
|
||||
|
||||
@@ -55,14 +47,23 @@ class Host {
|
||||
})
|
||||
}
|
||||
|
||||
fun testBoundReceiverExpression() {
|
||||
fun testImplicitThis() {
|
||||
use(fn = { // BLOCK
|
||||
local fun Host.withVararg(p0: Int) {
|
||||
receiver.withVararg(xs = [p0]) /*~> Unit */
|
||||
}
|
||||
|
||||
Host()::withVararg
|
||||
<this>::withVararg
|
||||
})
|
||||
}
|
||||
|
||||
fun withVararg(vararg xs: Int): String {
|
||||
return ""
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun use(fn: Function1<Int, Unit>) {
|
||||
fn.invoke(p1 = 1)
|
||||
}
|
||||
|
||||
|
||||
Vendored
+49
-49
@@ -1,4 +1,23 @@
|
||||
FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
FUN name:nsum visibility:public modality:FINAL <> (args:kotlin.Array<out kotlin.Number>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.Array<out kotlin.Number> varargElementType:kotlin.Number [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
args: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
SPREAD_ELEMENT
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (size: kotlin.Int, init: kotlin.Function1<kotlin.Int, kotlin.Int>) declared in kotlin.IntArray' type=kotlin.IntArray origin=null
|
||||
size: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
init: FUN_EXPR type=kotlin.Function1<kotlin.Int, kotlin.Int> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:it index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: kotlin.Int): kotlin.Int declared in <root>.nsum'
|
||||
CALL 'public abstract fun toInt (): kotlin.Int declared in kotlin.Number' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.Number origin=GET_ARRAY_ELEMENT
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
index: GET_VAR 'it: kotlin.Int declared in <root>.nsum.<anonymous>' type=kotlin.Int origin=null
|
||||
FUN name:sum visibility:public modality:FINAL <> (args:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
@@ -21,43 +40,22 @@ FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
other: GET_VAR 'val arg: kotlin.Int declared in <root>.sum' type=kotlin.Int origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>'
|
||||
GET_VAR 'var result: kotlin.Int declared in <root>.sum' type=kotlin.Int origin=null
|
||||
FUN name:nsum visibility:public modality:FINAL <> (args:kotlin.Array<out kotlin.Number>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.Array<out kotlin.Number> varargElementType:kotlin.Number [vararg]
|
||||
FUN name:testArrayAndDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
args: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
SPREAD_ELEMENT
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (size: kotlin.Int, init: kotlin.Function1<kotlin.Int, kotlin.Int>) declared in kotlin.IntArray' type=kotlin.IntArray origin=null
|
||||
size: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
init: FUN_EXPR type=kotlin.Function1<kotlin.Int, kotlin.Int> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:it index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: kotlin.Int): kotlin.Int declared in <root>.nsum'
|
||||
CALL 'public abstract fun toInt (): kotlin.Int declared in kotlin.Number' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.Number origin=GET_ARRAY_ELEMENT
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
index: GET_VAR 'it: kotlin.Int declared in <root>.nsum.<anonymous>' type=kotlin.Int origin=null
|
||||
FUN name:zap visibility:public modality:FINAL <> (b:kotlin.Array<out kotlin.String>, k:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:b index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
VALUE_PARAMETER name:k index:1 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
FUN name:usePlainArgs visibility:public modality:FINAL <> (fn:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:usePrimitiveArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.IntArray, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.IntArray, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useStringArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>
|
||||
CALL 'public final fun useStringArray (fn: kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:zap visibility:local modality:FINAL <> (p0:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Array<out kotlin.String>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
b: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'p0: kotlin.Array<out kotlin.String> declared in <root>.testArrayAndDefaults.zap' type=kotlin.Array<out kotlin.String> origin=null
|
||||
FUNCTION_REFERENCE 'local final fun zap (p0: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.testArrayAndDefaults' type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testArrayAsVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useArray (fn: kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.Array<out kotlin.Number>, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testPlainArgs visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun usePlainArgs (fn: kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -76,19 +74,21 @@ FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun usePrimitiveArray (fn: kotlin.Function1<kotlin.IntArray, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.IntArray, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testArrayAsVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useArray (fn: kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.Array<out kotlin.Number>, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testArrayAndDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:usePlainArgs visibility:public modality:FINAL <> (fn:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:usePrimitiveArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.IntArray, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.IntArray, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useStringArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:zap visibility:public modality:FINAL <> (b:kotlin.Array<out kotlin.String>, k:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:b index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
VALUE_PARAMETER name:k index:1 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useStringArray (fn: kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:zap visibility:local modality:FINAL <> (p0:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Array<out kotlin.String>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
b: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'p0: kotlin.Array<out kotlin.String> declared in <root>.testArrayAndDefaults.zap' type=kotlin.Array<out kotlin.String> origin=null
|
||||
FUNCTION_REFERENCE 'local final fun zap (p0: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.testArrayAndDefaults' type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>
|
||||
|
||||
Vendored
+28
-28
@@ -1,3 +1,10 @@
|
||||
fun nsum(vararg args: Number): Int {
|
||||
return sum(args = [*IntArray(size = args.<get-size>(), init = local fun <anonymous>(it: Int): Int {
|
||||
return args.get(index = it).toInt()
|
||||
}
|
||||
)])
|
||||
}
|
||||
|
||||
fun sum(vararg args: Int): Int {
|
||||
var result: Int = 0
|
||||
{ // BLOCK
|
||||
@@ -10,26 +17,18 @@ fun sum(vararg args: Int): Int {
|
||||
return result
|
||||
}
|
||||
|
||||
fun nsum(vararg args: Number): Int {
|
||||
return sum(args = [*IntArray(size = args.<get-size>(), init = local fun <anonymous>(it: Int): Int {
|
||||
return args.get(index = it).toInt()
|
||||
}
|
||||
)])
|
||||
fun testArrayAndDefaults() {
|
||||
useStringArray(fn = { // BLOCK
|
||||
local fun zap(p0: Array<out String>) {
|
||||
zap(b = [*p0])
|
||||
}
|
||||
|
||||
::zap
|
||||
})
|
||||
}
|
||||
|
||||
fun zap(vararg b: String, k: Int = 42) {
|
||||
}
|
||||
|
||||
fun usePlainArgs(fn: Function2<Int, Int, Int>) {
|
||||
}
|
||||
|
||||
fun usePrimitiveArray(fn: Function1<IntArray, Int>) {
|
||||
}
|
||||
|
||||
fun useArray(fn: Function1<Array<Int>, Int>) {
|
||||
}
|
||||
|
||||
fun useStringArray(fn: Function1<Array<String>, Unit>) {
|
||||
fun testArrayAsVararg() {
|
||||
useArray(fn = ::nsum)
|
||||
}
|
||||
|
||||
fun testPlainArgs() {
|
||||
@@ -46,17 +45,18 @@ fun testPrimitiveArrayAsVararg() {
|
||||
usePrimitiveArray(fn = ::sum)
|
||||
}
|
||||
|
||||
fun testArrayAsVararg() {
|
||||
useArray(fn = ::nsum)
|
||||
fun useArray(fn: Function1<Array<Int>, Int>) {
|
||||
}
|
||||
|
||||
fun testArrayAndDefaults() {
|
||||
useStringArray(fn = { // BLOCK
|
||||
local fun zap(p0: Array<out String>) {
|
||||
zap(b = [*p0])
|
||||
}
|
||||
|
||||
::zap
|
||||
})
|
||||
fun usePlainArgs(fn: Function2<Int, Int, Int>) {
|
||||
}
|
||||
|
||||
fun usePrimitiveArray(fn: Function1<IntArray, Int>) {
|
||||
}
|
||||
|
||||
fun useStringArray(fn: Function1<Array<String>, Unit>) {
|
||||
}
|
||||
|
||||
fun zap(vararg b: String, k: Int = 42) {
|
||||
}
|
||||
|
||||
|
||||
+49
-49
@@ -1,4 +1,23 @@
|
||||
FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
FUN name:nsum visibility:public modality:FINAL <> (args:kotlin.Array<out kotlin.Number>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.Array<out kotlin.Number> varargElementType:kotlin.Number [vararg]
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
args: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
SPREAD_ELEMENT
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (size: kotlin.Int, init: kotlin.Function1<kotlin.Int, kotlin.Int>) declared in kotlin.IntArray' type=kotlin.IntArray origin=null
|
||||
size: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
init: FUN_EXPR type=kotlin.Function1<kotlin.Int, kotlin.Int> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:it index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: kotlin.Int): kotlin.Int declared in <root>.nsum'
|
||||
CALL 'public abstract fun toInt (): kotlin.Int declared in kotlin.Number' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.Number origin=GET_ARRAY_ELEMENT
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
index: GET_VAR 'it: kotlin.Int declared in <root>.nsum.<anonymous>' type=kotlin.Int origin=null
|
||||
FUN name:sum visibility:public modality:FINAL <> (args:kotlin.IntArray) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.IntArray varargElementType:kotlin.Int [vararg]
|
||||
BLOCK_BODY
|
||||
@@ -21,43 +40,22 @@ FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
other: GET_VAR 'val arg: kotlin.Int declared in <root>.sum' type=kotlin.Int origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>'
|
||||
GET_VAR 'var result: kotlin.Int declared in <root>.sum' type=kotlin.Int origin=null
|
||||
FUN name:nsum visibility:public modality:FINAL <> (args:kotlin.Array<out kotlin.Number>) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:args index:0 type:kotlin.Array<out kotlin.Number> varargElementType:kotlin.Number [vararg]
|
||||
FUN name:testArrayAndDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
args: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
|
||||
SPREAD_ELEMENT
|
||||
CONSTRUCTOR_CALL 'public constructor <init> (size: kotlin.Int, init: kotlin.Function1<kotlin.Int, kotlin.Int>) declared in kotlin.IntArray' type=kotlin.IntArray origin=null
|
||||
size: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
init: FUN_EXPR type=kotlin.Function1<kotlin.Int, kotlin.Int> origin=LAMBDA
|
||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> (it:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:it index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (it: kotlin.Int): kotlin.Int declared in <root>.nsum'
|
||||
CALL 'public abstract fun toInt (): kotlin.Int declared in kotlin.Number' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.Number origin=GET_ARRAY_ELEMENT
|
||||
$this: GET_VAR 'args: kotlin.Array<out kotlin.Number> declared in <root>.nsum' type=kotlin.Array<out kotlin.Number> origin=null
|
||||
index: GET_VAR 'it: kotlin.Int declared in <root>.nsum.<anonymous>' type=kotlin.Int origin=null
|
||||
FUN name:zap visibility:public modality:FINAL <> (b:kotlin.Array<out kotlin.String>, k:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:b index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
VALUE_PARAMETER name:k index:1 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
FUN name:usePlainArgs visibility:public modality:FINAL <> (fn:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:usePrimitiveArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.IntArray, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.IntArray, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useStringArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>
|
||||
CALL 'public final fun useStringArray (fn: kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:zap visibility:local modality:FINAL <> (p0:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Array<out kotlin.String>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
b: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'p0: kotlin.Array<out kotlin.String> declared in <root>.testArrayAndDefaults.zap' type=kotlin.Array<out kotlin.String> origin=null
|
||||
FUNCTION_REFERENCE 'local final fun zap (p0: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.testArrayAndDefaults' type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>
|
||||
FUN name:testArrayAsVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useArray (fn: kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.Array<out kotlin.Number>, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testPlainArgs visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun usePlainArgs (fn: kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
@@ -76,19 +74,21 @@ FILE fqName:<root> fileName:/withVarargViewedAsArray.kt
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun usePrimitiveArray (fn: kotlin.Function1<kotlin.IntArray, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun sum (vararg args: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.IntArray, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testArrayAsVararg visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:useArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useArray (fn: kotlin.Function1<kotlin.Array<kotlin.Int>, kotlin.Int>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: FUNCTION_REFERENCE 'public final fun nsum (vararg args: kotlin.Number): kotlin.Int declared in <root>' type=kotlin.reflect.KFunction1<kotlin.Array<out kotlin.Number>, kotlin.Int> origin=null reflectionTarget=<same>
|
||||
FUN name:testArrayAndDefaults visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
FUN name:usePlainArgs visibility:public modality:FINAL <> (fn:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function2<kotlin.Int, kotlin.Int, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:usePrimitiveArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.IntArray, kotlin.Int>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.IntArray, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
FUN name:useStringArray visibility:public modality:FINAL <> (fn:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:fn index:0 type:kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
FUN name:zap visibility:public modality:FINAL <> (b:kotlin.Array<out kotlin.String>, k:kotlin.Int) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:b index:0 type:kotlin.Array<out kotlin.String> varargElementType:kotlin.String [vararg]
|
||||
VALUE_PARAMETER name:k index:1 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=42
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun useStringArray (fn: kotlin.Function1<kotlin.Array<kotlin.String>, kotlin.Unit>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
fn: BLOCK type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE
|
||||
FUN ADAPTER_FOR_CALLABLE_REFERENCE name:zap visibility:local modality:FINAL <> (p0:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER ADAPTER_PARAMETER_FOR_CALLABLE_REFERENCE name:p0 index:0 type:kotlin.Array<out kotlin.String>
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||
b: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
|
||||
SPREAD_ELEMENT
|
||||
GET_VAR 'p0: kotlin.Array<out kotlin.String> declared in <root>.testArrayAndDefaults.zap' type=kotlin.Array<out kotlin.String> origin=null
|
||||
FUNCTION_REFERENCE 'local final fun zap (p0: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.testArrayAndDefaults' type=kotlin.Function1<kotlin.Array<out kotlin.String>, kotlin.Unit> origin=ADAPTED_FUNCTION_REFERENCE reflectionTarget=public final fun zap (vararg b: kotlin.String, k: kotlin.Int): kotlin.Unit declared in <root>
|
||||
|
||||
+29
-28
@@ -1,3 +1,10 @@
|
||||
fun nsum(vararg args: Number): Int {
|
||||
return sum(args = [*IntArray(size = args.<get-size>(), init = local fun <anonymous>(it: Int): Int {
|
||||
return args.get(index = it).toInt()
|
||||
}
|
||||
)])
|
||||
}
|
||||
|
||||
fun sum(vararg args: Int): Int {
|
||||
var result: Int = 0
|
||||
{ // BLOCK
|
||||
@@ -10,26 +17,18 @@ fun sum(vararg args: Int): Int {
|
||||
return result
|
||||
}
|
||||
|
||||
fun nsum(vararg args: Number): Int {
|
||||
return sum(args = [*IntArray(size = args.<get-size>(), init = local fun <anonymous>(it: Int): Int {
|
||||
return args.get(index = it).toInt()
|
||||
}
|
||||
)])
|
||||
fun testArrayAndDefaults() {
|
||||
useStringArray(fn = { // BLOCK
|
||||
local fun zap(p0: Array<out String>) {
|
||||
zap(b = [*p0])
|
||||
}
|
||||
|
||||
::zap
|
||||
})
|
||||
}
|
||||
|
||||
fun zap(vararg b: String, k: Int = 42) {
|
||||
}
|
||||
|
||||
fun usePlainArgs(fn: Function2<Int, Int, Int>) {
|
||||
}
|
||||
|
||||
fun usePrimitiveArray(fn: Function1<IntArray, Int>) {
|
||||
}
|
||||
|
||||
fun useArray(fn: Function1<Array<Int>, Int>) {
|
||||
}
|
||||
|
||||
fun useStringArray(fn: Function1<Array<String>, Unit>) {
|
||||
fun testArrayAsVararg() {
|
||||
useArray(fn = ::nsum)
|
||||
}
|
||||
|
||||
fun testPlainArgs() {
|
||||
@@ -46,16 +45,18 @@ fun testPrimitiveArrayAsVararg() {
|
||||
usePrimitiveArray(fn = ::sum)
|
||||
}
|
||||
|
||||
fun testArrayAsVararg() {
|
||||
useArray(fn = ::nsum)
|
||||
fun useArray(fn: Function1<Array<Int>, Int>) {
|
||||
}
|
||||
|
||||
fun testArrayAndDefaults() {
|
||||
useStringArray(fn = { // BLOCK
|
||||
local fun zap(p0: Array<out String>) {
|
||||
zap(b = [*p0])
|
||||
}
|
||||
|
||||
::zap
|
||||
})
|
||||
fun usePlainArgs(fn: Function2<Int, Int, Int>) {
|
||||
}
|
||||
|
||||
fun usePrimitiveArray(fn: Function1<IntArray, Int>) {
|
||||
}
|
||||
|
||||
fun useStringArray(fn: Function1<Array<String>, Unit>) {
|
||||
}
|
||||
|
||||
fun zap(vararg b: String, k: Int = 42) {
|
||||
}
|
||||
|
||||
|
||||
+15
-15
@@ -1,10 +1,4 @@
|
||||
FILE fqName:<root> fileName:/calls.kt
|
||||
FUN name:foo visibility:public modality:FINAL <> (x:kotlin.Int, y:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:y index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>'
|
||||
GET_VAR 'x: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=null
|
||||
FUN name:bar visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
@@ -12,15 +6,6 @@ FILE fqName:<root> fileName:/calls.kt
|
||||
CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
x: GET_VAR 'x: kotlin.Int declared in <root>.bar' type=kotlin.Int origin=null
|
||||
y: CONST Int type=kotlin.Int value=1
|
||||
FUN name:qux visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun qux (x: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
x: CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
x: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
y: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
y: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
FUN name:ext1 visibility:public modality:FINAL <> ($receiver:kotlin.Int) returnType:kotlin.Int
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
@@ -43,3 +28,18 @@ FILE fqName:<root> fileName:/calls.kt
|
||||
x: CALL 'public final fun ext1 (): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
$receiver: GET_VAR '<this>: kotlin.Int declared in <root>.ext3' type=kotlin.Int origin=null
|
||||
y: GET_VAR 'x: kotlin.Int declared in <root>.ext3' type=kotlin.Int origin=null
|
||||
FUN name:foo visibility:public modality:FINAL <> (x:kotlin.Int, y:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
VALUE_PARAMETER name:y index:1 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>'
|
||||
GET_VAR 'x: kotlin.Int declared in <root>.foo' type=kotlin.Int origin=null
|
||||
FUN name:qux visibility:public modality:FINAL <> (x:kotlin.Int) returnType:kotlin.Int
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun qux (x: kotlin.Int): kotlin.Int declared in <root>'
|
||||
CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
x: CALL 'public final fun foo (x: kotlin.Int, y: kotlin.Int): kotlin.Int declared in <root>' type=kotlin.Int origin=null
|
||||
x: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
y: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
y: GET_VAR 'x: kotlin.Int declared in <root>.qux' type=kotlin.Int origin=null
|
||||
|
||||
+9
-8
@@ -1,15 +1,7 @@
|
||||
fun foo(x: Int, y: Int): Int {
|
||||
return x
|
||||
}
|
||||
|
||||
fun bar(x: Int): Int {
|
||||
return foo(x = x, y = 1)
|
||||
}
|
||||
|
||||
fun qux(x: Int): Int {
|
||||
return foo(x = foo(x = x, y = x), y = x)
|
||||
}
|
||||
|
||||
fun Int.ext1(): Int {
|
||||
return <this>
|
||||
}
|
||||
@@ -21,3 +13,12 @@ fun Int.ext2(x: Int): Int {
|
||||
fun Int.ext3(x: Int): Int {
|
||||
return foo(x = <this>.ext1(), y = x)
|
||||
}
|
||||
|
||||
fun foo(x: Int, y: Int): Int {
|
||||
return x
|
||||
}
|
||||
|
||||
fun qux(x: Int): Int {
|
||||
return foo(x = foo(x = x, y = x), y = x)
|
||||
}
|
||||
|
||||
|
||||
@@ -1,27 +1,4 @@
|
||||
FILE fqName:<root> fileName:/castToTypeParameter.kt
|
||||
FUN name:castFun visibility:public modality:FINAL <T> (x:kotlin.Any) returnType:T of <root>.castFun
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castFun <T> (x: kotlin.Any): T of <root>.castFun declared in <root>'
|
||||
TYPE_OP type=T of <root>.castFun origin=CAST typeOperand=T of <root>.castFun
|
||||
GET_VAR 'x: kotlin.Any declared in <root>.castFun' type=kotlin.Any origin=null
|
||||
FUN name:castExtFun visibility:public modality:FINAL <T> ($receiver:kotlin.Any) returnType:T of <root>.castExtFun
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castExtFun <T> (): T of <root>.castExtFun declared in <root>'
|
||||
TYPE_OP type=T of <root>.castExtFun origin=CAST typeOperand=T of <root>.castExtFun
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.castExtFun' type=kotlin.Any origin=null
|
||||
PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||
FUN name:<get-castExtVal> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-castExtVal>) returnType:T of <root>.<get-castExtVal>
|
||||
correspondingProperty: PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-castExtVal>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-castExtVal> <T> (): T of <root>.<get-castExtVal> declared in <root>'
|
||||
TYPE_OP type=T of <root>.<get-castExtVal> origin=CAST typeOperand=T of <root>.<get-castExtVal>
|
||||
GET_VAR '<this>: T of <root>.<get-castExtVal> declared in <root>.<get-castExtVal>' type=T of <root>.<get-castExtVal> origin=null
|
||||
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
@@ -29,13 +6,27 @@ FILE fqName:<root> fileName:/castToTypeParameter.kt
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:castMemberFun visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, x:kotlin.Any) returnType:T of <root>.Host
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:castGenericMemberExtFun visibility:public modality:FINAL <TF> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.Any) returnType:TF of <root>.Host.castGenericMemberExtFun
|
||||
TYPE_PARAMETER name:TF index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Any
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castMemberFun (x: kotlin.Any): T of <root>.Host declared in <root>.Host'
|
||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||
GET_VAR 'x: kotlin.Any declared in <root>.Host.castMemberFun' type=kotlin.Any origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun castGenericMemberExtFun <TF> (): TF of <root>.Host.castGenericMemberExtFun declared in <root>.Host'
|
||||
TYPE_OP type=TF of <root>.Host.castGenericMemberExtFun origin=CAST typeOperand=TF of <root>.Host.castGenericMemberExtFun
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.Host.castGenericMemberExtFun' type=kotlin.Any origin=null
|
||||
FUN name:castGenericMemberFun visibility:public modality:FINAL <TF> ($this:<root>.Host<T of <root>.Host>, x:kotlin.Any) returnType:TF of <root>.Host.castGenericMemberFun
|
||||
TYPE_PARAMETER name:TF index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
@@ -51,23 +42,13 @@ FILE fqName:<root> fileName:/castToTypeParameter.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun castMemberExtFun (): T of <root>.Host declared in <root>.Host'
|
||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.Host.castMemberExtFun' type=kotlin.Any origin=null
|
||||
FUN name:castGenericMemberExtFun visibility:public modality:FINAL <TF> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.Any) returnType:TF of <root>.Host.castGenericMemberExtFun
|
||||
TYPE_PARAMETER name:TF index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
FUN name:castMemberFun visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, x:kotlin.Any) returnType:T of <root>.Host
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castGenericMemberExtFun <TF> (): TF of <root>.Host.castGenericMemberExtFun declared in <root>.Host'
|
||||
TYPE_OP type=TF of <root>.Host.castGenericMemberExtFun origin=CAST typeOperand=TF of <root>.Host.castGenericMemberExtFun
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.Host.castGenericMemberExtFun' type=kotlin.Any origin=null
|
||||
PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val]
|
||||
FUN name:<get-castMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.Any) returnType:T of <root>.Host
|
||||
correspondingProperty: PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-castMemberExtVal> (): T of <root>.Host declared in <root>.Host'
|
||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.Host.<get-castMemberExtVal>' type=kotlin.Any origin=null
|
||||
RETURN type=kotlin.Nothing from='public final fun castMemberFun (x: kotlin.Any): T of <root>.Host declared in <root>.Host'
|
||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||
GET_VAR 'x: kotlin.Any declared in <root>.Host.castMemberFun' type=kotlin.Any origin=null
|
||||
PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||
FUN name:<get-castGenericMemberExtVal> visibility:public modality:FINAL <TV> ($this:<root>.Host<T of <root>.Host>, $receiver:TV of <root>.Host.<get-castGenericMemberExtVal>) returnType:TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||
correspondingProperty: PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||
@@ -78,16 +59,35 @@ FILE fqName:<root> fileName:/castToTypeParameter.kt
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-castGenericMemberExtVal> <TV> (): TV of <root>.Host.<get-castGenericMemberExtVal> declared in <root>.Host'
|
||||
TYPE_OP type=TV of <root>.Host.<get-castGenericMemberExtVal> origin=CAST typeOperand=TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||
GET_VAR '<this>: TV of <root>.Host.<get-castGenericMemberExtVal> declared in <root>.Host.<get-castGenericMemberExtVal>' type=TV of <root>.Host.<get-castGenericMemberExtVal> origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val]
|
||||
FUN name:<get-castMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.Any) returnType:T of <root>.Host
|
||||
correspondingProperty: PROPERTY name:castMemberExtVal visibility:public modality:FINAL [val]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-castMemberExtVal> (): T of <root>.Host declared in <root>.Host'
|
||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.Host.<get-castMemberExtVal>' type=kotlin.Any origin=null
|
||||
FUN name:castExtFun visibility:public modality:FINAL <T> ($receiver:kotlin.Any) returnType:T of <root>.castExtFun
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castExtFun <T> (): T of <root>.castExtFun declared in <root>'
|
||||
TYPE_OP type=T of <root>.castExtFun origin=CAST typeOperand=T of <root>.castExtFun
|
||||
GET_VAR '<this>: kotlin.Any declared in <root>.castExtFun' type=kotlin.Any origin=null
|
||||
FUN name:castFun visibility:public modality:FINAL <T> (x:kotlin.Any) returnType:T of <root>.castFun
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
VALUE_PARAMETER name:x index:0 type:kotlin.Any
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun castFun <T> (x: kotlin.Any): T of <root>.castFun declared in <root>'
|
||||
TYPE_OP type=T of <root>.castFun origin=CAST typeOperand=T of <root>.castFun
|
||||
GET_VAR 'x: kotlin.Any declared in <root>.castFun' type=kotlin.Any origin=null
|
||||
PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||
FUN name:<get-castExtVal> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-castExtVal>) returnType:T of <root>.<get-castExtVal>
|
||||
correspondingProperty: PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
|
||||
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-castExtVal>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-castExtVal> <T> (): T of <root>.<get-castExtVal> declared in <root>'
|
||||
TYPE_OP type=T of <root>.<get-castExtVal> origin=CAST typeOperand=T of <root>.<get-castExtVal>
|
||||
GET_VAR '<this>: T of <root>.<get-castExtVal> declared in <root>.<get-castExtVal>' type=T of <root>.<get-castExtVal> origin=null
|
||||
|
||||
@@ -1,16 +1,3 @@
|
||||
fun <T : Any?> castFun(x: Any): T {
|
||||
return x as T
|
||||
}
|
||||
|
||||
fun <T : Any?> Any.castExtFun(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
val <T : Any?> T.castExtVal: T
|
||||
get(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
class Host<T : Any?> {
|
||||
constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
@@ -18,8 +5,8 @@ class Host<T : Any?> {
|
||||
|
||||
}
|
||||
|
||||
fun castMemberFun(x: Any): T {
|
||||
return x as T
|
||||
fun <TF : Any?> Any.castGenericMemberExtFun(): TF {
|
||||
return <this> as TF
|
||||
}
|
||||
|
||||
fun <TF : Any?> castGenericMemberFun(x: Any): TF {
|
||||
@@ -30,18 +17,32 @@ class Host<T : Any?> {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
fun <TF : Any?> Any.castGenericMemberExtFun(): TF {
|
||||
return <this> as TF
|
||||
fun castMemberFun(x: Any): T {
|
||||
return x as T
|
||||
}
|
||||
|
||||
val Any.castMemberExtVal: T
|
||||
get(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
val <TV : Any?> TV.castGenericMemberExtVal: TV
|
||||
get(): TV {
|
||||
return <this> as TV
|
||||
}
|
||||
|
||||
val Any.castMemberExtVal: T
|
||||
get(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun <T : Any?> Any.castExtFun(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
fun <T : Any?> castFun(x: Any): T {
|
||||
return x as T
|
||||
}
|
||||
|
||||
val <T : Any?> T.castExtVal: T
|
||||
get(): T {
|
||||
return <this> as T
|
||||
}
|
||||
|
||||
|
||||
+10
-10
@@ -5,16 +5,6 @@ FILE fqName:<root> fileName:/chainOfSafeCalls.kt
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.C) returnType:<root>.C
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): <root>.C declared in <root>.C'
|
||||
GET_VAR '<this>: <root>.C declared in <root>.C.foo' type=<root>.C origin=null
|
||||
FUN name:bar visibility:public modality:FINAL <> ($this:<root>.C) returnType:<root>.C?
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): <root>.C? declared in <root>.C'
|
||||
GET_VAR '<this>: <root>.C declared in <root>.C.bar' type=<root>.C origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -28,6 +18,16 @@ FILE fqName:<root> fileName:/chainOfSafeCalls.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:bar visibility:public modality:FINAL <> ($this:<root>.C) returnType:<root>.C?
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): <root>.C? declared in <root>.C'
|
||||
GET_VAR '<this>: <root>.C declared in <root>.C.bar' type=<root>.C origin=null
|
||||
FUN name:foo visibility:public modality:FINAL <> ($this:<root>.C) returnType:<root>.C
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun foo (): <root>.C declared in <root>.C'
|
||||
GET_VAR '<this>: <root>.C declared in <root>.C.foo' type=<root>.C origin=null
|
||||
FUN name:test visibility:public modality:FINAL <> (nc:<root>.C?) returnType:<root>.C?
|
||||
VALUE_PARAMETER name:nc index:0 type:<root>.C?
|
||||
BLOCK_BODY
|
||||
|
||||
@@ -5,11 +5,11 @@ class C {
|
||||
|
||||
}
|
||||
|
||||
fun foo(): C {
|
||||
fun bar(): C? {
|
||||
return <this>
|
||||
}
|
||||
|
||||
fun bar(): C? {
|
||||
fun foo(): C {
|
||||
return <this>
|
||||
}
|
||||
|
||||
@@ -42,3 +42,4 @@ fun test(nc: C?): C? {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Vendored
+5
-5
@@ -1,8 +1,6 @@
|
||||
FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
CLASS INTERFACE name:SuspendRunnable modality:ABSTRACT visibility:public [fun] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.SuspendRunnable
|
||||
FUN name:invoke visibility:public modality:ABSTRACT <> ($this:<root>.SuspendRunnable) returnType:kotlin.Unit [suspend]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.SuspendRunnable
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -16,9 +14,8 @@ FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> (s:<root>.SuspendRunnable) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:<root>.SuspendRunnable
|
||||
BLOCK_BODY
|
||||
FUN name:invoke visibility:public modality:ABSTRACT <> ($this:<root>.SuspendRunnable) returnType:kotlin.Unit [suspend]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.SuspendRunnable
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Function0<kotlin.Unit> declared in <root>'
|
||||
@@ -27,6 +24,9 @@ FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): kotlin.Unit declared in <root>.bar'
|
||||
GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||
FUN name:foo visibility:public modality:FINAL <> (s:<root>.SuspendRunnable) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:<root>.SuspendRunnable
|
||||
BLOCK_BODY
|
||||
FUN name:test visibility:public modality:FINAL <> (f:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
Vendored
+5
-5
@@ -1,8 +1,6 @@
|
||||
FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
CLASS INTERFACE name:SuspendRunnable modality:ABSTRACT visibility:public [fun] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.SuspendRunnable
|
||||
FUN name:invoke visibility:public modality:ABSTRACT <> ($this:<root>.SuspendRunnable) returnType:kotlin.Unit [suspend]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.SuspendRunnable
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -16,9 +14,8 @@ FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:foo visibility:public modality:FINAL <> (s:<root>.SuspendRunnable) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:<root>.SuspendRunnable
|
||||
BLOCK_BODY
|
||||
FUN name:invoke visibility:public modality:ABSTRACT <> ($this:<root>.SuspendRunnable) returnType:kotlin.Unit [suspend]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.SuspendRunnable
|
||||
FUN name:bar visibility:public modality:FINAL <> () returnType:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun bar (): kotlin.Function0<kotlin.Unit> declared in <root>'
|
||||
@@ -27,6 +24,9 @@ FILE fqName:<root> fileName:/chainedFunSuspendConversionForSimpleExpression.kt
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): kotlin.Unit declared in <root>.bar'
|
||||
GET_OBJECT 'CLASS IR_EXTERNAL_DECLARATION_STUB OBJECT name:Unit modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||
FUN name:foo visibility:public modality:FINAL <> (s:<root>.SuspendRunnable) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:s index:0 type:<root>.SuspendRunnable
|
||||
BLOCK_BODY
|
||||
FUN name:test visibility:public modality:FINAL <> (f:kotlin.Function0<kotlin.Unit>) returnType:kotlin.Unit
|
||||
VALUE_PARAMETER name:f index:0 type:kotlin.Function0<kotlin.Unit>
|
||||
BLOCK_BODY
|
||||
|
||||
+84
-84
@@ -1,10 +1,78 @@
|
||||
FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1 [primary]
|
||||
CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.B
|
||||
PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 's: kotlin.Int declared in <root>.B.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-s> visibility:public modality:FINAL <> ($this:<root>.B) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-s> (): kotlin.Int declared in <root>.B'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<get-s>' type=<root>.B origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-s> visibility:public modality:FINAL <> ($this:<root>.B, <set-?>:kotlin.Int) returnType:kotlin.Unit
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<set-s>' type=<root>.B origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.B.<set-s>' type=kotlin.Int origin=null
|
||||
CONSTRUCTOR visibility:public <> (s:kotlin.Int) returnType:<root>.B [primary]
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:<root>.B, b:<root>.B) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:b index:0 type:<root>.B
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun <set-s> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
|
||||
$this: GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
other: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'b: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1
|
||||
PROPERTY name:x1 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x1 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -26,10 +94,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.<set-x1>' type=kotlin.Int origin=null
|
||||
CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1.X2
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x2 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x2 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -51,10 +115,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.X2.<set-x2>' type=kotlin.Int origin=null
|
||||
CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1.X2.X3
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2.X3 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x3 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x3 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -74,6 +134,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x3 type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.X1.X2.X3 declared in <root>.X1.X2.X3.<set-x3>' type=<root>.X1.X2.X3 origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.X2.X3.<set-x3>' type=kotlin.Int origin=null
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2.X3 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -87,6 +151,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -100,6 +168,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -171,78 +243,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
<set-?>: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_6: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.B
|
||||
CONSTRUCTOR visibility:public <> (s:kotlin.Int) returnType:<root>.B [primary]
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 's: kotlin.Int declared in <root>.B.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-s> visibility:public modality:FINAL <> ($this:<root>.B) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-s> (): kotlin.Int declared in <root>.B'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<get-s>' type=<root>.B origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-s> visibility:public modality:FINAL <> ($this:<root>.B, <set-?>:kotlin.Int) returnType:kotlin.Unit
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<set-s>' type=<root>.B origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.B.<set-s>' type=kotlin.Int origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:<root>.B, b:<root>.B) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:b index:0 type:<root>.B
|
||||
BLOCK_BODY
|
||||
CALL 'public final fun <set-s> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
|
||||
$this: GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=null
|
||||
$this: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
other: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'b: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:test3 visibility:public modality:FINAL <> ($receiver:<root>.Host, v:<root>.B) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:v index:0 type:<root>.B
|
||||
|
||||
+39
-38
@@ -1,43 +1,70 @@
|
||||
object X1 {
|
||||
class B {
|
||||
var s: Int
|
||||
field = s
|
||||
get
|
||||
set
|
||||
|
||||
constructor(s: Int = 0) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
operator fun B.plusAssign(b: B) {
|
||||
<this>.<set-s>(<set-?> = <this>.<get-s>().plus(other = b.<get-s>()))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
object X1 {
|
||||
var x1: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
object X2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x2: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
object X3 {
|
||||
var x3: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x3: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
}
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun test1(a: IntArray) {
|
||||
@@ -71,33 +98,7 @@ fun test2() {
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
class B {
|
||||
constructor(s: Int = 0) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var s: Int
|
||||
field = s
|
||||
get
|
||||
set
|
||||
|
||||
}
|
||||
|
||||
object Host {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
operator fun B.plusAssign(b: B) {
|
||||
<this>.<set-s>(<set-?> = <this>.<get-s>().plus(other = b.<get-s>()))
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun Host.test3(v: B) {
|
||||
(<this>, v).plusAssign(b = B(s = 1000))
|
||||
}
|
||||
|
||||
|
||||
+117
-117
@@ -1,10 +1,81 @@
|
||||
FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1 [primary]
|
||||
CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.B
|
||||
PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 's: kotlin.Int declared in <root>.B.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-s> visibility:public modality:FINAL <> ($this:<root>.B) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-s> (): kotlin.Int declared in <root>.B'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<get-s>' type=<root>.B origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-s> visibility:public modality:FINAL <> ($this:<root>.B, <set-?>:kotlin.Int) returnType:kotlin.Unit
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<set-s>' type=<root>.B origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.B.<set-s>' type=kotlin.Int origin=null
|
||||
CONSTRUCTOR visibility:public <> (s:kotlin.Int) returnType:<root>.B [primary]
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:<root>.B, b:<root>.B) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:b index:0 type:<root>.B
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:<root>.B [val]
|
||||
GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
CALL 'public final fun <set-s> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_0: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
other: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'b: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1
|
||||
PROPERTY name:x1 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x1 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -26,10 +97,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.<set-x1>' type=kotlin.Int origin=null
|
||||
CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1.X2
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x2 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x2 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -51,10 +118,6 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.X2.<set-x2>' type=kotlin.Int origin=null
|
||||
CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.X1.X2.X3
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2.X3 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:x3 visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:x3 type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
@@ -74,6 +137,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x3 type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.X1.X2.X3 declared in <root>.X1.X2.X3.<set-x3>' type=<root>.X1.X2.X3 origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.X1.X2.X3.<set-x3>' type=kotlin.Int origin=null
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2.X3 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -87,6 +154,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1.X2 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -100,6 +171,10 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.X1 [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -120,142 +195,67 @@ FILE fqName:<root> fileName:/complexAugmentedAssignment.kt
|
||||
CONST Int type=kotlin.Int value=0
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_0 type:kotlin.IntArray [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.IntArray [val]
|
||||
GET_VAR 'a: kotlin.IntArray declared in <root>.test1' type=kotlin.IntArray origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_1 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.Int [val]
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_2 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
GET_VAR 'var i: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=POSTFIX_INCR
|
||||
SET_VAR 'var i: kotlin.Int declared in <root>.test1' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_2: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_2: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_3 type:kotlin.Int [val]
|
||||
$this: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_3: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:kotlin.Int [val]
|
||||
CALL 'public final fun get (index: kotlin.Int): kotlin.Int declared in kotlin.IntArray' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.test1' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_1: kotlin.IntArray declared in <root>.test1' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_2: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
CALL 'public final fun set (index: kotlin.Int, value: kotlin.Int): kotlin.Unit declared in kotlin.IntArray' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_0: kotlin.IntArray declared in <root>.test1' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_1: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_1: kotlin.IntArray declared in <root>.test1' type=kotlin.IntArray origin=null
|
||||
index: GET_VAR 'val tmp_2: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
value: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_3: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_3: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_4: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_4: kotlin.Int declared in <root>.test1' type=kotlin.Int origin=null
|
||||
FUN name:test2 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||
BLOCK_BODY
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_4 type:<root>.X1 [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:<root>.X1 [val]
|
||||
GET_OBJECT 'CLASS OBJECT name:X1 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.X1
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_5 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:kotlin.Int [val]
|
||||
CALL 'public final fun <get-x1> (): kotlin.Int declared in <root>.X1' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: <root>.X1 declared in <root>.test2' type=<root>.X1 origin=null
|
||||
$this: GET_VAR 'val tmp_5: <root>.X1 declared in <root>.test2' type=<root>.X1 origin=null
|
||||
CALL 'public final fun <set-x1> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.X1' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_4: <root>.X1 declared in <root>.test2' type=<root>.X1 origin=null
|
||||
$this: GET_VAR 'val tmp_5: <root>.X1 declared in <root>.test2' type=<root>.X1 origin=null
|
||||
<set-?>: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_5: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_5: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_6: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_6: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_6 type:<root>.X1.X2 [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_7 type:<root>.X1.X2 [val]
|
||||
GET_OBJECT 'CLASS OBJECT name:X2 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.X1.X2
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_7 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_8 type:kotlin.Int [val]
|
||||
CALL 'public final fun <get-x2> (): kotlin.Int declared in <root>.X1.X2' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_6: <root>.X1.X2 declared in <root>.test2' type=<root>.X1.X2 origin=null
|
||||
$this: GET_VAR 'val tmp_7: <root>.X1.X2 declared in <root>.test2' type=<root>.X1.X2 origin=null
|
||||
CALL 'public final fun <set-x2> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.X1.X2' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_6: <root>.X1.X2 declared in <root>.test2' type=<root>.X1.X2 origin=null
|
||||
$this: GET_VAR 'val tmp_7: <root>.X1.X2 declared in <root>.test2' type=<root>.X1.X2 origin=null
|
||||
<set-?>: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_7: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_7: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
$this: GET_VAR 'val tmp_8: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_8: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_8 type:<root>.X1.X2.X3 [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_9 type:<root>.X1.X2.X3 [val]
|
||||
GET_OBJECT 'CLASS OBJECT name:X3 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.X1.X2.X3
|
||||
BLOCK type=kotlin.Int origin=POSTFIX_INCR
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_9 type:kotlin.Int [val]
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_10 type:kotlin.Int [val]
|
||||
CALL 'public final fun <get-x3> (): kotlin.Int declared in <root>.X1.X2.X3' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_8: <root>.X1.X2.X3 declared in <root>.test2' type=<root>.X1.X2.X3 origin=null
|
||||
$this: GET_VAR 'val tmp_9: <root>.X1.X2.X3 declared in <root>.test2' type=<root>.X1.X2.X3 origin=null
|
||||
CALL 'public final fun <set-x3> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.X1.X2.X3' type=kotlin.Unit origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_8: <root>.X1.X2.X3 declared in <root>.test2' type=<root>.X1.X2.X3 origin=null
|
||||
$this: GET_VAR 'val tmp_9: <root>.X1.X2.X3 declared in <root>.test2' type=<root>.X1.X2.X3 origin=null
|
||||
<set-?>: CALL 'public final fun inc (): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=POSTFIX_INCR
|
||||
$this: GET_VAR 'val tmp_9: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_9: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.B
|
||||
CONSTRUCTOR visibility:public <> (s:kotlin.Int) returnType:<root>.B [primary]
|
||||
VALUE_PARAMETER name:s index:0 type:kotlin.Int
|
||||
EXPRESSION_BODY
|
||||
CONST Int type=kotlin.Int value=0
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private
|
||||
EXPRESSION_BODY
|
||||
GET_VAR 's: kotlin.Int declared in <root>.B.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-s> visibility:public modality:FINAL <> ($this:<root>.B) returnType:kotlin.Int
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun <get-s> (): kotlin.Int declared in <root>.B'
|
||||
GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<get-s>' type=<root>.B origin=null
|
||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-s> visibility:public modality:FINAL <> ($this:<root>.B, <set-?>:kotlin.Int) returnType:kotlin.Unit
|
||||
correspondingProperty: PROPERTY name:s visibility:public modality:FINAL [var]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Int
|
||||
BLOCK_BODY
|
||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:s type:kotlin.Int visibility:private' type=kotlin.Unit origin=null
|
||||
receiver: GET_VAR '<this>: <root>.B declared in <root>.B.<set-s>' type=<root>.B origin=null
|
||||
value: GET_VAR '<set-?>: kotlin.Int declared in <root>.B.<set-s>' type=kotlin.Int origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||
CONSTRUCTOR visibility:private <> () returnType:<root>.Host [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS OBJECT name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN name:plusAssign visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:<root>.B, b:<root>.B) returnType:kotlin.Unit [operator]
|
||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.B
|
||||
VALUE_PARAMETER name:b index:0 type:<root>.B
|
||||
BLOCK_BODY
|
||||
BLOCK type=kotlin.Unit origin=PLUSEQ
|
||||
VAR IR_TEMPORARY_VARIABLE name:tmp_10 type:<root>.B [val]
|
||||
GET_VAR '<this>: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
CALL 'public final fun <set-s> (<set-?>: kotlin.Int): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_10: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
<set-?>: CALL 'public final fun plus (other: kotlin.Int): kotlin.Int declared in kotlin.Int' type=kotlin.Int origin=PLUSEQ
|
||||
$this: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=PLUSEQ
|
||||
$this: GET_VAR 'val tmp_10: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
other: CALL 'public final fun <get-s> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
|
||||
$this: GET_VAR 'b: <root>.B declared in <root>.Host.plusAssign' type=<root>.B origin=null
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
||||
overridden:
|
||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
$this: GET_VAR 'val tmp_10: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
GET_VAR 'val tmp_10: kotlin.Int declared in <root>.test2' type=kotlin.Int origin=null
|
||||
FUN name:test3 visibility:public modality:FINAL <> ($receiver:<root>.Host, v:<root>.B) returnType:kotlin.Unit
|
||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||
VALUE_PARAMETER name:v index:0 type:<root>.B
|
||||
|
||||
+90
-89
@@ -1,99 +1,15 @@
|
||||
object X1 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x1: Int
|
||||
field = 0
|
||||
class B {
|
||||
var s: Int
|
||||
field = s
|
||||
get
|
||||
set
|
||||
|
||||
object X2 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x2: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
object X3 {
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var x3: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun test1(a: IntArray) {
|
||||
var i: Int = 0
|
||||
{ // BLOCK
|
||||
val tmp_0: IntArray = a
|
||||
val tmp_1: Int = { // BLOCK
|
||||
val tmp_2: Int = i
|
||||
i = tmp_2.inc()
|
||||
tmp_2
|
||||
}
|
||||
val tmp_3: Int = tmp_0.get(index = tmp_1)
|
||||
tmp_0.set(index = tmp_1, value = tmp_3.inc())
|
||||
tmp_3
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
{ // BLOCK
|
||||
val tmp_4: X1 = X1
|
||||
{ // BLOCK
|
||||
val tmp_5: Int = tmp_4.<get-x1>()
|
||||
tmp_4.<set-x1>(<set-?> = tmp_5.inc())
|
||||
tmp_5
|
||||
}
|
||||
} /*~> Unit */
|
||||
{ // BLOCK
|
||||
val tmp_6: X2 = X2
|
||||
{ // BLOCK
|
||||
val tmp_7: Int = tmp_6.<get-x2>()
|
||||
tmp_6.<set-x2>(<set-?> = tmp_7.inc())
|
||||
tmp_7
|
||||
}
|
||||
} /*~> Unit */
|
||||
{ // BLOCK
|
||||
val tmp_8: X3 = X3
|
||||
{ // BLOCK
|
||||
val tmp_9: Int = tmp_8.<get-x3>()
|
||||
tmp_8.<set-x3>(<set-?> = tmp_9.inc())
|
||||
tmp_9
|
||||
}
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
class B {
|
||||
constructor(s: Int = 0) /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
var s: Int
|
||||
field = s
|
||||
get
|
||||
set
|
||||
|
||||
}
|
||||
|
||||
object Host {
|
||||
@@ -105,13 +21,98 @@ object Host {
|
||||
|
||||
operator fun B.plusAssign(b: B) {
|
||||
{ // BLOCK
|
||||
val tmp_10: B = <this>
|
||||
tmp_10.<set-s>(<set-?> = tmp_10.<get-s>().plus(other = b.<get-s>()))
|
||||
val tmp_0: B = <this>
|
||||
tmp_0.<set-s>(<set-?> = tmp_0.<get-s>().plus(other = b.<get-s>()))
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
object X1 {
|
||||
var x1: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
object X2 {
|
||||
var x2: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
object X3 {
|
||||
var x3: Int
|
||||
field = 0
|
||||
get
|
||||
set
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private constructor() /* primary */ {
|
||||
super/*Any*/()
|
||||
/* <init>() */
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
fun test1(a: IntArray) {
|
||||
var i: Int = 0
|
||||
{ // BLOCK
|
||||
val tmp_1: IntArray = a
|
||||
val tmp_2: Int = { // BLOCK
|
||||
val tmp_3: Int = i
|
||||
i = tmp_3.inc()
|
||||
tmp_3
|
||||
}
|
||||
val tmp_4: Int = tmp_1.get(index = tmp_2)
|
||||
tmp_1.set(index = tmp_2, value = tmp_4.inc())
|
||||
tmp_4
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
fun test2() {
|
||||
{ // BLOCK
|
||||
val tmp_5: X1 = X1
|
||||
{ // BLOCK
|
||||
val tmp_6: Int = tmp_5.<get-x1>()
|
||||
tmp_5.<set-x1>(<set-?> = tmp_6.inc())
|
||||
tmp_6
|
||||
}
|
||||
} /*~> Unit */
|
||||
{ // BLOCK
|
||||
val tmp_7: X2 = X2
|
||||
{ // BLOCK
|
||||
val tmp_8: Int = tmp_7.<get-x2>()
|
||||
tmp_7.<set-x2>(<set-?> = tmp_8.inc())
|
||||
tmp_8
|
||||
}
|
||||
} /*~> Unit */
|
||||
{ // BLOCK
|
||||
val tmp_9: X3 = X3
|
||||
{ // BLOCK
|
||||
val tmp_10: Int = tmp_9.<get-x3>()
|
||||
tmp_9.<set-x3>(<set-?> = tmp_10.inc())
|
||||
tmp_10
|
||||
}
|
||||
} /*~> Unit */
|
||||
}
|
||||
|
||||
fun Host.test3(v: B) {
|
||||
(<this>, v).plusAssign(b = B(s = 1000))
|
||||
}
|
||||
|
||||
|
||||
+20
-20
@@ -1,27 +1,7 @@
|
||||
FILE fqName:<root> fileName:/constructorWithOwnTypeParametersCall.kt
|
||||
FUN name:testKotlin visibility:public modality:FINAL <> () returnType:<root>.K1.K2<kotlin.String, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testKotlin (): <root>.K1.K2<kotlin.String, kotlin.Int> declared in <root>'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.K1.K2' type=<root>.K1.K2<kotlin.String, kotlin.Int> origin=null
|
||||
<class: T2>: kotlin.String
|
||||
$outer: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.K1' type=<root>.K1<kotlin.Int> origin=null
|
||||
<class: T1>: kotlin.Int
|
||||
FUN name:testJava visibility:public modality:FINAL <> () returnType:<root>.J1.J2<kotlin.Double, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testJava (): <root>.J1.J2<kotlin.Double, kotlin.Int> declared in <root>'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> <Y2> () declared in <root>.J1.J2' type=<root>.J1.J2<kotlin.Double, kotlin.Int> origin=null
|
||||
<class: X2>: kotlin.Double
|
||||
<Y2>: kotlin.CharSequence
|
||||
$outer: CONSTRUCTOR_CALL 'public constructor <init> <Y1> () declared in <root>.J1' type=<root>.J1<kotlin.Int> origin=null
|
||||
<class: X1>: kotlin.Int
|
||||
<Y1>: kotlin.String
|
||||
CLASS CLASS name:K1 modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.K1<T1 of <root>.K1>
|
||||
TYPE_PARAMETER name:T1 index:0 variance: superTypes:[kotlin.Number] reified:false
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.K1<T1 of <root>.K1> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
CLASS CLASS name:K2 modality:FINAL visibility:public [inner] superTypes:[kotlin.Any]
|
||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.K1.K2<T2 of <root>.K1.K2, T1 of <root>.K1>
|
||||
TYPE_PARAMETER name:T2 index:0 variance: superTypes:[kotlin.CharSequence] reified:false
|
||||
@@ -43,6 +23,10 @@ FILE fqName:<root> fileName:/constructorWithOwnTypeParametersCall.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
CONSTRUCTOR visibility:public <> () returnType:<root>.K1<T1 of <root>.K1> [primary]
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K1 modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||
overridden:
|
||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
|
||||
@@ -56,3 +40,19 @@ FILE fqName:<root> fileName:/constructorWithOwnTypeParametersCall.kt
|
||||
overridden:
|
||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||
FUN name:testJava visibility:public modality:FINAL <> () returnType:<root>.J1.J2<kotlin.Double, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testJava (): <root>.J1.J2<kotlin.Double, kotlin.Int> declared in <root>'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> <Y2> () declared in <root>.J1.J2' type=<root>.J1.J2<kotlin.Double, kotlin.Int> origin=null
|
||||
<class: X2>: kotlin.Double
|
||||
<Y2>: kotlin.CharSequence
|
||||
$outer: CONSTRUCTOR_CALL 'public constructor <init> <Y1> () declared in <root>.J1' type=<root>.J1<kotlin.Int> origin=null
|
||||
<class: X1>: kotlin.Int
|
||||
<Y1>: kotlin.String
|
||||
FUN name:testKotlin visibility:public modality:FINAL <> () returnType:<root>.K1.K2<kotlin.String, kotlin.Int>
|
||||
BLOCK_BODY
|
||||
RETURN type=kotlin.Nothing from='public final fun testKotlin (): <root>.K1.K2<kotlin.String, kotlin.Int> declared in <root>'
|
||||
CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.K1.K2' type=<root>.K1.K2<kotlin.String, kotlin.Int> origin=null
|
||||
<class: T2>: kotlin.String
|
||||
$outer: CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.K1' type=<root>.K1<kotlin.Int> origin=null
|
||||
<class: T1>: kotlin.Int
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user