public IEnumerator <TResult> GetEnumerator() { if (notifyEnumerable != null) { return(notifyEnumerable.GetEnumerator()); } return(SL.SelectMany(Source, FuncCompiled, ResultSelectorCompiled).GetEnumerator()); }
public void BlinqShouldEqualLinqNativeArraySelectManyIndexResultSelector([ArrayValues] int[] sourceArr) { var sourceNativeArr = new NativeArray <int>(sourceArr, Allocator.Persistent); var expected = ExceptionAndValue(() => Linq.ToArray(Linq.SelectMany(sourceNativeArr, (x, i) => RepeatAmountPlusIndex.Invoke(x, i), AddToIndex.Invoke))); var actual = ExceptionAndValue(() => Linq.ToArray(Blinq.SelectMany(sourceNativeArr, RepeatAmountPlusIndex, AddToIndex))); AssertAreEqual(expected, actual); sourceNativeArr.Dispose(); }
public void BlinqShouldEqualLinqValueSequenceSelectMany([ArrayValues] int[] sourceArr) { var sourceNativeArr = new NativeArray <int>(sourceArr, Allocator.Persistent); var source = sourceNativeArr.ToValueSequence(); var expected = ExceptionAndValue(() => Linq.ToArray(Linq.SelectMany(source, (x) => RepeatAmount.Invoke(x)))); var actual = ExceptionAndValue(() => Linq.ToArray(Blinq.SelectMany(source, RepeatAmount))); AssertAreEqual(expected, actual); sourceNativeArr.Dispose(); }
public IEnumerator <TResult> GetEnumerator() { return(SL.SelectMany(Source, SelectorCompiled).GetEnumerator()); }
public static IEnumerable <TResult> SelectMany <TSource, TCollection, TResult>(this IEnumerable <TSource> source, Func <TSource, int, IEnumerable <TCollection> > collectionSelector, Func <TSource, TCollection, TResult> resultSelector) => LinqEnumerable.SelectMany(source, collectionSelector, resultSelector);
public static IEnumerable <TResult> SelectMany <TSource, TResult>(this IEnumerable <TSource> source, Func <TSource, int, IEnumerable <TResult> > selector) => LinqEnumerable.SelectMany(source, selector);