Package-level declarations

Types

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Controls how concurrent unsafe changes from multiple sources are delivered to a combined callback (tuple onUnsafeChange, safeStateDelegate).

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class CSValueFunction<Return>(val parent: Any, var value: Return, val function: (Return) -> Unit)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
inline fun <T : CSHasChangeValue<Value>, Value> List<T>.action(crossinline function: ArgFun<List<Value>>): CSRegistration
inline fun <T : CSHasChange<*>> List<T>.action(crossinline function: Fun): CSRegistration
inline fun <T> CSHasChangeValue<T>.action(noinline function: (T) -> Unit): CSRegistration
inline fun CSHasChange<Unit>.action(crossinline function: () -> Unit): CSRegistration
inline fun <ParentValue, ChildValue> CSHasChangeValue<ParentValue>.action(crossinline nullableChild: (ParentValue) -> CSHasChangeValue<ChildValue>?, crossinline action: (ChildValue?) -> Unit): CSRegistration
@JvmName(name = "actionChild")
inline fun <ParentValue, ChildValue> CSHasChangeValue<ParentValue>.action(crossinline child: (ParentValue) -> CSHasChangeValue<ChildValue>, crossinline action: (ChildValue) -> Unit): CSRegistration

inline fun CSHasChangeValue<Boolean>.action(crossinline onTrue: (CSRegistration) -> Unit, crossinline onFalse: (CSRegistration) -> Unit): CSRegistration

Register edge handlers for a boolean observable and invoke once for the current state.

Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.actionFalse(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.actionFalseLaunch(dispatcher: CoroutineDispatcher = Main, crossinline function: suspend () -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T>.actionFromTo(crossinline function: (from: T?, to: T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T : CSHasChange<*>> List<T>.actionLaterOnce(crossinline function: () -> Unit): CSRegistrations
inline fun <T : CSHasChange<*>> List<T>.actionLaterOnce(isActionNow: Boolean = false, crossinline function: () -> Unit): CSRegistrations
inline fun <Argument> CSHasChangeValue<Argument>.actionLaterOnce(after: Duration = ZERO, crossinline onChange: ArgFun<Argument>): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T>.actionLaunch(dispatcher: CoroutineDispatcher = Main, crossinline function: suspend (T) -> Unit): CSRegistration
fun <T> CSHasChange<T>.actionLaunch(dispatcher: CoroutineContext = Main, function: suspend () -> Unit): CSRegistration
inline fun <T> CSHasChangeValue<T>.actionLaunch(key: String, dispatcher: CoroutineDispatcher = Main, crossinline function: suspend (T) -> Unit): CSRegistration
fun <T> CSHasChangeValue<T>.actionLaunch(parent: CSHasRegistrations, dispatcher: CoroutineContext = Main, function: suspend (T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T?>.actionNotNull(crossinline function: () -> Unit): CSRegistration
inline fun <T> CSHasChangeValue<T?>.actionNotNull(crossinline function: (T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <Argument> CSHasChangeValue<out Argument?>.actionNotNullOnce(crossinline function: (Argument) -> Unit): CSRegistration?
Link copied to clipboard
inline fun <T> CSHasChangeValue<T?>.actionNull(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun <T : CSHasChange<*>> Array<T>.actionOnChangeLater(crossinline function: Fun): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.actionTrue(crossinline function: (CSRegistration) -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.actionTrueLaunch(dispatcher: CoroutineDispatcher = Main, crossinline function: suspend (CSRegistration) -> Unit): CSRegistration
Link copied to clipboard
@JvmName(name = "BooleanAndCSHasChangeValueBoolean")
infix fun Boolean.and(other: CSHasChangeValue<Boolean>): CSHasChangeValue<Boolean>
@JvmName(name = "BooleanAndCSSafeHasChangeValueBoolean")
infix fun Boolean.and(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<Boolean>
@JvmName(name = "CSHasChangeValueAndCSHasChangeValueBoolean")
infix fun <T> CSHasChangeValue<T>.and(other: CSHasChangeValue<Boolean>): CSHasChangeValue<T>
@JvmName(name = "CSHasChangeValueAndCSSafeHasChangeValueBoolean")
infix fun <T> CSHasChangeValue<T>.and(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<T>
@JvmName(name = "CSHasChangeValueBooleanAndBoolean")
infix fun CSHasChangeValue<Boolean>.and(other: Boolean): CSHasChangeValue<Boolean>
@JvmName(name = "CSHasChangeValueBooleanAndCSHasChangeValueBooleanNullable")
infix fun CSHasChangeValue<Boolean>.and(other: CSHasChangeValue<Boolean?>): CSHasChangeValue<Boolean>
@JvmName(name = "CSHasChangeValueBooleanAndCSHasChangeValueBoolean")
infix fun CSHasChangeValue<Boolean>.and(other: CSHasChangeValue<Boolean>): CSHasChangeValue<Boolean>
@JvmName(name = "CSHasChangeAndCSValue")
infix fun CSHasChange<*>.and(other: CSValue<Boolean>): CSHasChange<Unit>
@JvmName(name = "CSSafeHasChangeValueAndCSHasChangeValueBoolean")
infix fun <T> CSSafeHasChangeValue<T>.and(other: CSHasChangeValue<Boolean>): CSSafeHasChangeValue<T>
@JvmName(name = "CSSafeHasChangeValueAndCSSafeHasChangeValueBoolean")
infix fun <T> CSSafeHasChangeValue<T>.and(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<T>
@JvmName(name = "CSSafeHasChangeValueBooleanAndBoolean")
infix fun CSSafeHasChangeValue<Boolean>.and(other: Boolean): CSSafeHasChangeValue<Boolean>
@JvmName(name = "CSSafeHasChangeValueBooleanAndCSSafeHasChangeValueBooleanNullable")
infix fun CSSafeHasChangeValue<Boolean>.and(other: CSSafeHasChangeValue<Boolean?>): CSSafeHasChangeValue<Boolean>
@JvmName(name = "CSSafeHasChangeValueBooleanAndCSSafeHasChangeValueBooleanLogical")
infix fun CSSafeHasChangeValue<Boolean>.and(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<Boolean>
Link copied to clipboard
Link copied to clipboard
@JvmName(name = "safePairDelegate")
fun <T, V, Return> Pair<CSSafeHasChangeValue<T>, CSSafeHasChangeValue<V>>.delegate(parent: CSHasRegistrations? = null, fromValues: (T, V) -> Return): CSSafeHasChangeValue<Return>
fun <T, Return> CSHasChangeValue<T>.delegate(parent: CSHasRegistrations? = null, fromValue: (T) -> Return): CSHasChangeValue<Return>
@JvmName(name = "delegateNullable")
fun <ParentValue, ChildValue> CSHasChangeValue<ParentValue>.delegate(parent: CSHasRegistrations? = null, fromValueNullableChild: (ParentValue) -> CSHasChangeValue<ChildValue>?): CSHasChangeValue<ChildValue?>
inline fun <Return> CSHasChange<out Any>.delegate(parent: CSHasRegistrations? = null, crossinline from: () -> Return): CSHasChangeValue<Return>
@JvmName(name = "delegateChild")
fun <ChildValue> CSHasChange<out Any>.delegate(parent: CSHasRegistrations? = null, child: () -> CSHasChangeValue<ChildValue>): CSHasChangeValue<ChildValue>
Link copied to clipboard
Link copied to clipboard
@JvmName(name = "destructPreviousNullable")
inline fun <T : CSHasDestruct, P : CSHasChangeValue<out T?>> P.destructPrevious(): P
Link copied to clipboard
inline fun CSHasChange<*>.event(): CSEvent<*>
Link copied to clipboard
Link copied to clipboard
inline fun CSHasChange<*>.eventLaterOnce(): CSEvent<*>
Link copied to clipboard
@JvmName(name = "CSHasChangeValueIfFalseCSHasChangeValueBoolean")
infix fun <T> CSHasChangeValue<T>.ifFalse(other: CSHasChangeValue<Boolean>): CSHasChangeValue<T?>
@JvmName(name = "CSSafeHasChangeValueIfFalseCSSafeHasChangeValueBoolean")
infix fun <T> CSSafeHasChangeValue<T>.ifFalse(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<T?>
Link copied to clipboard
@JvmName(name = "CSHasChangeValueIfTrueCSHasChangeValueBoolean")
infix fun <T> CSHasChangeValue<T>.ifTrue(other: CSHasChangeValue<Boolean>): CSHasChangeValue<T?>
@JvmName(name = "CSSafeHasChangeValueIfTrueCSSafeHasChangeValueBoolean")
infix fun <T> CSSafeHasChangeValue<T>.ifTrue(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<T?>
Link copied to clipboard
operator fun <T> CSHasChange<T>.invoke(param: (T) -> Unit): CSRegistration
operator fun CSHasChange<Unit>.invoke(param: () -> Unit): CSRegistration
Link copied to clipboard
Link copied to clipboard
infix inline fun <T> CSHasChangeValue<T>.isFalse(crossinline condition: (T) -> Boolean): CSHasChangeValue<Boolean>
Link copied to clipboard
infix inline fun <T> CSHasChangeValue<T>.isNotSetTo(value: T): CSHasChangeValue<Boolean>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
infix inline fun <T> CSHasChangeValue<T>.isTrue(crossinline condition: (T) -> Boolean): CSHasChangeValue<Boolean>
@JvmName(name = "CSHasChangeValueOptionalBooleanDelegateIsTrue")
inline fun CSHasChangeValue<Boolean?>.isTrue(parent: CSHasRegistrations? = null): CSHasChangeValue<Boolean>
Link copied to clipboard
@JvmName(name = "CSHasChangeValueLazyDestructFactory")
fun <V, Instance : CSHasDestruct> CSHasChangeValue<V>.lazyDestructFactory(parent: CSHasRegistrations, create: (V) -> Instance): CSValue<Instance>
Link copied to clipboard
Link copied to clipboard
inline fun CSHasRegistrations.listenUntilTrueOnce(hasChange: CSHasChange<Boolean>, crossinline listener: () -> Unit): CSRegistration
Link copied to clipboard
@JvmName(name = "CSSafeHasChangeValueBooleanNot")
operator fun CSSafeHasChangeValue<Boolean>.not(): CSSafeHasChangeValue<Boolean>
Link copied to clipboard
inline fun <T : CSHasChange<*>> Array<T>.onChange(crossinline function: Fun): CSRegistration
fun Pair<CSHasChange<*>, CSHasChange<*>>.onChange(onChange: () -> Unit): CSRegistration
inline fun <T : CSHasChangeValue<Value>, Value> List<T>.onChange(crossinline function: ArgFun<List<Value>>): CSRegistration
inline fun <T : CSHasChange<*>> List<T>.onChange(crossinline function: Fun): CSRegistration
inline fun <Argument> CSHasChange<Argument>.onChange(crossinline function: () -> Unit): CSRegistration
inline fun <Argument> CSHasChange<Argument>.onChange(crossinline function: (CSRegistration) -> Unit): CSRegistration
inline fun <Argument> CSHasChange<Argument>.onChange(crossinline function: (CSRegistration, Argument) -> Unit): CSRegistration
@JvmName(name = "onChangeChildNullable")
inline fun <ParentValue, ChildValue> CSHasChangeValue<ParentValue>.onChange(crossinline nullableChild: (ParentValue) -> CSHasChange<ChildValue>?, crossinline onChange: (ChildValue) -> Unit): CSRegistration
@JvmName(name = "onChangeChild")
inline fun <ParentValue, ChildValue> CSHasChangeValue<ParentValue>.onChange(crossinline child: (ParentValue) -> CSHasChange<ChildValue>, noinline onChange: (ChildValue) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T>.onChangeFrom(crossinline function: (from: T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T>.onChangeFromTo(crossinline function: (from: T, to: T) -> Unit): CSRegistration
Link copied to clipboard
fun <T> CSHasChangeValue<T>.onChangeFromToLaunch(function: suspend (from: T, to: T) -> Unit): CSRegistration
fun <T> CSHasChangeValue<T>.onChangeFromToLaunch(parent: CSHasRegistrations, function: suspend (from: T, to: T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T : CSHasChange<*>> Array<T>.onChangeLater(crossinline function: Fun): CSRegistration
Link copied to clipboard
inline fun <T : CSHasChange<*>> List<T>.onChangeLaterOnce(crossinline function: SusFun): CSRegistrations
inline fun <Argument> CSHasChange<Argument>.onChangeLaterOnce(crossinline function: Fun): CSRegistration
inline fun <T : CSHasChange<*>> List<T>.onChangeLaterOnce(dispatcher: CoroutineContext = Main, crossinline function: SusFun): CSRegistrations
inline fun <Argument> CSHasChangeValue<Argument>.onChangeLaterOnce(after: Duration = ZERO, crossinline onChange: ArgFun<Argument>): CSRegistration
inline fun <Argument> CSHasChange<Argument>.onChangeLaterOnce(after: Duration, crossinline function: Fun): CSRegistration
Link copied to clipboard
fun <T> CSHasChange<T>.onChangeLaunch(dispatcher: CoroutineContext = Main, function: suspend (T) -> Unit): CSRegistration
fun <T> CSHasChange<T>.onChangeLaunch(parent: CSHasRegistrations, function: suspend (T) -> Unit): CSRegistration
fun <T> CSHasChange<T>.onChangeLaunch(key: String, dispatcher: CoroutineContext = Main, function: suspend (T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T?>.onChangeNotNull(crossinline function: (from: T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <Argument> CSHasChange<out Argument?>.onChangeNotNullOnce(crossinline function: (Argument) -> Unit): CSRegistration
Link copied to clipboard
inline fun <Argument> CSHasChange<Argument>.onChangeOnce(parent: CSHasRegistrations? = null, crossinline function: () -> Unit): CSRegistration
inline fun <Argument> CSHasChange<Argument>.onChangeOnce(parent: CSHasRegistrations? = null, crossinline function: (Argument) -> Unit)

Registers a one-time change listener.

inline fun CSHasRegistrations.onChangeOnce(event: CSHasChange<*>, crossinline listener: () -> Unit): CSRegistration
inline fun <T> CSHasRegistrations.onChangeOnce(event: CSHasChange<T>, crossinline listener: (argument: T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <Value> CSHasChangeValue<Value>.onChangeTo(value: Value, crossinline onChange: () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.onFalse(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
fun CSHasChange<Boolean>.onFalseLaunch(dispatcher: CoroutineContext = Main, function: suspend () -> Unit): CSRegistration
fun CSHasChange<Boolean>.onFalseLaunch(key: String, dispatcher: CoroutineContext = Main, function: suspend () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.onFalseOnce(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<out T?>.onNotNull(crossinline function: () -> Unit): CSRegistration
inline fun <T> CSHasChangeValue<out T?>.onNotNull(crossinline function: (T) -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<out T?>.onNull(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.onTrue(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
fun CSHasChange<Boolean>.onTrueLaunch(dispatcher: CoroutineContext = Main, function: suspend () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.onTrueOnce(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun CSHasChangeValue<Boolean>.onTrueUntilFalse(crossinline registration: () -> CSRegistration?): CSRegistration
Link copied to clipboard
inline suspend fun <T> CSHasChangeValue<*>.onType(): T
inline fun <T> CSHasChangeValue<*>.onType(crossinline function: (T) -> Unit): CSRegistration
Link copied to clipboard
@JvmName(name = "onUnsafeChangeWithSafeSecond")
fun <Argument1, Argument2, Item1 : CSHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.onUnsafeChange(delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, onUnsafeChange: (Argument1, Argument2) -> Unit): CSRegistration
@JvmName(name = "onUnsafeChangeWith2Safe2")
fun <Argument1, Argument2, Item1 : CSSafeHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.onUnsafeChange(delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, onUnsafeChange: (Argument1, Argument2) -> Unit): CSRegistration
@JvmName(name = "onUnsafeChangeWithSafeThird")
fun <Argument1, Argument2, Argument3, Item1 : CSHasChangeValue<Argument1>, Item2 : CSHasChangeValue<Argument2>, Item3 : CSSafeHasChangeValue<Argument3>> Triple<Item1, Item2, Item3>.onUnsafeChange(delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, onUnsafeChange: (Argument1, Argument2, Argument3) -> Unit): CSRegistration
Link copied to clipboard
inline fun CSSafeHasChangeValue<Boolean>.onUnsafeTrue(crossinline function: () -> Unit): CSRegistration
Link copied to clipboard
inline fun <T> CSHasChangeValue<T>.onValue(function: (T) -> Unit)
Link copied to clipboard
infix fun <T> CSHasChangeValue<T>.or(second: CSHasChange<*>): CSHasChangeValue<T>
infix fun CSHasChange<*>.or(other: CSHasChange<*>): CSHasChange<Unit>
@JvmName(name = "CSSafeHasChangeValueOrCSHasChange")
infix fun <T> CSSafeHasChangeValue<T>.or(second: CSHasChange<*>): CSSafeHasChangeValue<T>
@JvmName(name = "CSSafeHasChangeValueBooleanOrCSSafeHasChangeValueBoolean")
infix fun CSSafeHasChangeValue<Boolean>.or(other: CSSafeHasChangeValue<Boolean>): CSSafeHasChangeValue<Boolean>
Link copied to clipboard
Link copied to clipboard
@JvmName(name = "safeHasChangeValueIdentity")
fun <T> CSSafeHasChangeValue<T>.safeStateDelegate(parent: CSHasDestruct, onChange: ArgFun<T>? = null): CSSafeHasChangeValue<T>
@JvmName(name = "safeStateDelegateWith2Safe1")
fun <Argument1, Argument2, Item1 : CSHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, onChange: ArgFun<Pair<Argument1, Argument2>>? = null): CSSafeHasChangeValue<Pair<Argument1, Argument2>>
@JvmName(name = "safeStateDelegateWith2Safe2")
fun <Argument1, Argument2, Item1 : CSSafeHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, onChange: ArgFun<Pair<Argument1, Argument2>>? = null): CSSafeHasChangeValue<Pair<Argument1, Argument2>>
@JvmName(name = "safeStateDelegateFromWith2Safe1")
fun <Argument1, Argument2, Return, Item1 : CSHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, unsafeFromValues: (Argument1, Argument2) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
@JvmName(name = "safeStateDelegateFromWith2Safe2")
fun <Argument1, Argument2, Return, Item1 : CSSafeHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>> Pair<Item1, Item2>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, unsafeFromValues: (Argument1, Argument2) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
@JvmName(name = "safeStateDelegateFromWith3Safe1")
fun <Argument1, Argument2, Argument3, Return, Item1 : CSHasChangeValue<Argument1>, Item2 : CSHasChangeValue<Argument2>, Item3 : CSSafeHasChangeValue<Argument3>> Triple<Item1, Item2, Item3>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, unsafeFromValues: (Argument1, Argument2, Argument3) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
@JvmName(name = "safeStateDelegateFromWith3Safe2")
fun <Argument1, Argument2, Argument3, Return, Item1 : CSHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>, Item3 : CSSafeHasChangeValue<Argument3>> Triple<Item1, Item2, Item3>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, unsafeFromValues: (Argument1, Argument2, Argument3) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
@JvmName(name = "safeStateDelegateFromWith3Safe3")
fun <Argument1, Argument2, Argument3, Return, Item1 : CSSafeHasChangeValue<Argument1>, Item2 : CSSafeHasChangeValue<Argument2>, Item3 : CSSafeHasChangeValue<Argument3>> Triple<Item1, Item2, Item3>.safeStateDelegate(parent: CSHasDestruct, delivery: CSSafeChangeDelivery = CSSafeChangeDelivery.Conflated, unsafeFromValues: (Argument1, Argument2, Argument3) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
Link copied to clipboard
@JvmName(name = "stateDelegateChild")
fun <ParentValue, Return> CSHasChangeValue<ParentValue>.stateDelegate(parent: CSHasRegistrations? = null, fromValueChild: (ParentValue) -> CSHasChangeValue<Return>, onChange: (Return) -> Unit? = null): CSHasChangeValue<Return>
fun <Argument, Return> CSHasChangeValue<Argument>.stateDelegate(parent: CSHasRegistrations? = null, fromValueAndPrevious: (Argument, Return?) -> Return, onChange: ArgFun<Return>? = null): CSHasChangeValue<Return>
@JvmName(name = "safeStateDelegate")
fun <Argument, Return> CSSafeHasChangeValue<Argument>.stateDelegate(parent: CSHasDestruct, unsafeFromValue: (Argument) -> Return, onChange: ArgFun<Return>? = null): CSSafeHasChangeValue<Return>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
inline fun <T> CSSafeHasChangeValue<T>.unsafeAction(noinline function: (T) -> Unit): CSRegistration
Link copied to clipboard
@JvmName(name = "untilFalseCSRegistrationNullable")
inline fun CSHasChangeValue<Boolean>.untilFalse(registration: CSRegistration?): CSRegistration?
Link copied to clipboard
suspend fun <T> CSHasChange<T>.wait(): T
Link copied to clipboard
suspend fun <T> CSHasChangeValue<T>.waitFor(condition: (T) -> Boolean)
suspend fun <T> CSSafeHasChangeValue<T>.waitFor(condition: (T) -> Boolean)
Link copied to clipboard
Link copied to clipboard