DotNext by .NET Foundation and Contributors

<PackageReference Include="DotNext" Version="4.0.0-rc.2" />

 Sequence

public static class Sequence
public struct AsyncGenerator<T> : IAsyncEnumerable<T>

public struct Generator<T>

public static IEnumerable<T> Append<T>(this IEnumerable<T> collection, T[] items)

public static MemoryOwner<T> Copy<T>(this IEnumerable<T> enumerable, int sizeHint = 0, MemoryAllocator<T> allocator = null)

public static bool ElementAt<T>(this IEnumerable<T> collection, int index, out T element)

public static ValueTask<Optional<T>> ElementAtAsync<T>(this IAsyncEnumerable<T> collection, int index, CancellationToken token = default)

public static Optional<T> FirstOrEmpty<T>(this IEnumerable<T> seq)

public static Optional<T> FirstOrEmpty<T>(this IEnumerable<T> seq, Predicate<T> filter)

public static ValueTask<Optional<T>> FirstOrEmptyAsync<T>(this IAsyncEnumerable<T> seq, CancellationToken token = default)

public static ValueTask<Optional<T>> FirstOrEmptyAsync<T>(this IAsyncEnumerable<T> seq, Predicate<T> filter, CancellationToken token = default)

public static T? FirstOrNull<T>(this IEnumerable<T> seq) where T : struct

public static ValueTask<T?> FirstOrNullAsync<T>(this IAsyncEnumerable<T> seq, CancellationToken token = default) where T : struct

public static void ForEach<T>(this IEnumerable<T> collection, Action<T> action)

public static ValueTask ForEachAsync<T>(this IAsyncEnumerable<T> collection, Action<T> action, CancellationToken token = default)

public static ValueTask ForEachAsync<T>(this IAsyncEnumerable<T> collection, Func<T, CancellationToken, ValueTask> action, CancellationToken token = default)

public static ValueTask ForEachAsync<T>(this IEnumerable<T> collection, Func<T, CancellationToken, ValueTask> action, CancellationToken token = default)

public static IAsyncEnumerator<T> GetAsyncEnumerator<T>(this IEnumerable<T> enumerable, CancellationToken token = default)

public static ConsumingEnumerable<T> GetConsumer<T>(this IProducerConsumerCollection<T> collection)

public static IEnumerator<T> GetEmptyEnumerator<T>()

public static LimitedEnumerator<T> Limit<T>(this IEnumerator<T> enumerator, int count, bool leaveOpen = false)

public static IEnumerable<T> Prepend<T>(this IEnumerable<T> collection, T[] items)

public static int SequenceHashCode(this IEnumerable<object> sequence, bool salted = true)

public static IEnumerable<T> Singleton<T>(T item)

public static bool Skip<T>(this IEnumerator<T> enumerator, int count)

public static bool Skip<TEnumerator, T>(this ref TEnumerator enumerator, int count) where TEnumerator : struct, IEnumerator<T>

public static ValueTask<bool> SkipAsync<T>(this IAsyncEnumerator<T> enumerator, int count)

public static IAsyncEnumerable<T> SkipNulls<T>(this IAsyncEnumerable<T> collection)

public static IEnumerable<T> SkipNulls<T>(this IEnumerable<T> collection)

public static Task<T[]> ToArrayAsync<T>(this IAsyncEnumerable<T> collection, int initialCapacity = 10, MemoryAllocator<T> allocator = null, CancellationToken token = default)

public static IAsyncEnumerable<T> ToAsyncEnumerable<T>(this IEnumerable<T> enumerable)

public static AsyncGenerator<T> ToAsyncEnumerable<T>(this Func<CancellationToken, ValueTask<Optional<T>>> generator)

public static Generator<T> ToEnumerable<T>(this Func<Optional<T>> generator)

public static IEnumerator<T> ToEnumerator<T>(ReadOnlyMemory<T> memory)

public static string ToString<T>(this IEnumerable<T> collection, string delimiter, string ifEmpty = "")