Commit 8e323644 authored by Him188's avatar Him188 Committed by GitHub

Add top-level fun for subscribeAll

parent a9b3ecf5
...@@ -60,6 +60,15 @@ fun <E : Event> KClass<E>.subscribeAll(listeners: ListenerBuilder<E>.() -> Unit) ...@@ -60,6 +60,15 @@ fun <E : Event> KClass<E>.subscribeAll(listeners: ListenerBuilder<E>.() -> Unit)
ListenerBuilder<E> { this.subscribeInternal(it) }.apply(listeners) ListenerBuilder<E> { this.subscribeInternal(it) }.apply(listeners)
} }
/**
* 监听一个事件. 可同时进行多种方式的监听
* @see ListenerBuilder
*/
inline fun <reified E : Event> subscribeAll(noinline listeners: ListenerBuilder<E>.() -> Unit) {
ListenerBuilder<E> { this.subscribeInternal(it) }.apply(listeners)
}
/** /**
* 监听构建器. 可同时进行多种方式的监听 * 监听构建器. 可同时进行多种方式的监听
* *
...@@ -99,4 +108,4 @@ inline class ListenerBuilder<out E : Event>( ...@@ -99,4 +108,4 @@ inline class ListenerBuilder<out E : Event>(
fun once(block: suspend (E) -> Unit) = handler { block(it); ListeningStatus.STOPPED } fun once(block: suspend (E) -> Unit) = handler { block(it); ListeningStatus.STOPPED }
} }
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment