From ca6dbd2740a16909e927dd33486e70e932cf1d4c Mon Sep 17 00:00:00 2001 From: Him188 Date: Thu, 7 Jan 2021 21:45:09 +0800 Subject: [PATCH] [Review] Improve Message.isContentEmpty, add Message.isContentBlank --- .../commonMain/kotlin/message/data/Message.kt | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/mirai-core-api/src/commonMain/kotlin/message/data/Message.kt b/mirai-core-api/src/commonMain/kotlin/message/data/Message.kt index e8323cf0a..151ee34ad 100644 --- a/mirai-core-api/src/commonMain/kotlin/message/data/Message.kt +++ b/mirai-core-api/src/commonMain/kotlin/message/data/Message.kt @@ -288,20 +288,24 @@ public suspend inline fun Message.sendTo(contact: C): MessageRecei /** - * 判断消息内容是否为空. - * - * 以下情况视为 "空消息": - * - * - 是 [MessageMetadata] (因为 [MessageMetadata.contentToString] 都必须返回空字符串) - * - [PlainText] 长度为 0 - * - [MessageChain] 所有元素都满足 [isContentEmpty] + * 当消息内容为空时返回 `true`. + * @see String.isEmpty */ public fun Message.isContentEmpty(): Boolean { return when (this) { - is MessageMetadata -> true - is PlainText -> this.content.isEmpty() is MessageChain -> this.all { it.isContentEmpty() } - else -> false + else -> this.content.isEmpty() + } +} + +/** + * 当消息内容为空白时返回 `true`. + * @see String.isBlank + */ +public fun Message.isContentBlank(): Boolean { + return when (this) { + is MessageChain -> this.all { it.isContentBlank() } + else -> this.content.isBlank() } }