42 lines
1.8 KiB
Plaintext
Vendored
42 lines
1.8 KiB
Plaintext
Vendored
FILE: lambdaWithReceiver.kt
|
|
public abstract interface A : R|kotlin/Any| {
|
|
public abstract fun foo(): R|kotlin/Unit|
|
|
|
|
}
|
|
public final fun <T> myWith(receiver: R|T|, block: R|T.() -> kotlin/Unit|): R|kotlin/Unit| {
|
|
R|<local>/block|.R|SubstitutionOverride<kotlin/Function1.invoke: R|kotlin/Unit|>|(R|<local>/receiver|)
|
|
}
|
|
public final fun <T> R|T|.myApply(block: R|T.() -> kotlin/Unit|): R|kotlin/Unit| {
|
|
R|<local>/block|.R|SubstitutionOverride<kotlin/Function1.invoke: R|kotlin/Unit|>|(this@R|/myApply|)
|
|
}
|
|
public final fun withA(block: R|A.() -> kotlin/Unit|): R|kotlin/Unit| {
|
|
}
|
|
public final fun test_1(): R|kotlin/Unit| {
|
|
R|/withA|(<L> = withA@fun R|A|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
|
|
this@R|special/anonymous|.R|/A.foo|()
|
|
}
|
|
)
|
|
}
|
|
public final fun test_2(a: R|A|): R|kotlin/Unit| {
|
|
R|/myWith|<R|A|>(R|<local>/a|, <L> = myWith@fun R|A|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
|
|
this@R|special/anonymous|.R|/A.foo|()
|
|
}
|
|
)
|
|
}
|
|
public final fun test_3(a: R|A|): R|kotlin/Unit| {
|
|
R|<local>/a|.R|/myApply|<R|A|>(<L> = myApply@fun R|A|.<anonymous>(): R|kotlin/Unit| <inline=NoInline> {
|
|
this@R|special/anonymous|.R|/A.foo|()
|
|
}
|
|
)
|
|
}
|
|
public final fun complexLambda(block: R|kotlin/Int.(kotlin/String) -> kotlin/Unit|): R|kotlin/Unit| {
|
|
}
|
|
public final fun test_4(): R|kotlin/Unit| {
|
|
R|/complexLambda|(<L> = complexLambda@fun R|kotlin/Int|.<anonymous>(it: R|kotlin/String|): R|kotlin/Unit| <inline=NoInline> {
|
|
this@R|special/anonymous|.R|kotlin/Int.inc|()
|
|
this@R|special/anonymous|.R|kotlin/Int.inc|()
|
|
R|<local>/it|.R|kotlin/String.length|
|
|
}
|
|
)
|
|
}
|