One more test

This commit is contained in:
Valentin Kipyatkov
2020-04-13 09:17:34 +03:00
parent cc6090347a
commit 8a1ea7b45e
3 changed files with 34 additions and 0 deletions
@@ -0,0 +1,9 @@
// FLOW: OUT
fun String.foo(<caret>p: String) {
val v1 = bar(p) { { this } }
}
inline fun bar(x: String, lambda: () -> String.() -> String): String {
return lambda()(x)
}
@@ -0,0 +1,20 @@
3 fun String.foo(<bold>p: String</bold>) {
4 val v1 = bar(<bold>p</bold>) { { this } }
7 (INLINE CALL bar) inline fun bar(<bold>x: String</bold>, lambda: () -> String.() -> String): String {
8 (INLINE CALL bar) return lambda()(<bold>x</bold>)
8 (INLINE CALL bar) [LAMBDA RECEIVER IN] return <bold>lambda()</bold>(x)
8 (INLINE CALL bar) [LAMBDA IN] [LAMBDA RECEIVER IN] return <bold>lambda</bold>()(x)
7 (INLINE CALL bar) [LAMBDA IN] [LAMBDA RECEIVER IN] inline fun bar(x: String, <bold>lambda: () -> String.() -> String</bold>): String {
4 [LAMBDA IN] [LAMBDA RECEIVER IN] val v1 = bar(p) <bold>{ { this } }</bold>
4 [LAMBDA RECEIVER IN] val v1 = bar(p) <bold>{ { this } }</bold>
4 [LAMBDA RECEIVER IN] val v1 = bar(p) { <bold>{ this }</bold> }
4 val v1 = bar(p) { { <bold>this</bold> } }
4 val v1 = bar(p) { <bold>{ this }</bold> }
4 [LAMBDA CALLS] val v1 = bar(p) { <bold>{ this }</bold> }
4 [LAMBDA CALLS] val v1 = bar(p) <bold>{ { this } }</bold>
4 [LAMBDA CALLS] [LAMBDA CALLS] val v1 = bar(p) <bold>{ { this } }</bold>
7 (INLINE CALL bar) [LAMBDA CALLS] [LAMBDA CALLS] inline fun bar(x: String, <bold>lambda: () -> String.() -> String</bold>): String {
8 (INLINE CALL bar) [LAMBDA CALLS] return <bold>lambda()</bold>(x)
8 (INLINE CALL bar) return <bold>lambda()(x)</bold>
4 val v1 = <bold>bar(p) { { this } }</bold>
4 val <bold>v1 = bar(p) { { this } }</bold>
@@ -603,6 +603,11 @@ public class SlicerTreeTestGenerated extends AbstractSlicerTreeTest {
runTest("idea/testData/slicer/outflow/invokeExtensionLambda.kt");
}
@TestMetadata("invokeExtensionLambda2.kt")
public void testInvokeExtensionLambda2() throws Exception {
runTest("idea/testData/slicer/outflow/invokeExtensionLambda2.kt");
}
@TestMetadata("invokeLambdaSecondParam.kt")
public void testInvokeLambdaSecondParam() throws Exception {
runTest("idea/testData/slicer/outflow/invokeLambdaSecondParam.kt");