Compose Compiler Report - MusicSearch

Skippable Composables 7
Restartable Composables 8
Readonly Composables 0
Total Composables 9
Restart Groups 8
Total Groups 10
Static Arguments 6
Certain Arguments 5
Known Stable Arguments 54
Known Unstable Arguments 4
Unknown Stable Arguments 0
Total Arguments 58
Marked Stable Classes 1
Inferred Stable Classes 8
Inferred Unstable Classes 17
Inferred Uncertain Classes 1
Effectively Stable Classes 9
Total Classes 27
Memoized Lambdas 13
Singleton Lambdas 0
Singleton Composable Lambdas 2
Composable Lambdas 4
Total Lambdas 13

package name composable skippable restartable readonly inline isLambda hasDefaults defaultsGroup groups calls
ly.david.musicsearch.shared.feature.graph.PreviewArtistCollaborationGraphUi PreviewArtistCollaborationGraphUi 1 1 1 0 0 0 0 0 1 1
ly.david.musicsearch.shared.feature.graph.ArtistCollaborationGraphPresenter.present present 1 0 0 0 0 0 0 0 1 4
ly.david.musicsearch.shared.feature.graph.ArtistCollaborationGraphUi ArtistCollaborationGraphUi 1 1 1 0 0 0 0 0 1 4
ly.david.musicsearch.shared.feature.graph.ArtistCollaborationGraphUi ArtistCollaborationGraphUi 1 1 1 0 0 0 0 0 1 7

No composable found with issues 😁
1.

fun PreviewArtistCollaborationGraphUi

Skippable Restartable

2.

fun present

Non Skippable Non Restartable

3.

fun ArtistCollaborationGraphUi

Skippable Restartable

No. Stability Parameter Type
1 STABLE state ArtistCollaborationGraphUiState
2 STABLE modifier Modifier? = @static Companion
4.

fun ArtistCollaborationGraphUi

Skippable Restartable

No. Stability Parameter Type
1 UNSTABLE edges List<GraphEdge>
2 UNSTABLE nodes List<GraphNode>
3 STABLE filterText String
4 STABLE modifier Modifier? = @static Companion
5 STABLE onClick Function2<@[ParameterName(name = 'tapOffset')] Offset, @[ParameterName(name = 'drawOffset')] Offset, Unit>? = @static $composer.startReplaceableGroup(873399700)

1.

Unstable class GraphSimulationUiState

No. Status Field Type
1 UNSTABLE val edges List<GraphEdge>
2 UNSTABLE val nodes List<GraphNode>
2.

Unstable class ArtistCollaborationGraphSimulation

No. Status Field Type
1 UNSTABLE val _uiState MutableStateFlow<GraphSimulationUiState>
2 UNSTABLE var forceLinks ForceLink<GraphNode>?
3 UNSTABLE var simulation ForceSimulation<GraphNode>
3.

Unstable class Rectangle

No. Status Field Type
1 STABLE var x0 Double
2 STABLE var y0 Double
3 STABLE var x1 Double
4 STABLE var y1 Double
4.

Unstable class ForceCenter

No. Status Field Type
1 UNSTABLE var _nodes List<ForceNode<D>>
2 STABLE var center Point
5.

Unstable class ForceCollision

No. Status Field Type
1 STABLE val x Function1<ForceNode<D>, Double>
2 STABLE val y Function1<ForceNode<D>, Double>
3 STABLE var ri Double
4 STABLE var ri2 Double
5 STABLE var xi Double
6 STABLE var yi Double
7 UNSTABLE var currentNode ForceNode<D>
8 STABLE var iterations Int
9 STABLE var strength Percent
10 STABLE var radiusGet @[ExtensionFunctionType] Function1<ForceNode<D>, Double>
11 UNSTABLE var _nodes List<ForceNode<D>>
12 UNSTABLE var _radiuses List<Double>
6.

Unstable class Link

No. Status Field Type
1 UNSTABLE val source ForceNode<D>
2 UNSTABLE val target ForceNode<D>
3 STABLE val distance Double
4 STABLE var strength Double
7.

Unstable class ForceLink

No. Status Field Type
1 UNSTABLE var _nodes List<ForceNode<D>>
2 UNSTABLE var _links List<Link<D>>
3 UNSTABLE var bias Array<Double>
4 UNSTABLE var count Array<Int>
5 STABLE var iterations Int
6 STABLE var linkGet @[ExtensionFunctionType] Function1<ForceNode<D>, List<Link<D>>?>
8.

Unstable class ForceNBody

No. Status Field Type
1 STABLE var theta2 Double
2 STABLE var distanceMin2 Double
3 STABLE var distanceMax2 Double
4 STABLE val x Function1<ForceNode<D>, Double>
5 STABLE val y Function1<ForceNode<D>, Double>
6 STABLE var currentIntensity Double
7 UNSTABLE var currentNode ForceNode<D>
8 STABLE var strengthGet @[ExtensionFunctionType] Function1<ForceNode<D>, Double>
9 UNSTABLE var _nodes List<ForceNode<D>>
10 UNSTABLE var _strengths List<Double>
9.

Unstable class ForceNode

No. Status Field Type
1 STABLE val index Int
2 RUNTIME val domain D
3 STABLE var x Double
4 STABLE var y Double
5 STABLE var vx Double
6 STABLE var vy Double
7 STABLE var fixedX Double?
8 STABLE var fixedY Double?
10.

Unstable class ForcePoint

No. Status Field Type
1 STABLE val defaultPoint Point
2 STABLE var pointGet @[ExtensionFunctionType] Function1<ForceNode<D>, Point>
3 STABLE var strengthGet @[ExtensionFunctionType] Function1<ForceNode<D>, Percent>
4 UNSTABLE var _nodes List<ForceNode<D>>
5 UNSTABLE var _strengths List<Double>
6 UNSTABLE var _x List<Double>
7 UNSTABLE var _y List<Double>
11.

Unstable class ForceRadial

No. Status Field Type
1 STABLE var radiusGet @[ExtensionFunctionType] Function1<ForceNode<D>, Double>
2 STABLE var strengthGet @[ExtensionFunctionType] Function1<ForceNode<D>, Percent>
3 STABLE var centerGet @[ExtensionFunctionType] Function1<ForceNode<D>, Point>
4 STABLE val defaultCenter Point
5 UNSTABLE var _nodes List<ForceNode<D>>
6 UNSTABLE var _strengths List<Double>
7 UNSTABLE var _centers List<Point>
8 UNSTABLE var _radiuses List<Double>
12.

Unstable class ForceSimulation

No. Status Field Type
1 STABLE var started Boolean
2 STABLE var initForceNode @[ExtensionFunctionType] Function1<ForceNode<D>, Unit>
3 UNSTABLE var domainObjects List<D>
4 UNSTABLE var _nodes List<ForceNode<D>>
5 UNSTABLE var _forces List<Force<D>>
6 UNSTABLE val tickEvents MutableMap<String, Function1<ForceSimulation<D>, Unit>>
7 UNSTABLE val endEvents MutableMap<String, Function1<ForceSimulation<D>, Unit>>
8 STABLE var intensity Percent
9 STABLE var intensityMin Percent
10 STABLE var intensityDecay Percent
11 STABLE var intensityTarget Percent
12 STABLE var _friction Double
13.

Unstable class ForceX

No. Status Field Type
1 STABLE var xGet @[ExtensionFunctionType] Function1<ForceNode<D>, Double>
2 STABLE var strengthGet @[ExtensionFunctionType] Function1<ForceNode<D>, Percent>
3 UNSTABLE var _nodes List<ForceNode<D>>
4 UNSTABLE var _strengths List<Double>
5 UNSTABLE var _x List<Double>
14.

Unstable class ForceY

No. Status Field Type
1 STABLE var yGet @[ExtensionFunctionType] Function1<ForceNode<D>, Double>
2 STABLE var strengthGet @[ExtensionFunctionType] Function1<ForceNode<D>, Percent>
3 UNSTABLE var _nodes List<ForceNode<D>>
4 UNSTABLE var _strengths List<Double>
5 UNSTABLE var _y List<Double>
15.

Unstable class InternalNode

No. Status Field Type
1 RUNTIME var NE_0 QuadtreeNode<D>?
2 RUNTIME var NW_1 QuadtreeNode<D>?
3 RUNTIME var SE_2 QuadtreeNode<D>?
4 RUNTIME var SW_3 QuadtreeNode<D>?
5 STABLE var value Double?
6 STABLE var x Double
7 STABLE var y Double
16.

Unstable class LeafNode

No. Status Field Type
1 RUNTIME val data D
2 UNSTABLE var next LeafNode<D>?
3 STABLE var value Double?
4 STABLE var x Double
5 STABLE var y Double
17.

Missing class Quad

No. Status Field Type
1 RUNTIME val node QuadtreeNode<D>?
2 STABLE val x0 Double
3 STABLE val y0 Double
4 STABLE val x1 Double
5 STABLE val y1 Double
18.

Unstable class Quadtree

No. Status Field Type
1 STABLE val x Function1<D, Double>
2 STABLE val y Function1<D, Double>
3 RUNTIME var root QuadtreeNode<D>?
4 UNSTABLE var rectangle Rectangle
1.

Stable class ArtistCollaborationGraphPresenter

No. Status Field Type
1 STABLE val screen ArtistCollaborationScreen
2 STABLE val navigator Navigator
3 UNSTABLE val graphSimulation ArtistCollaborationGraphSimulation
4 UNSTABLE val artistCollaborationRepository ArtistCollaborationRepository
2.

Stable class ArtistCollaborationGraphUiState

No. Status Field Type
1 STABLE val artistName String
2 STABLE val topAppBarFilterState TopAppBarFilterState
3 UNSTABLE val edges List<GraphEdge>
4 UNSTABLE val nodes List<GraphNode>
5 STABLE val eventSink Function1<ArtistCollaborationGraphUiEvent, Unit>
3.

Stable class NavigateUp

4.

Stable class ClickItem

No. Status Field Type
1 STABLE val entity MusicBrainzEntity
2 STABLE val id String
3 STABLE val title String?
5.

Stable class GraphNode

No. Status Field Type
1 STABLE val id String
2 STABLE val name String
3 STABLE val entity MusicBrainzEntity
4 STABLE val radius Double
5 STABLE val x Double
6 STABLE val y Double
6.

Stable class GraphEdge

No. Status Field Type
1 STABLE val x0 Double
2 STABLE val y0 Double
3 STABLE val x1 Double
4 STABLE val y1 Double
7.

Stable class Point

No. Status Field Type
1 STABLE val x Double
2 STABLE val y Double
8.

Stable class Vector

No. Status Field Type
1 STABLE val vx Double
2 STABLE val vy Double
9.

Stable class NodePair

No. Status Field Type
1 RUNTIME val source QuadtreeNode<D>
2 RUNTIME val target QuadtreeNode<D>