From 0ed467bef837e5120da96bb9f9d0c7b6cfce8112 Mon Sep 17 00:00:00 2001 From: Philip Wedemann <22521688+hfhbd@users.noreply.github.com> Date: Thu, 22 Sep 2022 16:28:08 +0200 Subject: [PATCH] Move await* to upper class ExecutableQuery --- .../cash/sqldelight/async/coroutines/QueryExtensions.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/extensions/async-extensions/src/commonMain/kotlin/app/cash/sqldelight/async/coroutines/QueryExtensions.kt b/extensions/async-extensions/src/commonMain/kotlin/app/cash/sqldelight/async/coroutines/QueryExtensions.kt index 17bb4ea359b..52808bc141a 100644 --- a/extensions/async-extensions/src/commonMain/kotlin/app/cash/sqldelight/async/coroutines/QueryExtensions.kt +++ b/extensions/async-extensions/src/commonMain/kotlin/app/cash/sqldelight/async/coroutines/QueryExtensions.kt @@ -1,19 +1,19 @@ package app.cash.sqldelight.async.coroutines -import app.cash.sqldelight.Query +import app.cash.sqldelight.ExecutableQuery -suspend fun Query.awaitAsList(): List = execute { cursor -> +suspend fun ExecutableQuery.awaitAsList(): List = execute { cursor -> val result = mutableListOf() while (cursor.next()) result.add(mapper(cursor)) result }.await() -suspend fun Query.awaitAsOne(): T { +suspend fun ExecutableQuery.awaitAsOne(): T { return awaitAsOneOrNull() ?: throw NullPointerException("ResultSet returned null for $this") } -suspend fun Query.awaitAsOneOrNull(): T? = execute { cursor -> +suspend fun ExecutableQuery.awaitAsOneOrNull(): T? = execute { cursor -> if (!cursor.next()) return@execute null val value = mapper(cursor) check(!cursor.next()) { "ResultSet returned more than 1 row for $this" }