|
@@ -69,15 +69,9 @@ namespace System.Linq
|
|
|
if (selector == null)
|
|
|
throw Error.ArgumentNull(nameof(selector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, selector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, IAsyncEnumerable<TResult>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, IAsyncEnumerable<TResult>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|
|
@@ -105,15 +99,9 @@ namespace System.Linq
|
|
|
if (selector == null)
|
|
|
throw Error.ArgumentNull(nameof(selector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, selector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, ValueTask<IAsyncEnumerable<TResult>>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, ValueTask<IAsyncEnumerable<TResult>>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|
|
@@ -142,15 +130,9 @@ namespace System.Linq
|
|
|
if (selector == null)
|
|
|
throw Error.ArgumentNull(nameof(selector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, selector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, CancellationToken, ValueTask<IAsyncEnumerable<TResult>>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, CancellationToken, ValueTask<IAsyncEnumerable<TResult>>> selector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|
|
@@ -192,15 +174,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, IAsyncEnumerable<TCollection>> collectionSelector, Func<TSource, TCollection, TResult> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, IAsyncEnumerable<TCollection>> collectionSelector, Func<TSource, TCollection, TResult> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
await foreach (var element in source.WithCancellation(cancellationToken).ConfigureAwait(false))
|
|
|
{
|
|
@@ -223,15 +199,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
await foreach (var element in source.WithCancellation(cancellationToken).ConfigureAwait(false))
|
|
|
{
|
|
@@ -255,15 +225,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, CancellationToken, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, CancellationToken, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, CancellationToken, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, CancellationToken, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
await foreach (var element in source.WithCancellation(cancellationToken).ConfigureAwait(false))
|
|
|
{
|
|
@@ -298,15 +262,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, IAsyncEnumerable<TCollection>> collectionSelector, Func<TSource, TCollection, TResult> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, IAsyncEnumerable<TCollection>> collectionSelector, Func<TSource, TCollection, TResult> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|
|
@@ -336,15 +294,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|
|
@@ -375,15 +327,9 @@ namespace System.Linq
|
|
|
if (resultSelector == null)
|
|
|
throw Error.ArgumentNull(nameof(resultSelector));
|
|
|
|
|
|
-#if HAS_ASYNC_ENUMERABLE_CANCELLATION
|
|
|
return Core(source, collectionSelector, resultSelector);
|
|
|
|
|
|
- static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, CancellationToken, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, CancellationToken, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation]CancellationToken cancellationToken = default)
|
|
|
-#else
|
|
|
- return Create(Core);
|
|
|
-
|
|
|
- async IAsyncEnumerator<TResult> Core(CancellationToken cancellationToken)
|
|
|
-#endif
|
|
|
+ static async IAsyncEnumerable<TResult> Core(IAsyncEnumerable<TSource> source, Func<TSource, int, CancellationToken, ValueTask<IAsyncEnumerable<TCollection>>> collectionSelector, Func<TSource, TCollection, CancellationToken, ValueTask<TResult>> resultSelector, [System.Runtime.CompilerServices.EnumeratorCancellation] CancellationToken cancellationToken = default)
|
|
|
{
|
|
|
var index = -1;
|
|
|
|