public unsafe ulong GetUlong(int offset) { AssertOffsetAndLength(offset, sizeof(ulong)); fixed (byte* ptr = _buffer) { return BitConverter.IsLittleEndian ? *(ulong*)(ptr + offset) : ReverseBytes(*(ulong*)(ptr + offset)); } }
public bool MoveNext() { if (_pos >= _end) { return(false); } Current = _buffer.GetUlong(_pos); _pos += Size; return(true); }