61 currentKey = mutables._currentChunkOffset +
mutables._currentPositionInChunk;
71 int num = ++
mutables._currentSection;
78 mutables._currentPositionInChunk = 0;
89 mutables._currentChunkSize =
num5;
193 currentKey = mutables._currentChunkOffset +
mutables._currentPositionInChunk;
203 int num = ++
mutables._currentSection;
210 mutables._currentPositionInChunk = 0;
221 mutables._currentChunkSize =
num5;
226 if (
mutables._currentChunkSize == 0)
333 num = ++
mutables._currentChunkIndex;
334 if (num <
mutables._currentChunkSize)
347 for (; i <
mutables._nextChunkMaxSize; i++)
358 _exceptionTracker.Value =
true;
361 mutables._currentChunkSize = i;
369 _currentIndex.Value += i;
374 mutables._nextChunkMaxSize *= 2;
380 mutables._currentChunkIndex = -1;
383 currentKey = mutables._chunkBaseIndex + num;
override bool MoveNext([MaybeNullWhen(false)][AllowNull] ref T currentElement, ref int currentKey)
Shared< int > _currentIndex
ArrayContiguousIndexRangeEnumerator(T[] data, int partitionCount, int partitionIndex)
readonly int _maximumIndex
int _currentPositionInChunk
ArrayIndexRangeEnumerator(T[] data, int partitionCount, int partitionIndex, int maxChunkSize)
readonly int _partitionCount
readonly int _partitionIndex
override bool MoveNext([MaybeNullWhen(false)][AllowNull] ref T currentElement, ref int currentKey)
readonly int _maxChunkSize
readonly int _elementCount
readonly int _sectionCount
readonly T[] _chunkBuffer
readonly Shared< int > _activeEnumeratorsCount
override bool MoveNext([MaybeNullWhen(false)][AllowNull] ref T currentElement, ref int currentKey)
readonly Shared< bool > _exceptionTracker
override void Dispose(bool disposing)
readonly Shared< int > _currentIndex
readonly object _sourceSyncLock
readonly IEnumerator< T > _source
ContiguousChunkLazyEnumerator(IEnumerator< T > source, Shared< bool > exceptionTracker, object sourceSyncLock, Shared< int > currentIndex, Shared< int > degreeOfParallelism)
readonly int _maximumIndex
Shared< int > _currentIndex
ListContiguousIndexRangeEnumerator(IList< T > data, int partitionCount, int partitionIndex)
readonly IList< T > _data
override bool MoveNext([MaybeNullWhen(false)][AllowNull] ref T currentElement, ref int currentKey)
int _currentPositionInChunk
override bool MoveNext([MaybeNullWhen(false)][AllowNull] ref T currentElement, ref int currentKey)
readonly int _maxChunkSize
readonly int _elementCount
readonly int _partitionCount
readonly IList< T > _data
readonly int _partitionIndex
ListIndexRangeEnumerator(IList< T > data, int partitionCount, int partitionIndex, int maxChunkSize)
readonly int _sectionCount
void InitializePartitions(IEnumerable< T > source, int partitionCount, bool useStriping)
PartitionedDataSource(IEnumerable< T > source, int partitionCount, bool useStriping)
static QueryOperatorEnumerator< T, int >[] MakePartitions(IEnumerator< T > source, int partitionCount)
QueryOperatorEnumerator< TElement, TKey >[] _partitions
static int Decrement(ref int location)