Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
ZipQueryOperator.cs
Go to the documentation of this file.
3
5
6internal sealed class ZipQueryOperator<TLeftInput, TRightInput, TOutput> : QueryOperator<TOutput>
7{
47
49
51
53
54 private readonly bool _prematureMergeLeft;
55
56 private readonly bool _prematureMergeRight;
57
58 private readonly bool _limitsParallelism;
59
61
62 internal override bool LimitsParallelism => _limitsParallelism;
63
68
82
102
104 {
107 while (leftEnumerator.MoveNext() && rightEnumerator.MoveNext())
108 {
109 yield return _resultSelector(leftEnumerator.Current, rightEnumerator.Current);
110 }
111 }
112}
QueryResults< TOutput > Open(QuerySettings settings, bool preferStriping)
IEnumerable< TOutput > AsSequentialQuery(CancellationToken token)
static QueryOperator< TOutput > AsQueryOperator(IEnumerable< TOutput > source)
virtual T GetElement(int index)
override void GivePartitionedStream(IPartitionedStreamRecipient< TOutput > recipient)
ZipQueryOperatorResults(QueryResults< TLeftInput > leftChildResults, QueryResults< TRightInput > rightChildResults, Func< TLeftInput, TRightInput, TOutput > resultSelector, int partitionCount, bool preferStriping)
readonly Func< TLeftInput, TRightInput, TOutput > _resultSelector
override QueryResults< TOutput > Open(QuerySettings settings, bool preferStriping)
ZipQueryOperator(QueryOperator< TLeftInput > left, QueryOperator< TRightInput > right, Func< TLeftInput, TRightInput, TOutput > resultSelector)
readonly QueryOperator< TRightInput > _rightChild
readonly QueryOperator< TLeftInput > _leftChild
override IEnumerable< TOutput > AsSequentialQuery(CancellationToken token)
ZipQueryOperator(ParallelQuery< TLeftInput > leftChildSource, ParallelQuery< TRightInput > rightChildSource, Func< TLeftInput, TRightInput, TOutput > resultSelector)
readonly Func< TLeftInput, TRightInput, TOutput > _resultSelector
static byte Min(byte val1, byte val2)
Definition Math.cs:912