diff --git a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/convension.kt b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/convension.kt index 9de462ff2..35d312eda 100644 --- a/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/convension.kt +++ b/mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/convension.kt @@ -338,7 +338,8 @@ internal fun List.joinToMessageChain(groupIdOrZero: Long, bot: B /** * [JsonMessage] */ - 1 -> list.add(JsonMessage(content)) + 1 -> @Suppress("DEPRECATION_ERROR") + list.add(JsonMessage(content)) /** * [LongMessage], [ForwardMessage] */ @@ -355,6 +356,7 @@ internal fun List.joinToMessageChain(groupIdOrZero: Long, bot: B // 104 新群员入群的消息 else -> { if (element.richMsg.serviceId == 60 || content.startsWith(" { override val typeName: String get() = "JsonMessage" @@ -136,7 +165,12 @@ class JsonMessage(content: String) : ServiceMessage(1, content) { * * @see buildXmlMessage 使用 DSL 构造一个 XML 消息 */ +@PlannedRemoval("1.0.0") +@Deprecated("use ServiceMessage with serviceId 1", + level = DeprecationLevel.ERROR, + replaceWith = ReplaceWith("ServiceMessage")) @MiraiExperimentalAPI +@Suppress("DEPRECATION_ERROR") @SinceMirai("0.27.0") class XmlMessage @MiraiExperimentalAPI("Maybe replaced with an enum") constructor(serviceId: Int = 60, content: String) : ServiceMessage(serviceId, content) { @@ -182,10 +216,11 @@ commonElem=CommonElem#750141174 { /** * 构造一条 XML 消息 */ +@Suppress("DEPRECATION_ERROR") @JvmSynthetic @SinceMirai("0.27.0") @MiraiExperimentalAPI -inline fun buildXmlMessage(serviceId: Int, block: @XmlMessageDsl XmlMessageBuilder.() -> Unit): XmlMessage = +inline fun buildXmlMessage(serviceId: Int, block: @XmlMessageDsl XmlMessageBuilder.() -> Unit): ServiceMessage = XmlMessage(serviceId, XmlMessageBuilder().apply(block).text) @Target(CLASS, FUNCTION, TYPE) @@ -261,4 +296,5 @@ class XmlMessageBuilder( @SinceMirai("0.27.0") @MiraiExperimentalAPI @Deprecated("specify serviceId explicitly", ReplaceWith("buildXmlMessage(60, block)")) -inline fun buildXmlMessage(block: @XmlMessageDsl XmlMessageBuilder.() -> Unit): XmlMessage = buildXmlMessage(60, block) +inline fun buildXmlMessage(block: @XmlMessageDsl XmlMessageBuilder.() -> Unit): ServiceMessage = + buildXmlMessage(60, block) diff --git a/mirai-core/src/commonMain/kotlin/net.mamoe.mirai/message/data/impl.kt b/mirai-core/src/commonMain/kotlin/net.mamoe.mirai/message/data/impl.kt index 3f1bbbd29..a6d528671 100644 --- a/mirai-core/src/commonMain/kotlin/net.mamoe.mirai/message/data/impl.kt +++ b/mirai-core/src/commonMain/kotlin/net.mamoe.mirai/message/data/impl.kt @@ -198,7 +198,7 @@ internal inline fun List.indexOfFirst(offset: Int, predicate: (T) -> Bool @OptIn(MiraiExperimentalAPI::class) @JvmSynthetic -@Suppress("UNCHECKED_CAST") +@Suppress("UNCHECKED_CAST", "DEPRECATION_ERROR") internal fun MessageChain.firstOrNullImpl(key: Message.Key): M? = when (key) { At -> firstIsInstanceOrNull() AtAll -> firstIsInstanceOrNull() @@ -221,6 +221,7 @@ internal fun MessageChain.firstOrNullImpl(key: Message.Key): M? OnlineMessageSource.Incoming.FromFriend -> firstIsInstanceOrNull() OnlineMessageSource -> firstIsInstanceOrNull() XmlMessage -> firstIsInstanceOrNull() + LongMessage -> firstIsInstanceOrNull() JsonMessage -> firstIsInstanceOrNull() RichMessage -> firstIsInstanceOrNull() LightApp -> firstIsInstanceOrNull()