MessageKey

interface MessageKey<out M : SingleMessage>

类型 Key. 由伴生对象实现, 表示一个 Message 对象的类型.

每个 ConstrainSingle 类型都拥有一个伴生对象来持有 MessageKey 以允许 val source = chain[MessageSource] 的用法.

用例

MessageChain.get: 允许使用数组访问操作符获取指定类型的消息元素

val source: MessageSource = chain[MessageSource]

Parameters

M

指代持有这个 Key 的消息类型

Properties

Link copied to clipboard
abstract val safeCast: (SingleMessage) -> M?

将一个 SingleMessage 强转为 M 类型. 在类型不符合时返回 null

Inheritors

Link copied to clipboard
Link copied to clipboard

Extensions

Link copied to clipboard
fun MessageKey<*>.isInstance(message: SingleMessage): Boolean

尝试 MessageKey.safeCast, 成功时返回 true

Link copied to clipboard
val <A : SingleMessage> MessageKey<A>.topmostKey: MessageKey<*>

获取最上层 MessageKey.