handleGenericQueueItem<TInput extends Object> method

  1. @override
void handleGenericQueueItem<TInput extends Object>(
  1. GenericQueue queue,
  2. TInput input
)
override

Handles a single dequeued item along with its generic type TItem.

Implementation

@override
void handleGenericQueueItem<TInput extends Object>(
  GenericQueue queue,
  TInput input,
) {
  // process an input
  final value = _value!;

  final transition = value.handleInput<TInput>(input).._done();

  _announceInput<TInput>(input);

  final state = blackboard.getObject(transition.stateType) as TState;

  if (!_canChangeState(state)) {
    // state hasn't changed — new state is the same as the current state
    return;
  }

  _changeState(state);
}