| // |
| // Source |
| // ------------------------------------------ |
| |
| import androidx.compose.runtime.Composable |
| import androidx.compose.runtime.NonRestartableComposable |
| |
| |
| @Composable |
| fun Test() { |
| A(1) |
| B() |
| B(2) |
| } |
| |
| // |
| // Transformed IR |
| // ------------------------------------------ |
| |
| @Composable |
| fun Test(%composer: Composer?, %changed: Int) { |
| %composer = %composer.startRestartGroup(<>) |
| sourceInformation(%composer, "C(Test)<A(1)>,<B()>,<B(2)>:Test.kt") |
| if (%changed != 0 || !%composer.skipping) { |
| if (isTraceInProgress()) { |
| traceEventStart(<>, %changed, -1, <>) |
| } |
| A(1, %composer, 0b0110) |
| B(0, %composer, 0, 0b0001) |
| B(2, %composer, 0b0110, 0) |
| if (isTraceInProgress()) { |
| traceEventEnd() |
| } |
| } else { |
| %composer.skipToGroupEnd() |
| } |
| %composer.endRestartGroup()?.updateScope { %composer: Composer?, %force: Int -> |
| Test(%composer, updateChangedFlags(%changed or 0b0001)) |
| } |
| } |