Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SeekMultiSegment()

static SequencePosition System.Buffers.ReadOnlySequence< T >.SeekMultiSegment ( ReadOnlySequenceSegment< T > currentSegment,
object endObject,
int endIndex,
long offset,
System::ExceptionArgument argument )
inlinestaticprivate

Definition at line 690 of file ReadOnlySequence.cs.

691 {
692 while (true)
693 {
694 if (currentSegment != null && currentSegment != endObject)
695 {
696 int length = currentSegment.Memory.Length;
697 if (length > offset)
698 {
699 break;
700 }
701 offset -= length;
702 currentSegment = currentSegment.Next;
703 continue;
704 }
705 if (currentSegment == null || endIndex < offset)
706 {
708 }
709 break;
710 }
711 return new SequencePosition(currentSegment, (int)offset);
712 }
static void ThrowArgumentOutOfRangeException(System.ExceptionArgument argument)

References System.endIndex, System.length, System.Buffers.ReadOnlySequenceSegment< T >.Memory, System.Buffers.ReadOnlySequenceSegment< T >.Next, System.offset, and System.ThrowHelper.ThrowArgumentOutOfRangeException().

Referenced by System.Buffers.ReadOnlySequence< T >.GetEndPosition(), System.Buffers.ReadOnlySequence< T >.Seek(), System.Buffers.ReadOnlySequence< T >.Seek(), System.Buffers.ReadOnlySequence< T >.Slice(), System.Buffers.ReadOnlySequence< T >.Slice(), and System.Buffers.ReadOnlySequence< T >.Slice().