[core] Implement ConstrainSingle for Audio (fix #2093)

This commit is contained in:
Him188 2022-08-12 09:14:16 +08:00
parent ff74129974
commit f96c156d82
No known key found for this signature in database
GPG Key ID: BA439CDDCF652375
3 changed files with 7 additions and 3 deletions

View File

@ -3489,7 +3489,7 @@ public final class net/mamoe/mirai/message/data/AtAll : net/mamoe/mirai/message/
public fun toString ()Ljava/lang/String;
}
public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/mirai/message/data/MessageContent {
public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/mirai/message/data/ConstrainSingle, net/mamoe/mirai/message/data/MessageContent {
public static final field Key Lnet/mamoe/mirai/message/data/Audio$Key;
public fun contentToString ()Ljava/lang/String;
public abstract fun getCodec ()Lnet/mamoe/mirai/message/data/AudioCodec;
@ -3497,6 +3497,7 @@ public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/m
public abstract fun getFileMd5 ()[B
public abstract fun getFileSize ()J
public abstract fun getFilename ()Ljava/lang/String;
public fun getKey ()Lnet/mamoe/mirai/message/data/MessageKey;
public abstract fun toString ()Ljava/lang/String;
}

View File

@ -3489,7 +3489,7 @@ public final class net/mamoe/mirai/message/data/AtAll : net/mamoe/mirai/message/
public fun toString ()Ljava/lang/String;
}
public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/mirai/message/data/MessageContent {
public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/mirai/message/data/ConstrainSingle, net/mamoe/mirai/message/data/MessageContent {
public static final field Key Lnet/mamoe/mirai/message/data/Audio$Key;
public fun contentToString ()Ljava/lang/String;
public abstract fun getCodec ()Lnet/mamoe/mirai/message/data/AudioCodec;
@ -3497,6 +3497,7 @@ public abstract interface class net/mamoe/mirai/message/data/Audio : net/mamoe/m
public abstract fun getFileMd5 ()[B
public abstract fun getFileSize ()J
public abstract fun getFilename ()Ljava/lang/String;
public fun getKey ()Lnet/mamoe/mirai/message/data/MessageKey;
public abstract fun toString ()Ljava/lang/String;
}

View File

@ -63,7 +63,7 @@ import kotlin.time.Duration.Companion.seconds
*
* @since 2.7
*/
public sealed interface Audio : MessageContent {
public sealed interface Audio : MessageContent, ConstrainSingle {
public companion object Key :
AbstractPolymorphicMessageKey<MessageContent, Audio>(MessageContent, { it.safeCast() })
@ -112,6 +112,8 @@ public sealed interface Audio : MessageContent {
override fun <D, R> accept(visitor: MessageVisitor<D, R>, data: D): R {
return visitor.visitAudio(this, data)
}
override val key: MessageKey<*> get() = Key
}