fold method

AggregateStateResult<TEvent, TValue, TId, TState> fold(
  1. TEvent event
)

Fold given event on current state.

Implementation

AggregateStateResult<TEvent, TValue, TId, TState> fold(TEvent event) {
  final previous = _current;
  _current = previous.when<TEvent, TState>(event);
  return AggregateStateResult.ok(
    current: _current,
    previous: previous,
  );
}