123 const int64_t old_segments_num = r_segments.size();
125 while (!remaining_indices.
is_empty()) {
128 r_segments.append(*range);
134 r_segments.append(
IndexRange(remaining_indices[0], segment_size));
135 remaining_indices = remaining_indices.
drop_front(segment_size);
142 r_segments.append(*range);
145 r_segments.append(segment_indices);
147 remaining_indices = remaining_indices.
drop_front(segment_size);
149 return r_segments.size() - old_segments_num;