1
0
mirror of https://github.com/mamoe/mirai.git synced 2025-04-14 23:20:49 +08:00

Add ForwardMessageBuilder.toRawForwardMessage and make RawForwardMessage stable ()

* Add `ForwardMessageBuilder.toRawForwardMessage` and make RawForwardMessage stable.

* apiDump
This commit is contained in:
Him188 2021-04-05 22:35:52 +08:00 committed by GitHub
parent 21e8852e0f
commit 45aca5f37d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 13 additions and 10 deletions
binary-compatibility-validator
mirai-core-api/src/commonMain/kotlin/message/data

View File

@ -4301,6 +4301,7 @@ public final class net/mamoe/mirai/message/data/ForwardMessageBuilder : java/uti
public fun subList (II)Ljava/util/List;
public fun toArray ()[Ljava/lang/Object;
public fun toArray ([Ljava/lang/Object;)[Ljava/lang/Object;
public final fun toRawForwardMessage ()Lnet/mamoe/mirai/message/data/RawForwardMessage;
}
public final class net/mamoe/mirai/message/data/ForwardMessageBuilder$BuilderNode : net/mamoe/mirai/message/data/ForwardMessage$INode {

View File

@ -4301,6 +4301,7 @@ public final class net/mamoe/mirai/message/data/ForwardMessageBuilder : java/uti
public fun subList (II)Ljava/util/List;
public fun toArray ()[Ljava/lang/Object;
public fun toArray ([Ljava/lang/Object;)[Ljava/lang/Object;
public final fun toRawForwardMessage ()Lnet/mamoe/mirai/message/data/RawForwardMessage;
}
public final class net/mamoe/mirai/message/data/ForwardMessageBuilder$BuilderNode : net/mamoe/mirai/message/data/ForwardMessage$INode {

View File

@ -31,7 +31,6 @@ import net.mamoe.mirai.utils.toLongUnsigned
* [RawForwardMessage] 可以序列化保存, 也可以被多次[渲染][RawForwardMessage.render]产生不同格式的 [ForwardMessage].
*/
@Serializable
@MiraiExperimentalApi
public data class RawForwardMessage(
/**
* 消息列表
@ -745,16 +744,18 @@ public class ForwardMessageBuilder private constructor(
// endregion
/**
* 构造 [RawForwardMessage]. [RawForwardMessage] 可以被多个 [DisplayStrategy] [渲染][RawForwardMessage.render].
* @since 2.6
*/
public fun toRawForwardMessage(): RawForwardMessage = RawForwardMessage(container.map {
ForwardMessage.Node(it.senderId, it.time, it.senderName, it.messageChain)
})
/** 构造 [ForwardMessage] */
public fun build(): ForwardMessage = RawForwardMessage(container.map {
ForwardMessage.Node(
it.senderId,
it.time,
it.senderName,
it.messageChain
)
}).render(this.displayStrategy)
/**
* 使用 [displayStrategy] 渲染并构造可以发送的 [ForwardMessage].
*/
public fun build(): ForwardMessage = toRawForwardMessage().render(this.displayStrategy)
internal fun Bot.smartName(): String = when (val c = this@ForwardMessageBuilder.context) {
is Group -> c.botAsMember.nameCardOrNick