1 write to _segments
System.Formats.Tar (1)
System\Formats\Tar\GnuSparseStream.cs (1)
106_segments = segments;
31 references to _segments
System.Formats.Tar (31)
System\Formats\Tar\GnuSparseStream.cs (31)
59if (_segments is not null) 70if (_segments is not null) 180Debug.Assert(_segments is not null && _packedStartOffsets is not null); 199long nextSegStart = ~segIdx < _segments.Length ? _segments[~segIdx].Offset : _realSize; 207var (segOffset, segLength) = _segments[segIdx]; 250Debug.Assert(_segments is not null && _packedStartOffsets is not null); 263long nextSegStart = ~segIdx < _segments.Length ? _segments[~segIdx].Offset : _realSize; 270var (segOffset, segLength) = _segments[segIdx]; 302Debug.Assert(_segments is not null && _packedStartOffsets is not null); 307for (int i = 0; i < _segments.Length; i++) 309(long virtualOffset, long segmentLength) = _segments[i]; 350Debug.Assert(_segments is not null && _packedStartOffsets is not null); 355for (int i = 0; i < _segments.Length; i++) 357(long virtualOffset, long segmentLength) = _segments[i]; 434Debug.Assert(_segments is not null); 436if (_segments.Length == 0) 442if (_currentSegmentIndex >= _segments.Length) 444long lastEnd = _segments[_segments.Length - 1].Offset + _segments[_segments.Length - 1].Length; 448return ~_segments.Length; 451int result = BinarySearchSegment(virtualPosition, 0, _segments.Length - 1); 457if (virtualPosition < _segments[_currentSegmentIndex].Offset) 465while (_currentSegmentIndex < _segments.Length) 467var (offset, length) = _segments[_currentSegmentIndex]; 481return ~_segments.Length; // Past all segments. 488Debug.Assert(_segments is not null); 492var (offset, length) = _segments[mid];