orElse

inline fun <T : R, R : SingleMessage?> MessageChain.orElse(lazyDefault: () -> R): OrNullDelegate<R>

提供一个类型的 Message 的委托, 若不存在这个类型的 Message 则委托会提供 null

用法:

val message: MessageChain

val at: At by message.orElse { /* 返回一个 At */ }
val atNullable: At? by message.orElse { /* 返回一个 At? */}

See also

提供一个不存在则 null 的委托