micro_utils.dokka
0.15.1

# FSMBuilder

class FSMBuilder<T : State>(var statesManager: StatesManager<T> = DefaultStatesManager(InMemoryDefaultStatesManagerRepo()), val fsmBuilder: (statesManager: StatesManager<T>, states: List<CheckableHandlerHolder<T, T>>) -> StatesMachine<T> = { statesManager, states -> StatesMachine( statesManager, states ) }, var defaultStateHandler: StatesHandler<T, T>? = StatesHandler { null })

## Constructors

FSMBuilder
Link copied to clipboard
fun <T : State> FSMBuilder(statesManager: StatesManager<T> = DefaultStatesManager(InMemoryDefaultStatesManagerRepo()), fsmBuilder: (statesManager: StatesManager<T>, states: List<CheckableHandlerHolder<T, T>>) -> StatesMachine<T> = { statesManager, states -> StatesMachine( statesManager, states ) }, defaultStateHandler: StatesHandler<T, T>? = StatesHandler { null })

## Functions

add
Link copied to clipboard
fun add(handler: CheckableHandlerHolder<T, T>)
fun <I : T> add(filter: suspend (state: State) -> Boolean, handler: StatesHandler<I, T>)
fun <I : T> add(kClass: KClass<I>, handler: StatesHandler<I, T>)
addStrict
Link copied to clipboard
fun <I : T> addStrict(kClass: KClass<I>, handler: StatesHandler<I, T>)
build
Link copied to clipboard
fun build(): StatesMachine<T>
doWhen
Link copied to clipboard
inline fun <I : T> doWhen(noinline filter: suspend (state: State) -> Boolean, handler: StatesHandler<I, T>)
onStateOrSubstate
Link copied to clipboard
inline fun <I : T> onStateOrSubstate(handler: StatesHandler<I, T>)
strictlyOn
Link copied to clipboard
inline fun <I : T> strictlyOn(handler: StatesHandler<I, T>)

## Properties

defaultStateHandler
Link copied to clipboard
var defaultStateHandler: StatesHandler<T, T>?
fsmBuilder
Link copied to clipboard
val fsmBuilder: (statesManager: StatesManager<T>, states: List<CheckableHandlerHolder<T, T>>) -> StatesMachine<T>
statesManager
Link copied to clipboard
var statesManager: StatesManager<T>