addFSMTransition<E> method
void
addFSMTransition<E>(
- T fromState,
- T toState, {
- FSMHandler<
T, E> ? handler, - FSMFilter<
T, E> ? filter, - List<
String> ? eventPaths,
Implementation
void addFSMTransition<E>(
T fromState,
T toState, {
FSMHandler<T, E>? handler,
FSMFilter<T, E>? filter,
List<String>? eventPaths,
}) {
var topic = Topic.create<E>(paths: eventPaths);
var eventChannel = _fsm._map[topic];
if (eventChannel != null) {
eventChannel[fromState] = _FSMNode<T, E>(
fromState: fromState,
toState: toState,
handler: handler,
filter: filter);
} else {
_fsm._map[topic] = {
fromState: _FSMNode<T, E>(
fromState: fromState,
toState: toState,
handler: handler,
filter: filter),
};
}
}