functionalStateMachine

inline fun <S, E, C : Any> functionalStateMachine(validStates: Set<S>, validEvents: Set<E>, contextClass: KClass<out C>, handler: DslStateMachineHandler<S, E, C, C, C>.() -> Unit): DslStateMachineHandler<S, E, C, C, C>