Join us for ⁠#Android11: The Beta Launch Show on June 3!

RestartableFunction

@Stable class RestartableFunction<P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21, R> : () -> R, (Composer<*>) -> R, (P1, Composer<*>) -> R, (P1, P2, Composer<*>) -> R, (P1, P2, P3, Composer<*>) -> R, (P1, P2, P3, P4, Composer<*>) -> R, (P1, P2, P3, P4, P5, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, Composer<*>) -> R, (P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12, P13, P14, P15, P16, P17, P18, P19, P20, P21, Composer<*>) -> R
kotlin.Any
   ↳ androidx.compose.internal.RestartableFunction

A Restart is created to hold composable lambdas to track when they are invoked allowing the invocations to be invalidated when a new composable lambda is created during composition.

This allows much of the call-graph to be skipped when a composable function is passed through multiple levels of composable functions.

Summary

Public constructors

<init>(key: Int, tracked: Boolean)

A Restart is created to hold composable lambdas to track when they are invoked allowing the invocations to be invalidated when a new composable lambda is created during composition.

Public methods

R

R

R
invoke(p1: P1, c: Composer<*>)

R
invoke(p1: P1, p2: P2, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, p17: P17, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, p17: P17, p18: P18, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, p17: P17, p18: P18, p19: P19, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, p17: P17, p18: P18, p19: P19, p20: P20, c: Composer<*>)

R
invoke(p1: P1, p2: P2, p3: P3, p4: P4, p5: P5, p6: P6, p7: P7, p8: P8, p9: P9, p10: P10, p11: P11, p12: P12, p13: P13, p14: P14, p15: P15, p16: P16, p17: P17, p18: P18, p19: P19, p20: P20, p21: P21, c: Composer<*>)

Unit
update(block: Any)

Inherited extension functions

From androidx.compose.kotlin.Function0
() -> Unit
() -> Unit.orEmpty()

Properties

Int

Public constructors

<init>

RestartableFunction(
    key: Int,
    tracked: Boolean)

A Restart is created to hold composable lambdas to track when they are invoked allowing the invocations to be invalidated when a new composable lambda is created during composition.

This allows much of the call-graph to be skipped when a composable function is passed through multiple levels of composable functions.

Public methods

invoke

fun invoke(): R

invoke

fun invoke(c: Composer<*>): R

invoke

fun invoke(
    p1: P1,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    p17: P17,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    p17: P17,
    p18: P18,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    p17: P17,
    p18: P18,
    p19: P19,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    p17: P17,
    p18: P18,
    p19: P19,
    p20: P20,
    c: Composer<*>
): R

invoke

fun invoke(
    p1: P1,
    p2: P2,
    p3: P3,
    p4: P4,
    p5: P5,
    p6: P6,
    p7: P7,
    p8: P8,
    p9: P9,
    p10: P10,
    p11: P11,
    p12: P12,
    p13: P13,
    p14: P14,
    p15: P15,
    p16: P16,
    p17: P17,
    p18: P18,
    p19: P19,
    p20: P20,
    p21: P21,
    c: Composer<*>
): R

update

fun update(block: Any): Unit

Properties

key

val key: Int