Add ListenerFilter.reply

This commit is contained in:
Him188 2020-02-25 09:00:19 +08:00
parent 8b9cef05d7
commit ec0d7f4434

View File

@ -249,6 +249,21 @@ class MessageSubscribersBuilder<T : MessagePacket<*, *>>(
operator fun invoke(onEvent: MessageListener<T>): Listener<T> {
return content(filter, onEvent)
}
infix fun reply(toReply: String): Listener<T> {
return content(filter) { reply(toReply) }
}
infix fun reply(message: Message): Listener<T> {
return content(filter) { reply(message) }
}
infix fun reply(replier: (@MessageDsl suspend T.(String) -> Any?)): Listener<T> {
return content(filter) {
@Suppress("DSL_SCOPE_VIOLATION_WARNING")
executeAndReply(replier)
}
}
}
/**