<PackageReference Include="AsyncEnumerator" Version="4.0.0" />

Dasync.Collections.IAsyncEnumeratorExtensions

public static class IAsyncEnumeratorExtensions
Extension methods for IAsyncEnumerator<T> interface
namespace Dasync.Collections { public static class IAsyncEnumeratorExtensions { public static Task<TSource> SingleAsync<TSource>(this IAsyncEnumerator<TSource> source, bool disposeSource = true); public static Task<TSource> SingleAsync<TSource>(this IAsyncEnumerator<TSource> source, string noneExceptionMessage, string manyExceptionMessage, bool disposeSource = true); public static Task<TSource> SingleAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static async Task<TSource> SingleAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, string noneExceptionMessage, string manyExceptionMessage, bool disposeSource = true); public static Task<TSource> SingleOrDefaultAsync<TSource>(this IAsyncEnumerator<TSource> source, bool disposeSource = true); public static async Task<TSource> SingleOrDefaultAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static Task<TSource> FirstAsync<TSource>(this IAsyncEnumerator<TSource> source, bool disposeSource = true); public static Task<TSource> FirstAsync<TSource>(this IAsyncEnumerator<TSource> source, string exceptionMessage, bool disposeSource = true); public static Task<TSource> FirstAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static async Task<TSource> FirstAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, string exceptionMessage, bool disposeSource = true); public static Task<TSource> FirstOrDefaultAsync<TSource>(this IAsyncEnumerator<TSource> source, bool disposeSource = true); public static async Task<TSource> FirstOrDefaultAsync<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static IAsyncEnumerator<TResult> Select<TSource, TResult>(this IAsyncEnumerator<TSource> source, Func<TSource, TResult> selector, bool disposeSource = true); public static IAsyncEnumerator<TResult> Select<TSource, TResult>(this IAsyncEnumerator<TSource> source, Func<TSource, long, TResult> selector, bool disposeSource = true); public static IAsyncEnumerator<TSource> Take<TSource>(this IAsyncEnumerator<TSource> source, int count, bool disposeSource = true); public static IAsyncEnumerator<TSource> TakeWhile<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static async Task<List<T>> ToListAsync<T>(this IAsyncEnumerator<T> source, bool disposeSource = true); public static async Task<T[]> ToArrayAsync<T>(this IAsyncEnumerator<T> source, bool disposeSource = true); public static IAsyncEnumerator<TSource> Skip<TSource>(this IAsyncEnumerator<TSource> source, int count, bool disposeSource = true); public static IAsyncEnumerator<TSource> SkipWhile<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static IAsyncEnumerator<TSource> Where<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, bool> predicate, bool disposeSource = true); public static IAsyncEnumerator<TSource> Where<TSource>(this IAsyncEnumerator<TSource> source, Func<TSource, long, bool> predicate, bool disposeSource = true); public static IAsyncEnumerator<TResult> Cast<TResult>(this IAsyncEnumerator source, bool disposeSource = true); public static IAsyncEnumerator<TSource> DefaultIfEmpty<TSource>(this IAsyncEnumerator<TSource> source, bool disposeSource = true); public static IAsyncEnumerator<TSource> DefaultIfEmpty<TSource>(this IAsyncEnumerator<TSource> source, TSource defaultValue, bool disposeSource = true); public static IAsyncEnumerator<List<TSource>> Batch<TSource>(this IAsyncEnumerator<TSource> source, int batchSize, bool disposeSource = true); public static IAsyncEnumerator<TStandardCollection> Batch<TSource, TStandardCollection>(this IAsyncEnumerator<TSource> source, int batchSize, bool disposeSource = true); public static IAsyncEnumerator<List<TSource>> Batch<TSource>(this IAsyncEnumerator<TSource> source, long maxBatchWeight, Func<TSource, long> weightSelector, bool disposeSource = true); public static IAsyncEnumerator<TStandardCollection> Batch<TSource, TStandardCollection>(this IAsyncEnumerator<TSource> source, long maxBatchWeight, Func<TSource, long> weightSelector, bool disposeSource = true); public static IAsyncEnumerator<List<TSource>> Batch<TSource>(this IAsyncEnumerator<TSource> source, int maxItemsInBatch, long maxBatchWeight, Func<TSource, long> weightSelector, bool disposeSource = true); public static IAsyncEnumerator<TStandardCollection> Batch<TSource, TStandardCollection>(this IAsyncEnumerator<TSource> source, int maxItemsInBatch, long maxBatchWeight, Func<TSource, long> weightSelector, bool disposeSource = true); public static IAsyncEnumerator<TBatch> Batch<TSource, TBatch>(this IAsyncEnumerator<TSource> source, int? maxItemsInBatch, long maxBatchWeight, Func<TSource, long> weightSelector, Func<int?, TBatch> createBatch, Action<TBatch, TSource> addItem, bool disposeSource = true); public static IAsyncEnumerator<T> UnionAll<T>(this IAsyncEnumerator<T> first, IAsyncEnumerator<T> second, bool disposeSource = true); public static IAsyncEnumerator<T> UnionAll<T>(this IEnumerable<IAsyncEnumerator<T>> collections, bool disposeSource = true); } }