state_graph_bloc library

Classes

SingleLiveEvent<T>
Single live event.
SingleLiveEventSubject<T>
Subject for SingleLiveEvents. Exposes Sink (see add) interface and stream. For implementation see StateGraphBloc singleLiveEventSubject method.
StateGraph<Event, State>
State graph.
StateGraphBloc<Event, State>
Base class for Blocs using StateGraph, based on bloc package.
StateTransitionEntry<State, Event>
Entry for StateGraph, contains optional transition and sideEffect.

Functions

sideEffect<State, Event, InState extends State, RealEvent extends Event>(SideEffect<InState, RealEvent> sideEffect) StateTransitionEntry<State, Event>
Makes StateTransitionEntry with just sideEffect of transition.
transition<State, Event, InState extends State, RealEvent extends Event>(StateTransition<InState, RealEvent, State> transition) StateTransitionEntry<State, Event>
Makes StateTransitionEntry with just state-to-state transition.
transitionWithSideEffect<State, Event, InState extends State, RealEvent extends Event>(StateTransition<InState, RealEvent, State> transition, SideEffect<InState, RealEvent> sideEffect) StateTransitionEntry<State, Event>
Makes StateTransitionEntry with both transition and sideEffect.

Typedefs

SideEffect<State, Event> = void Function(State state, Event event)
Side effect builder function.
StateTransition<InState, Event, OutState> = OutState Function(InState state, Event event)
Transition builder function.