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

◆ Seek() [2/2]

Definition at line 636 of file ReadOnlySequence.cs.

637 {
638 object startObject = _startObject;
639 object endObject = _endObject;
642 if (startObject != endObject)
643 {
644 ReadOnlySequenceSegment<T> readOnlySequenceSegment = (ReadOnlySequenceSegment<T>)startObject;
645 int num = readOnlySequenceSegment.Memory.Length - index;
646 if (num <= offset && offset != 0L)
647 {
648 if (num < 0)
649 {
651 }
652 return SeekMultiSegment(readOnlySequenceSegment.Next, endObject, index2, offset - num, exceptionArgument);
653 }
654 }
655 else if (index2 - index < offset)
656 {
658 }
659 return new SequencePosition(startObject, index + (int)offset);
660 }
static void ThrowArgumentOutOfRangeException(System.ExceptionArgument argument)
static void ThrowArgumentOutOfRangeException_PositionOutOfRange()
static SequencePosition SeekMultiSegment(ReadOnlySequenceSegment< T > currentSegment, object endObject, int endIndex, long offset, System.ExceptionArgument argument)
static int GetIndex(int Integer)

References System.Buffers.ReadOnlySequence< T >._endInteger, System.Buffers.ReadOnlySequence< T >._endObject, System.Buffers.ReadOnlySequence< T >._startInteger, System.Buffers.ReadOnlySequence< T >._startObject, System.Buffers.ReadOnlySequence< T >.GetIndex(), System.index, System.index2, System.L, System.Buffers.ReadOnlySequenceSegment< T >.Next, System.offset, System.Buffers.ReadOnlySequence< T >.SeekMultiSegment(), System.ThrowHelper.ThrowArgumentOutOfRangeException(), and System.ThrowHelper.ThrowArgumentOutOfRangeException_PositionOutOfRange().

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