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

◆ TryPeek() [1/2]

readonly bool System.Buffers.SequenceReader< T >.TryPeek ( long offset,
out T value )
inline

Definition at line 83 of file SequenceReader.cs.

84 {
85 if (offset < 0)
86 {
88 }
89 if (!_moreData || Remaining <= offset)
90 {
91 value = default(T);
92 return false;
93 }
94 if (CurrentSpanIndex + offset <= CurrentSpan.Length - 1)
95 {
97 return true;
98 }
99 long num = offset - (CurrentSpan.Length - CurrentSpanIndex);
100 SequencePosition position = _nextPosition;
101 ReadOnlyMemory<T> memory;
102 while (Sequence.TryGet(ref position, out memory))
103 {
104 if (memory.Length > 0)
105 {
106 if (num < memory.Length)
107 {
108 break;
109 }
110 num -= memory.Length;
111 }
112 }
113 value = memory.Span[(int)num];
114 return true;
115 }
static void ThrowArgumentOutOfRangeException_OffsetOutOfRange()
ReadOnlySequence< T > Sequence

References System.Buffers.SequenceReader< T >._moreData, System.Buffers.SequenceReader< T >._nextPosition, System.Buffers.SequenceReader< T >.CurrentSpan, System.Buffers.SequenceReader< T >.CurrentSpanIndex, System.ReadOnlyMemory< T >.Length, System.offset, System.Buffers.SequenceReader< T >.Remaining, System.Buffers.SequenceReader< T >.Sequence, System.ReadOnlyMemory< T >.Span, System.ThrowHelper.ThrowArgumentOutOfRangeException_OffsetOutOfRange(), and System.value.