Implemented functions for `FlatList` module to correspond to `Array` module
Надо будет все вызовы переделать на вызовы отсюда https://github.com/dotnet/runtime/blob/main/src/libraries/System.Collections.Immutable/src/System/Linq/ImmutableArrayExtensions.cs
У них это единственный класс, который имеет свой LINQ.
Потому, что вместо проверки на null там проверяется, есть ли внутри ImmutableArray сам массив.
Соответственно почти везде проверки check можно будут повыбрасывать
Посмотрел ещё раз https://github.com/dotnet/runtime/blob/main/src/libraries/System.Collections.Immutable/src/System/Linq/ImmutableArrayExtensions.cs
По хорошему надо таки его использовать. Там много оптимизаций под ImmutableArray
При чём, наверное, именно для этой коллекции стоит отойти от правила возвращать такой же тип при преобразовании, а возвращать IEnumerable