// @Module:Main import androidx.compose.runtime.Composable import androidx.compose.runtime.currentComposer import androidx.compose.runtime.Composer fun main() { callComposable { FooTakesTypedComposableLambda { "text" } FooTakesTypedComposableLambda2(10) { it + 100 } FooTakesTypedExtesionComposableLambda("text", Any()) { } } } fun callComposable(content: @Composable () -> Unit) { val c = content } // @Module:Lib import androidx.compose.runtime.Composable @Composable fun FooTakesTypedComposableLambda(composable: @Composable () -> T) { composable() } @Composable fun FooTakesTypedComposableLambda2(t: T, composable: @Composable (T) -> T) { composable(t) } @Composable fun FooTakesTypedExtesionComposableLambda(t: T, k: K, composable: @Composable T.(K) -> R) { t.composable(k) }