store

inline fun <S : MVIState, I : MVIIntent, A : MVIAction> ImmutableContainer<S, I, A>.store(initial: S, scope: CoroutineScope, crossinline configure: BuildStore<S, I, A>): Store<S, I, A>
inline fun <S : MVIState, I : MVIIntent, A : MVIAction> ImmutableContainer<S, I, A>.store(initial: S, crossinline configure: BuildStore<S, I, A>): Store<S, I, A>

Alias for pro.respawn.flowmvi.dsl.store


inline fun <S : MVIState, I : MVIIntent, A : MVIAction> store(initial: S, configure: BuildStore<S, I, A>): Store<S, I, A>

Build a new Store using StoreBuilder. The store is created eagerly, with all its plugins. However, the store is not launched upon creation until called "launch", which means, no heavy operations will be performed at creation time.


inline fun <S : MVIState, I : MVIIntent, A : MVIAction> store(initial: S, scope: CoroutineScope, configure: BuildStore<S, I, A>): Store<S, I, A>

Build a new Store using StoreBuilder. The store is created eagerly and then launched in the given scope immediately.


@JvmName(name = "noActionStore")
inline fun <S : MVIState, I : MVIIntent> store(initial: S, configure: BuildStore<S, I, Nothing>): Store<S, I, Nothing>
  • Build a new Store using StoreBuilder but disallow using MVIActions. The store is not launched, but is created eagerly, with all its plugins.

If your code doesn't compile, you are looking for another overload with three type parameters, i.e: store<_, _, _>()