From 76a6f9a240eae229489c1b7a6865eb7c5c8af20c Mon Sep 17 00:00:00 2001 From: Philip Wedemann <22521688+hfhbd@users.noreply.github.com> Date: Fri, 23 Sep 2022 00:47:27 +0200 Subject: [PATCH] Move await* to upper class ExecutableQuery (#3524) --- .../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" }