rollback method
Implementation
@visibleForOverriding
AggregateStateResult<TEvent, TValue, TId, TState> rollback() {
if (_original.expectedVersion == ExpectedStreamVersion.noStream) {
_changes.clear();
} else {
final diff = _current.version - _original.version;
_changes.removeRange(
_changes.length - diff,
_changes.length,
);
}
final previous = _current;
_current = _original;
return AggregateStateResult.ok(
current: _current,
previous: previous,
);
}