unsafe public void Skip(int Skip = 1)
{
_Offset += Skip;
if (_Offset >= Data.Length)
{
Length = 0;
return;
}
if (Skip >= Length)
{
Byte = Data[_Offset];
Length = 0;
fixed (byte* Start = &Data[_Offset])
fixed (byte* End = &Data[Data.Length - 1])
{
int MaxLen = (int)(End - Start);
Length = PointerUtils.FindLargestMatchByte(Start, Start[0], MaxLen);
}
}
else
{
Length -= Skip;
}
}
}