Commit 8e33e07c authored by Him188's avatar Him188

Renamed args

parent 126b2210
......@@ -17,16 +17,16 @@ fun <E : Event> KClass<E>.subscribeAlways(listener: suspend (E) -> Unit) = this.
fun <E : Event> KClass<E>.subscribeOnce(listener: suspend (E) -> Unit) = this.subscribeInternal(Handler { listener(it); ListeningStatus.STOPPED })
fun <E : Event, T> KClass<E>.subscribeUntil(valueIfStop: T, block: suspend (E) -> T) = subscribeInternal(Handler { if (block(it) === valueIfStop) ListeningStatus.STOPPED else ListeningStatus.LISTENING })
fun <E : Event> KClass<E>.subscribeUntilFalse(block: suspend (E) -> Boolean) = subscribeUntil(false, block)
fun <E : Event> KClass<E>.subscribeUntilTrue(block: suspend (E) -> Boolean) = subscribeUntil(true, block)
fun <E : Event> KClass<E>.subscribeUntilNull(block: suspend (E) -> Any?) = subscribeUntil(null, block)
fun <E : Event, T> KClass<E>.subscribeUntil(valueIfStop: T, listener: suspend (E) -> T) = subscribeInternal(Handler { if (listener(it) === valueIfStop) ListeningStatus.STOPPED else ListeningStatus.LISTENING })
fun <E : Event> KClass<E>.subscribeUntilFalse(listener: suspend (E) -> Boolean) = subscribeUntil(false, listener)
fun <E : Event> KClass<E>.subscribeUntilTrue(listener: suspend (E) -> Boolean) = subscribeUntil(true, listener)
fun <E : Event> KClass<E>.subscribeUntilNull(listener: suspend (E) -> Any?) = subscribeUntil(null, listener)
fun <E : Event, T> KClass<E>.subscribeWhile(valueIfContinue: T, block: suspend (E) -> T) = subscribeInternal(Handler { if (block(it) !== valueIfContinue) ListeningStatus.STOPPED else ListeningStatus.LISTENING })
fun <E : Event> KClass<E>.subscribeWhileFalse(block: suspend (E) -> Boolean) = subscribeWhile(false, block)
fun <E : Event> KClass<E>.subscribeWhileTrue(block: suspend (E) -> Boolean) = subscribeWhile(true, block)
fun <E : Event> KClass<E>.subscribeWhileNull(block: suspend (E) -> Any?) = subscribeWhile(null, block)
fun <E : Event, T> KClass<E>.subscribeWhile(valueIfContinue: T, listener: suspend (E) -> T) = subscribeInternal(Handler { if (listener(it) !== valueIfContinue) ListeningStatus.STOPPED else ListeningStatus.LISTENING })
fun <E : Event> KClass<E>.subscribeWhileFalse(listener: suspend (E) -> Boolean) = subscribeWhile(false, listener)
fun <E : Event> KClass<E>.subscribeWhileTrue(listener: suspend (E) -> Boolean) = subscribeWhile(true, listener)
fun <E : Event> KClass<E>.subscribeWhileNull(listener: suspend (E) -> Any?) = subscribeWhile(null, listener)
/**
......@@ -57,22 +57,22 @@ fun <E : Event> KClass<E>.subscribeAll(listeners: ListenerBuilder<E>.() -> Unit)
inline class ListenerBuilder<out E : Event>(
private val handlerConsumer: (Handler<in E>) -> Unit
) {
fun handler(block: suspend (E) -> ListeningStatus) {
handlerConsumer(Handler(block))
fun handler(listener: suspend (E) -> ListeningStatus) {
handlerConsumer(Handler(listener))
}
fun always(block: suspend (E) -> Unit) = handler { block(it); ListeningStatus.LISTENING }
fun always(listener: suspend (E) -> Unit) = handler { listener(it); ListeningStatus.LISTENING }
fun <T> until(until: T, block: suspend (E) -> T) = handler { if (block(it) === until) ListeningStatus.STOPPED else ListeningStatus.LISTENING }
fun untilFalse(block: suspend (E) -> Boolean) = until(false, block)
fun untilTrue(block: suspend (E) -> Boolean) = until(true, block)
fun untilNull(block: suspend (E) -> Any?) = until(null, block)
fun <T> until(until: T, listener: suspend (E) -> T) = handler { if (listener(it) === until) ListeningStatus.STOPPED else ListeningStatus.LISTENING }
fun untilFalse(listener: suspend (E) -> Boolean) = until(false, listener)
fun untilTrue(listener: suspend (E) -> Boolean) = until(true, listener)
fun untilNull(listener: suspend (E) -> Any?) = until(null, listener)
fun <T> `while`(until: T, block: suspend (E) -> T) = handler { if (block(it) !== until) ListeningStatus.STOPPED else ListeningStatus.LISTENING }
fun whileFalse(block: suspend (E) -> Boolean) = `while`(false, block)
fun whileTrue(block: suspend (E) -> Boolean) = `while`(true, block)
fun whileNull(block: suspend (E) -> Any?) = `while`(null, block)
fun <T> `while`(until: T, listener: suspend (E) -> T) = handler { if (listener(it) !== until) ListeningStatus.STOPPED else ListeningStatus.LISTENING }
fun whileFalse(listener: suspend (E) -> Boolean) = `while`(false, listener)
fun whileTrue(listener: suspend (E) -> Boolean) = `while`(true, listener)
fun whileNull(listener: suspend (E) -> Any?) = `while`(null, listener)
fun once(block: suspend (E) -> Unit) = handler { block(it); ListeningStatus.STOPPED }
......
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