commonMain.flow.terminal.Collection.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of kotlinx-coroutines-core Show documentation
Show all versions of kotlinx-coroutines-core Show documentation
Coroutines support libraries for Kotlin
/*
* Copyright 2016-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
*/
@file:JvmMultifileClass
@file:JvmName("FlowKt")
package kotlinx.coroutines.flow
import kotlinx.coroutines.*
import kotlin.jvm.*
/**
* Collects given flow into a [destination]
*/
@FlowPreview
public suspend fun Flow.toList(destination: MutableList = ArrayList()): List = toCollection(destination)
/**
* Collects given flow into a [destination]
*/
@FlowPreview
public suspend fun Flow.toSet(destination: MutableSet = LinkedHashSet()): Set = toCollection(destination)
/**
* Collects given flow into a [destination]
*/
@FlowPreview
public suspend fun > Flow.toCollection(destination: C): C {
collect { value ->
destination.add(value)
}
return destination
}