INNER CODE UNIT · Kotlin

dispose

M66B/FairEmail · app/src/main/java/androidx/lifecycle/CoroutineLiveData.kt:131

    override fun dispose() {
        CoroutineScope(Dispatchers.Main.immediate).launch { removeSource() }
    }

    @MainThread
    private fun removeSource() {
        if (!disposed) {
            mediator.removeSource(source)
            disposed = true
        }
    }
}

internal typealias Block<T> = suspend LiveDataScope<T>.() -> Unit

/** Handles running a block at most once to completion. */
internal class BlockRunner<T>(
    private val liveData: CoroutineLiveData<T>,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…