Package-level declarations

Properties

Link copied to clipboard
val <T : Any> Fetch<Fetch<T>>.flatten: Fetch<T>

Flatten a nested Fetch into a single Fetch.

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

Functions

Link copied to clipboard
inline fun <T : Any> Fetch<T>.flatMapFetching(transform: () -> Fetch<T>): Fetch<T>

Transform a fetching fetch state to finished.

Link copied to clipboard
inline fun <In : Any, Out : Any> Fetch<In>.flatMapFinished(transform: (result: In) -> Fetch<Out>): Fetch<Out>

Transform a finished fetch result.

Link copied to clipboard
inline fun <T : Any> Fetch<T>.flatMapInitial(transform: () -> Fetch<T>): Fetch<T>

Transform an initial fetch state to finished.

Link copied to clipboard
inline fun <T : Any, Output> Fetch<T>.fold(initial: () -> Output, fetching: () -> Output, finished: (result: T) -> Output): Output

Transform each Fetch status into an Output.

Link copied to clipboard
infix fun <T : Any> Fetch<T>.getOrDefault(default: T): T
Link copied to clipboard
inline fun <T : Any> Fetch<T>.getOrElse(recover: (Fetch<T>) -> T): T
Link copied to clipboard
fun <T : Any> Fetch<T>.getOrNull(): T?
Link copied to clipboard
fun <T : Any> Fetch<T>.getOrThrow(): T
Link copied to clipboard
inline fun <T : Any> Fetch<T>.isFinished(predicate: (T) -> Boolean): Boolean
Link copied to clipboard
inline fun <T : Any> Fetch<T>.mapFetchingToFinished(transform: () -> T): Fetch<T>

Transform a fetching fetch state to finished.

Link copied to clipboard
inline fun <In : Any, Out : Any> Fetch<In>.mapFinished(transform: (result: In) -> Out): Fetch<Out>

Transform a finished fetch result.

Link copied to clipboard
inline fun <T : Any> Fetch<T>.mapInitialToFinished(transform: () -> T): Fetch<T>

Transform an initial fetch state to finished.

Link copied to clipboard
inline fun <In : Any, Out : Any> Fetch<In>.mapToFinished(initial: () -> Out, fetching: () -> Out, finished: (result: In) -> Out): Fetch.Finished<Out>

Transform all Fetch states into a finished state.

Link copied to clipboard
inline fun <T : Any> Fetch<T>.onFetching(action: Fetch.Fetching.() -> Unit): Fetch<T>

also do an action, if Fetch is in-progress.

Link copied to clipboard
inline fun <T : Any> Fetch<T>.onFinished(action: (T) -> Unit): Fetch<T>

also do an action, if Fetch is finished.

inline fun <T : Any> Fetch<T>.onFinished(predicate: Boolean, action: Fetch.Finished<T>.() -> Unit): Fetch<T>
inline fun <T : Any> Fetch<T>.onFinished(predicate: (result: T) -> Boolean, action: (T) -> Unit): Fetch<T>

also do an action, if predicate is true and Fetch is finished.

Link copied to clipboard
inline fun <T : Any> Fetch<T>.onInitial(action: Fetch.Initial.() -> Unit): Fetch<T>

also do an action, if Fetch is initial.

Link copied to clipboard
inline fun <T> Fetch<T & Any>.unwrap(recover: (Fetch<T & Any>) -> T = { error("Fetch has not finished!") }): T

Attempt to unwrap a Fetch to obtain it's result value.