29 instantiations of Pair
System.Core (29)
System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs (3)
37new AssociativeAggregationOperator<T, Pair<bool, T>, T>(source, new Pair<bool, T>(false, default(T)), null, 81return new Pair<bool, T>(true, element); 106return new Pair<bool, T>(true, element.Second);
System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs (2)
119currentElement = new Pair<TInputOutput, THashKey>( 244buffer.Add(new Pair<TInputOutput, THashKey>(element, elementHashKey));
System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs (2)
119currentElement = new Pair<TInputOutput, THashKey>( 257buffer.Add(new Pair<TInputOutput, THashKey>(element, elementHashKey));
System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs (1)
307leftLookup[wrappedLeftElement] = new Pair<TInputOutput, TLeftKey>(leftElement.First, leftKey);
System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs (1)
137currentValue = new Pair<TRightInput, ListChunk<TRightInput>>(rightElement, null);
System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs (1)
296m_hashLookup[wrappedLeftElem] = new Pair<TInputOutput, TLeftKey>(leftElement.First, leftKey);
System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs (2)
375union[wrappedElem] = new Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>>(elem.First, key); 392union[wrappedElem] = new Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>>(elem.First, key); ;
System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs (1)
138currentElement = new Pair<decimal, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs (1)
138currentElement = new Pair<double, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs (1)
138currentElement = new Pair<double, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs (1)
138currentElement = new Pair<long, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs (1)
138currentElement = new Pair<long, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs (1)
130currentElement = new Pair<decimal, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs (1)
130currentElement = new Pair<double, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs (1)
131currentElement = new Pair<double, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs (1)
131currentElement = new Pair<long, long>(sum, count);
System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs (1)
131currentElement = new Pair<long, long>(sum, count);
System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs (1)
149m_buffer.Add(new Pair<TSource, TKey>(current, key));
System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs (2)
338currentKey = new Pair<int, int>(m_mutables.m_currentLeftSourceIndex, m_mutables.m_currentRightSourceIndex); 468currentKey = new Pair<TLeftKey, int>(m_mutables.m_currentLeftKey, m_mutables.m_currentRightSourceIndex);
System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs (1)
77(TInputOutput elem) => new Pair<TSortKey, TKey2>(m_keySelector(elem), key2Selector(elem));
System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs (1)
217buffer.Add(new Pair<TResult, TKey>(current, index));
System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs (1)
281buffer.Add(new Pair<TResult, TKey>(current, key));
System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs (1)
110chunk[lastChunkSize] = new Pair<TKey, TOutput>(key, element);
259 references to Pair
System.Core (259)
System\Linq\Parallel\Enumerables\AggregationMinMaxHelpers.cs (18)
32Func<Pair<bool, T>, T, Pair<bool, T>> intermediateReduce = MakeIntermediateReduceFunction(sign); 33Func<Pair<bool, T>, Pair<bool, T>, Pair<bool, T>> finalReduce = MakeFinalReduceFunction(sign); 34Func<Pair<bool, T>, T> resultSelector = MakeResultSelectorFunction(); 36AssociativeAggregationOperator<T, Pair<bool, T>, T> aggregation = 37new AssociativeAggregationOperator<T, Pair<bool, T>, T>(source, new Pair<bool, T>(false, default(T)), null, 65private static Func<Pair<bool, T>, T, Pair<bool, T>> MakeIntermediateReduceFunction(int sign) 72return delegate(Pair<bool, T> accumulator, T element) 89private static Func<Pair<bool, T>, Pair<bool, T>, Pair<bool, T>> MakeFinalReduceFunction(int sign) 96return delegate(Pair<bool, T> accumulator, Pair<bool, T> element) 114private static Func<Pair<bool, T>, T> MakeResultSelectorFunction() 120return delegate(Pair<bool, T> accumulator)
System\Linq\Parallel\Merging\OrderPreservingPipeliningMergeHelper.cs (14)
59private readonly Queue<Pair<TKey, TOutput>>[] m_buffers; 132m_buffers = new Queue<Pair<TKey, TOutput>>[partitionCount]; 238private readonly Queue<Pair<TKey, TOutput>>[] m_privateBuffer; 255m_privateBuffer = new Queue<Pair<TKey, TOutput>>[partitionCount]; 287Pair<TKey, TOutput> element = default(Pair<TKey, TOutput>); 323Pair<TKey, TOutput> element = default(Pair<TKey, TOutput>); 387private bool TryWaitForElement(int producer, ref Pair<TKey, TOutput> element) 389Queue<Pair<TKey, TOutput>> buffer = m_mergeHelper.m_buffers[producer]; 399element = default(Pair<TKey, TOutput>); 410element = default(Pair<TKey, TOutput>); 437m_mergeHelper.m_buffers[producer] = new Queue<Pair<TKey, TOutput>>(INITIAL_BUFFER_SIZE); 454private bool TryGetPrivateElement(int producer, ref Pair<TKey, TOutput> element)
System\Linq\Parallel\Partitioning\HashRepartitionEnumerator.cs (9)
27internal class HashRepartitionEnumerator<TInputOutput, THashKey, TIgnoreKey> : QueryOperatorEnumerator<Pair<TInputOutput, THashKey>, int> 36private readonly ListChunk<Pair<TInputOutput, THashKey>>[,] m_valueExchangeMatrix; // Matrix to do inter-task communication. 45internal ListChunk<Pair<TInputOutput, THashKey>> m_currentBuffer; // The buffer we're currently enumerating. 70CountdownEvent barrier, ListChunk<Pair<TInputOutput, THashKey>>[,] valueExchangeMatrix, CancellationToken cancellationToken) 107internal override bool MoveNext(ref Pair<TInputOutput, THashKey> currentElement, ref int currentKey) 204ListChunk<Pair<TInputOutput, THashKey>>[] privateBuffers = new ListChunk<Pair<TInputOutput, THashKey>>[m_partitionCount]; 237ListChunk<Pair<TInputOutput, THashKey>> buffer = privateBuffers[destinationIndex]; 241privateBuffers[destinationIndex] = buffer = new ListChunk<Pair<TInputOutput, THashKey>>(INITIAL_PRIVATE_BUFFER_SIZE);
System\Linq\Parallel\Partitioning\HashRepartitionStream.cs (1)
38internal abstract class HashRepartitionStream<TInputOutput, THashKey, TOrderKey> : PartitionedStream<Pair<TInputOutput, THashKey>, TOrderKey>
System\Linq\Parallel\Partitioning\OrderedHashRepartitionEnumerator.cs (9)
28internal class OrderedHashRepartitionEnumerator<TInputOutput, THashKey, TOrderKey> : QueryOperatorEnumerator<Pair<TInputOutput, THashKey>, TOrderKey> 36private readonly ListChunk<Pair<TInputOutput, THashKey>>[,] m_valueExchangeMatrix; // Matrix to do inter-task communication of values. 46internal ListChunk<Pair<TInputOutput, THashKey>> m_currentBuffer; // The buffer we're currently enumerating. 72ListChunk<Pair<TInputOutput, THashKey>>[,] valueExchangeMatrix, ListChunk<TOrderKey>[,] keyExchangeMatrix, CancellationToken cancellationToken) 110internal override bool MoveNext(ref Pair<TInputOutput, THashKey> currentElement, ref TOrderKey currentKey) 213ListChunk<Pair<TInputOutput, THashKey>>[] privateBuffers = new ListChunk<Pair<TInputOutput, THashKey>>[m_partitionCount]; 247ListChunk<Pair<TInputOutput, THashKey>> buffer = privateBuffers[destinationIndex]; 253privateBuffers[destinationIndex] = buffer = new ListChunk<Pair<TInputOutput, THashKey>>(INITIAL_PRIVATE_BUFFER_SIZE);
System\Linq\Parallel\Partitioning\OrderedHashRepartitionStream.cs (2)
32ListChunk<Pair<TInputOutput, THashKey>>[,] valueExchangeMatrix = 33new ListChunk<Pair<TInputOutput, THashKey>>[inputStream.PartitionCount, inputStream.PartitionCount];
System\Linq\Parallel\Partitioning\UnorderedHashRepartitionStream.cs (2)
38ListChunk<Pair<TInputOutput, THashKey>>[,] valueExchangeMatrix = 39new ListChunk<Pair<TInputOutput, THashKey>>[inputStream.PartitionCount, inputStream.PartitionCount];
System\Linq\Parallel\QueryOperators\Binary\ExceptQueryOperator.cs (22)
84PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftHashStream, PartitionedStream<TInputOutput, TRightKey> rightPartitionedStream, 89PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightHashStream = 143private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 144private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> m_rightSource; // Right data source. 155QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 156QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightSource, 186Pair<TInputOutput, NoKeyMemoizationRequired> rightElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 200Pair<TInputOutput, NoKeyMemoizationRequired> leftElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 232private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 233private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> m_rightSource; // Right data source. 236private IEnumerator<KeyValuePair<Wrapper<TInputOutput>, Pair<TInputOutput, TLeftKey>>> m_outputEnumerator; // The enumerator output elements + order keys. 244QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 245QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightSource, 273Pair<TInputOutput, NoKeyMemoizationRequired> rightElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 285new Dictionary<Wrapper<TInputOutput>, Pair<TInputOutput, TLeftKey>>( 288Pair<TInputOutput, NoKeyMemoizationRequired> leftElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 300Pair<TInputOutput, TLeftKey> oldEntry; 316Pair<TInputOutput, TLeftKey> currentPair = m_outputEnumerator.Current.Value;
System\Linq\Parallel\QueryOperators\Binary\GroupJoinQueryOperator.cs (2)
103PartitionedStream<Pair<TLeftInput, TKey>, TLeftKey> leftHashStream, PartitionedStream<TRightInput, TRightKey> rightPartitionedStream, 106PartitionedStream<Pair<TRightInput, TKey>, int> rightHashStream = ExchangeUtilities.HashRepartition(
System\Linq\Parallel\QueryOperators\Binary\HashJoinQueryOperatorEnumerator.cs (14)
42private readonly QueryOperatorEnumerator<Pair<TLeftInput, THashKey>, TLeftKey> m_leftSource; // Left (outer) data source. For probing. 43private readonly QueryOperatorEnumerator<Pair<TRightInput, THashKey>, int> m_rightSource; // Right (inner) data source. For building. 54internal HashLookup<THashKey, Pair<TRightInput, ListChunk<TRightInput>>> m_rightHashLookup; // The hash lookup. 65QueryOperatorEnumerator<Pair<TLeftInput, THashKey>, TLeftKey> leftSource, 66QueryOperatorEnumerator<Pair<TRightInput, THashKey>, int> rightSource, 111mutables.m_rightHashLookup = new HashLookup<THashKey, Pair<TRightInput, ListChunk<TRightInput>>>(m_keyComparer); 113Pair<TRightInput, THashKey> rightPair = default(Pair<TRightInput, THashKey>); 134Pair<TRightInput, ListChunk<TRightInput>> currentValue = default(Pair<TRightInput, ListChunk<TRightInput>>); 184Pair<TLeftInput, THashKey> leftPair = default(Pair<TLeftInput, THashKey>); 192Pair<TRightInput, ListChunk<TRightInput>> matchValue = default(Pair<TRightInput, ListChunk<TRightInput>>);
System\Linq\Parallel\QueryOperators\Binary\IntersectQueryOperator.cs (22)
86PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftHashStream, PartitionedStream<TInputOutput, TRightKey> rightPartitionedStream, 91PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightHashStream = 133private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 134private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> m_rightSource; // Right data source. 145QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 146QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightSource, 174Pair<TInputOutput, NoKeyMemoizationRequired> rightElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 188Pair<TInputOutput, NoKeyMemoizationRequired> leftElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 236private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 237private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> m_rightSource; // Right data source. 240private Dictionary<Wrapper<TInputOutput>, Pair<TInputOutput,TLeftKey>> m_hashLookup; // The hash lookup, used to produce the intersection. 248QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 249QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightSource, 276m_hashLookup = new Dictionary<Wrapper<TInputOutput>, Pair<TInputOutput, TLeftKey>>(m_comparer); 278Pair<TInputOutput, NoKeyMemoizationRequired> leftElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 286Pair<TInputOutput, TLeftKey> oldEntry; 302Pair<TInputOutput, NoKeyMemoizationRequired> rightElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 313Pair<TInputOutput, TLeftKey> entry;
System\Linq\Parallel\QueryOperators\Binary\JoinQueryOperator.cs (2)
105PartitionedStream<Pair<TLeftInput, TKey>, TLeftKey> leftHashStream, PartitionedStream<TRightInput, TRightKey> rightPartitionedStream, 109PartitionedStream<Pair<TRightInput, TKey>, int> rightHashStream = ExchangeUtilities.HashRepartition(
System\Linq\Parallel\QueryOperators\Binary\UnionQueryOperator.cs (27)
71PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftHashStream = 80PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, int> leftHashStream = 94PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftHashStream, PartitionedStream<TInputOutput, TRightKey> rightStream, 99PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> rightHashStream = 108PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, int> rightHashStream = 122PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftHashStream, 123PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> rightHashStream, 190private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 191private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> m_rightSource; // Right data source. 203QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 204QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> rightSource, 238Pair<TInputOutput, NoKeyMemoizationRequired> currentLeftElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 266Pair<TInputOutput, NoKeyMemoizationRequired> currentRightElement = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 306private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> m_leftSource; // Left data source. 307private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> m_rightSource; // Right data source. 309private IEnumerator<KeyValuePair<Wrapper<TInputOutput>, Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>>>> m_outputEnumerator; // Enumerator over the output of the union. 320QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TLeftKey> leftSource, 321QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TRightKey> rightSource, 356Dictionary<Wrapper<TInputOutput>, Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>>> union = 357new Dictionary<Wrapper<TInputOutput>, Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>>>(wrapperComparer); 359Pair<TInputOutput, NoKeyMemoizationRequired> elem = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 370Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>> oldEntry; 387Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>> oldEntry; 401Pair<TInputOutput, ConcatKey<TLeftKey, TRightKey>> current = m_outputEnumerator.Current.Value;
System\Linq\Parallel\QueryOperators\Inlined\DecimalAverageAggregationOperator.cs (6)
26internal sealed class DecimalAverageAggregationOperator : InlinedAggregationOperator<decimal, Pair<decimal, long>, decimal> 50using (IEnumerator<Pair<decimal, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 59Pair<decimal, long> result = enumerator.Current; 80protected override QueryOperatorEnumerator<Pair<decimal, long>, int> CreateEnumerator<TKey>( 91private class DecimalAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<decimal, long>> 112protected override bool MoveNextCore(ref Pair<decimal, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\DoubleAverageAggregationOperator.cs (6)
25internal sealed class DoubleAverageAggregationOperator : InlinedAggregationOperator<double, Pair<double, long>, double> 49using (IEnumerator<Pair<double, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 58Pair<double, long> result = enumerator.Current; 79protected override QueryOperatorEnumerator<Pair<double, long>, int> CreateEnumerator<TKey>( 91private class DoubleAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<double, long>> 112protected override bool MoveNextCore(ref Pair<double, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\FloatAverageAggregationOperator.cs (6)
25internal sealed class FloatAverageAggregationOperator : InlinedAggregationOperator<float, Pair<double, long>, float> 49using (IEnumerator<Pair<double, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 58Pair<double, long> result = enumerator.Current; 79protected override QueryOperatorEnumerator<Pair<double, long>, int> CreateEnumerator<TKey>( 91private class FloatAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<double, long>> 112protected override bool MoveNextCore(ref Pair<double, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\IntAverageAggregationOperator.cs (6)
26internal sealed class IntAverageAggregationOperator : InlinedAggregationOperator<int, Pair<long, long>, double> 50using (IEnumerator<Pair<long, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 59Pair<long, long> result = enumerator.Current; 80protected override QueryOperatorEnumerator<Pair<long, long>,int> CreateEnumerator<TKey>( 91private class IntAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<long, long>> 112protected override bool MoveNextCore(ref Pair<long, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\LongAverageAggregationOperator.cs (6)
26internal sealed class LongAverageAggregationOperator : InlinedAggregationOperator<long, Pair<long, long>, double> 50using (IEnumerator<Pair<long, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 59Pair<long, long> result = enumerator.Current; 80protected override QueryOperatorEnumerator<Pair<long, long>, int> CreateEnumerator<TKey>( 91private class LongAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<long, long>> 112protected override bool MoveNextCore(ref Pair<long, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\NullableDecimalAverageAggregationOperator.cs (6)
23internal sealed class NullableDecimalAverageAggregationOperator : InlinedAggregationOperator<decimal?, Pair<decimal, long>, decimal?> 47using (IEnumerator<Pair<decimal, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 55Pair<decimal, long> result = enumerator.Current; 76protected override QueryOperatorEnumerator<Pair<decimal, long>, int> CreateEnumerator<TKey>( 87private class NullableDecimalAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<decimal, long>> 108protected override bool MoveNextCore(ref Pair<decimal, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\NullableDoubleAverageAggregationOperator.cs (6)
23internal sealed class NullableDoubleAverageAggregationOperator : InlinedAggregationOperator<double?, Pair<double, long>, double?> 47using (IEnumerator<Pair<double, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 55Pair<double, long> result = enumerator.Current; 76protected override QueryOperatorEnumerator<Pair<double, long>, int> CreateEnumerator<TKey>( 87private class NullableDoubleAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<double, long>> 108protected override bool MoveNextCore(ref Pair<double, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\NullableFloatAverageAggregationOperator.cs (6)
23internal sealed class NullableFloatAverageAggregationOperator : InlinedAggregationOperator<float?, Pair<double, long>, float?> 47using (IEnumerator<Pair<double, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 55Pair<double, long> result = enumerator.Current; 76protected override QueryOperatorEnumerator<Pair<double, long>,int> CreateEnumerator<TKey>( 87private class NullableFloatAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<double, long>> 108protected override bool MoveNextCore(ref Pair<double, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\NullableIntAverageAggregationOperator.cs (6)
23internal sealed class NullableIntAverageAggregationOperator : InlinedAggregationOperator<int?, Pair<long, long>, double?> 47using (IEnumerator<Pair<long, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 55Pair<long, long> result = enumerator.Current; 76protected override QueryOperatorEnumerator<Pair<long, long>,int> CreateEnumerator<TKey>( 87private class NullableIntAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<long, long>> 108protected override bool MoveNextCore(ref Pair<long, long> currentElement)
System\Linq\Parallel\QueryOperators\Inlined\NullableLongAverageAggregationOperator.cs (6)
23internal sealed class NullableLongAverageAggregationOperator : InlinedAggregationOperator<long?, Pair<long, long>, double?> 47using (IEnumerator<Pair<long, long>> enumerator = GetEnumerator(ParallelMergeOptions.FullyBuffered, true)) 55Pair<long, long> result = enumerator.Current; 76protected override QueryOperatorEnumerator<Pair<long, long>, int> CreateEnumerator<TKey>( 88private class NullableLongAverageAggregationOperatorEnumerator<TKey> : InlinedAggregationOperatorEnumerator<Pair<long, long>> 109protected override bool MoveNextCore(ref Pair<long, long> currentElement)
System\Linq\Parallel\QueryOperators\Unary\DistinctQueryOperator.cs (9)
83PartitionedStream<Pair<TInputOutput, NoKeyMemoizationRequired>, TKey> hashStream, 126private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TKey> m_source; // The data source. 136QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TKey> source, IEqualityComparer<TInputOutput> comparer, 156Pair<TInputOutput, NoKeyMemoizationRequired> current = default(Pair<TInputOutput, NoKeyMemoizationRequired>); 200private QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TKey> m_source; // The data source. 211QueryOperatorEnumerator<Pair<TInputOutput, NoKeyMemoizationRequired>, TKey> source, 236Pair<TInputOutput, NoKeyMemoizationRequired> elem = default(Pair<TInputOutput, NoKeyMemoizationRequired>);
System\Linq\Parallel\QueryOperators\Unary\GroupByQueryOperator.cs (18)
103PartitionedStream<Pair<TSource, TGroupKey>, TKey> hashStream, 142PartitionedStream<Pair<TSource, TGroupKey>, TKey> hashStream, 231protected readonly QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> m_source; // The data source to enumerate. 247QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 318QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 333Pair<TSource, TGroupKey> sourceElement = default(Pair<TSource, TGroupKey>); 380QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 397Pair<TSource, TGroupKey> sourceElement = default(Pair<TSource, TGroupKey>); 436protected readonly QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> m_source; // The data source to enumerate. 453protected OrderedGroupByQueryOperatorEnumerator(QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 550internal OrderedGroupByIdentityQueryOperatorEnumerator(QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 566Pair<TSource, TGroupKey> sourceElement = default(Pair<TSource, TGroupKey>); 624internal OrderedGroupByElementSelectorQueryOperatorEnumerator(QueryOperatorEnumerator<Pair<TSource, TGroupKey>, TOrderKey> source, 642Pair<TSource, TGroupKey> sourceElement = default(Pair<TSource, TGroupKey>);
System\Linq\Parallel\QueryOperators\Unary\ReverseQueryOperator.cs (2)
114private List<Pair<TSource, TKey>> m_buffer; // Our buffer. [allocate in moveNext to avoid false-sharing] 140m_buffer = new List<Pair<TSource, TKey>>();
System\Linq\Parallel\QueryOperators\Unary\SelectManyQueryOperator.cs (6)
156var outputStream = new PartitionedStream<TOutput, Pair<TLeftKey, int>>(partitionCount, keyComparer, OrdinalIndexState); 174var outputStream = new PartitionedStream<TOutput, Pair<int, int>>(inputStream.PartitionCount, keyComparer, OrdinalIndexState); 237class IndexedSelectManyQueryOperatorEnumerator : QueryOperatorEnumerator<TOutput, Pair<int, int>> 277internal override bool MoveNext(ref TOutput currentElement, ref Pair<int, int> currentKey) 367class SelectManyQueryOperatorEnumerator<TLeftKey> : QueryOperatorEnumerator<TOutput, Pair<TLeftKey, int>> 407internal override bool MoveNext(ref TOutput currentElement, ref Pair<TLeftKey, int> currentKey)
System\Linq\Parallel\QueryOperators\Unary\SortQueryOperator.cs (3)
75IComparer<Pair<TSortKey, TKey2>> pairComparer = new PairComparer<TSortKey, TKey2>(m_comparer, key2Comparer); 76Func<TInputOutput, Pair<TSortKey, TKey2>> pairKeySelector = 79return new SortQueryOperator<TInputOutput, Pair<TSortKey, TKey2>>(Child, pairKeySelector, pairComparer, false);
System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipQueryOperator.cs (3)
164private List<Pair<TResult, TKey>> m_buffer; // Our buffer. 204List<Pair<TResult, TKey>> buffer = new List<Pair<TResult, TKey>>();
System\Linq\Parallel\QueryOperators\Unary\TakeOrSkipWhileQueryOperator.cs (3)
222private List<Pair<TResult, TKey>> m_buffer; // Our buffer. 262List<Pair<TResult, TKey>> buffer = new List<Pair<TResult, TKey>>();
System\Linq\Parallel\Scheduling\OrderPreservingPipeliningSpoolingTask.cs (6)
35private readonly Queue<Pair<TKey, TOutput>>[] m_buffers; // The buffer for the results 64Queue<Pair<TKey, TOutput>>[] buffers, 100Pair<TKey,TOutput>[] chunk = new Pair<TKey,TOutput>[chunkSize]; 154Queue<Pair<TKey,TOutput>>[] buffers, object[] bufferLocks, 168buffers[i] = new Queue<Pair<TKey, TOutput>>(OrderPreservingPipeliningMergeHelper<TOutput, TKey>.INITIAL_BUFFER_SIZE);
System\Linq\Parallel\Utils\ExchangeUtilities.cs (2)
97internal static PartitionedStream<Pair<TElement, THashKey>, int> HashRepartition<TElement, THashKey, TIgnoreKey>( 105internal static PartitionedStream<Pair<TElement, THashKey>, TOrderKey> HashRepartitionOrdered<TElement, THashKey, TOrderKey>(
System\Linq\Parallel\Utils\PairComparer.cs (3)
24internal class PairComparer<T, U> : IComparer<Pair<T, U>> 35public int Compare(Pair<T, U> x, Pair<T, U> y)