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

◆ GetFirstSpan() [1/2]

ReadOnlySpan< T > System.Buffers.ReadOnlySequence< T >.GetFirstSpan ( )
inlineprivate

Definition at line 592 of file ReadOnlySequence.cs.

593 {
594 object startObject = _startObject;
595 if (startObject == null)
596 {
597 return default(ReadOnlySpan<T>);
598 }
599 int startInteger = _startInteger;
600 int endInteger = _endInteger;
601 bool flag = startObject != _endObject;
602 if ((startInteger | endInteger) >= 0)
603 {
604 ReadOnlySpan<T> span = ((ReadOnlySequenceSegment<T>)startObject).Memory.Span;
605 if (flag)
606 {
607 return span.Slice(startInteger);
608 }
609 return span.Slice(startInteger, endInteger - startInteger);
610 }
611 return GetFirstSpanSlow(startObject, flag);
612 }
ReadOnlySpan< T > GetFirstSpanSlow(object startObject, bool isMultiSegment)

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 >.GetFirstSpanSlow(), and System.ReadOnlySpan< T >.Slice().

Referenced by System.Buffers.SequenceReader< T >.SequenceReader().