Florian
inline fun <reified T> Query.asFlow() = callbackFlow<List<T>> { val registration = addSnapshotListener { snapshot, error -> if (error != null) { cancel(CancellationException("Query snapshot error", error)) } offer(snapshot?.toObjects(T::class.java) ?: emptyList()) } awaitClose { registration.remove() } }
Adam Powell
cancel
louiscad
cancel()
callbackFlow
A modern programming language that makes developers happier.