22 lines
686 B
Kotlin
22 lines
686 B
Kotlin
package io.element.android.x.core.compose
|
|
|
|
import android.util.Log
|
|
import androidx.compose.runtime.Composable
|
|
import androidx.compose.runtime.SideEffect
|
|
import androidx.compose.runtime.remember
|
|
import io.element.android.x.core.BuildConfig
|
|
|
|
// Note the inline function below which ensures that this function is essentially
|
|
// copied at the call site to ensure that its logging only recompositions from the
|
|
// original call site.
|
|
@Composable
|
|
inline fun LogCompositions(tag: String, msg: String) {
|
|
if (BuildConfig.DEBUG) {
|
|
val ref = remember { Ref(0) }
|
|
SideEffect { ref.value++ }
|
|
Log.d(tag, "Compositions: $msg ${ref.value}")
|
|
}
|
|
}
|
|
|
|
class Ref(var value: Int)
|