using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace Discord { public static class AsyncEnumerableExtensions { /// /// Flattens the specified pages into one asynchronously /// /// /// /// public static async Task> FlattenAsync(this IAsyncEnumerable> source) { return await source.Flatten().ToArray().ConfigureAwait(false); } public static IAsyncEnumerable Flatten(this IAsyncEnumerable> source) { return source.SelectMany(enumerable => enumerable.ToAsyncEnumerable()); } } }