Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ JoinIterator< TOuter, TInner, TKey, TResult >()

static IEnumerable< TResult > System.Linq.Enumerable.JoinIterator< TOuter, TInner, TKey, TResult > ( IEnumerable< TOuter > outer,
IEnumerable< TInner > inner,
Func< TOuter, TKey > outerKeySelector,
Func< TInner, TKey > innerKeySelector,
Func< TOuter, TInner, TResult > resultSelector,
IEqualityComparer< TKey > comparer )
inlinestaticprivate

Definition at line 5157 of file Enumerable.cs.

5158 {
5160 if (!e.MoveNext())
5161 {
5162 yield break;
5163 }
5165 if (lookup.Count == 0)
5166 {
5167 yield break;
5168 }
5169 do
5170 {
5171 TOuter item = e.Current;
5173 if (grouping != null)
5174 {
5175 int count = grouping._count;
5176 TInner[] elements = grouping._elements;
5177 int i = 0;
5178 while (i != count)
5179 {
5180 yield return resultSelector(item, elements[i]);
5181 int num = i + 1;
5182 i = num;
5183 }
5184 }
5185 }
5186 while (e.MoveNext());
5187 }

References System.Collections.Generic.Dictionary< TKey, TValue >._count, System.comparer, System.Linq.count, System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Collections.Generic.Dictionary< TKey, TValue >.GetEnumerator(), System.Linq.inner, System.Linq.innerKeySelector, System.item, System.Linq.outer, System.Linq.outerKeySelector, and System.Linq.resultSelector.