private void MoveNext() { while (_enumerator.MoveNext()) { _index = 0; var memory = _enumerator.Current; var length = memory.Length; if (length != 0) { _currentSpan = memory.Span; return; } } _end = true; }
public static int Seek(ReadCursor begin, ReadCursor end, out ReadCursor result, byte byte0, byte byte1, byte byte2) { var enumerator = new BufferEnumerator(begin, end); while (enumerator.MoveNext()) { var span = enumerator.Current.Span; int index = span.IndexOfAny(byte0, byte1, byte2); if (index != -1) { result = enumerator.CreateCursor(index); return(span[index]); } } result = end; return(-1); }