public bool MoveNext()

in src/Utility/SseUpdateCollection.cs [119:155]


        public bool MoveNext()
        {
            if (_events is null && _started)
            {
                throw new ObjectDisposedException(typeof(U).Name);
            }

            _cancellationToken.ThrowIfCancellationRequested();
            _events ??= CreateEventEnumerator();
            _started = true;

            if (_updates is not null && _updates.MoveNext())
            {
                _current = _updates.Current;
                return true;
            }

            if (_events.MoveNext())
            {
                if (_events.Current.Data.AsSpan().SequenceEqual(TerminalData))
                {
                    _current = default;
                    return false;
                }

                _updates = _eventDeserializerFunc.Invoke(_events.Current).GetEnumerator();

                if (_updates.MoveNext())
                {
                    _current = _updates.Current;
                    return true;
                }
            }

            _current = default;
            return false;
        }