PSI2IR: SAM conversion in varargs

This commit is contained in:
Dmitry Petrov
2020-01-29 16:15:01 +03:00
parent 186a456e01
commit 53f66e9509
9 changed files with 200 additions and 19 deletions
@@ -20,9 +20,6 @@ FILE fqName:<root> fileName:/withAdaptationForSam.kt
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:useVarargFoo visibility:public modality:FINAL <> (foos:kotlin.Array<<root>.IFoo>) returnType:kotlin.Unit
VALUE_PARAMETER name:foos index:0 type:kotlin.Array<<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
BLOCK_BODY
@@ -6,15 +6,9 @@ fun interface IFoo {
fun useFoo(foo: IFoo) {}
fun useVarargFoo(vararg foos: IFoo) {}
fun withVararg(vararg xs: Int) = 42
fun test() {
useFoo(::withVararg)
}
// TODO
//fun testVarargOfSams() {
// useVarargFoo(::withVararg)
//}
@@ -20,9 +20,6 @@ FILE fqName:<root> fileName:/withAdaptationForSam.kt
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:useVarargFoo visibility:public modality:FINAL <> (foos:kotlin.Array<out <root>.IFoo>) returnType:kotlin.Unit
VALUE_PARAMETER name:foos index:0 type:kotlin.Array<out <root>.IFoo> varargElementType:<root>.IFoo [vararg]
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