diff --git a/mirai-core-api/src/commonMain/kotlin/event/select.kt b/mirai-core-api/src/commonMain/kotlin/event/select.kt index 079c50a5c..4be56a125 100644 --- a/mirai-core-api/src/commonMain/kotlin/event/select.kt +++ b/mirai-core-api/src/commonMain/kotlin/event/select.kt @@ -56,11 +56,12 @@ import net.mamoe.mirai.utils.MiraiExperimentalApi * @see nextMessage 挂起协程并等待下一条消息 */ @Suppress("unused") +@BuilderInference public suspend inline fun T.whileSelectMessages( timeoutMillis: Long = -1, filterContext: Boolean = true, priority: Listener.EventPriority = EventPriority.MONITOR, - crossinline selectBuilder: @MessageDsl MessageSelectBuilder.() -> Unit + @BuilderInference crossinline selectBuilder: @MessageDsl MessageSelectBuilder.() -> Unit ): Unit = whileSelectMessagesImpl(timeoutMillis, filterContext, priority, selectBuilder) /** @@ -68,11 +69,12 @@ public suspend inline fun T.whileSelectMessages( */ @MiraiExperimentalApi @JvmName("selectMessages1") +@BuilderInference public suspend inline fun T.selectMessagesUnit( timeoutMillis: Long = -1, filterContext: Boolean = true, priority: Listener.EventPriority = EventPriority.MONITOR, - crossinline selectBuilder: @MessageDsl MessageSelectBuilderUnit.() -> Unit + @BuilderInference crossinline selectBuilder: @MessageDsl MessageSelectBuilderUnit.() -> Unit ): Unit = selectMessagesImpl(timeoutMillis, true, filterContext, priority, selectBuilder) @@ -97,12 +99,12 @@ public suspend inline fun T.selectMessagesUnit( * @see nextMessage 挂起协程并等待下一条消息 */ @Suppress("unused") // false positive -// @BuilderInference // https://youtrack.jetbrains.com/issue/KT-37716 +@BuilderInference public suspend inline fun T.selectMessages( timeoutMillis: Long = -1, filterContext: Boolean = true, priority: Listener.EventPriority = EventPriority.MONITOR, - // @BuilderInference + @BuilderInference crossinline selectBuilder: @MessageDsl MessageSelectBuilder.() -> Unit ): R = selectMessagesImpl(