public static Dictionary <TKey, TSource> ToDictionary <TEnumerable, TEnumerator, TSource, TKey, TKeySelector>(this TEnumerable source, TKeySelector keySelector, IEqualityComparer <TKey>?comparer = default)
     where TEnumerable : IValueReadOnlyCollection <TSource, TEnumerator>
     where TEnumerator : struct, IEnumerator <TSource>
     where TKey : notnull
     where TKeySelector : struct, IFunction <TSource, TKey>
 => source.Count is 0
 // ReSharper disable once HeapView.ObjectAllocation.Evident
         ? new Dictionary <TKey, TSource>()
 : ValueEnumerableExtensions.ToDictionary <TEnumerable, TEnumerator, TSource, TKey, TKeySelector>(source, keySelector, comparer);
 static Dictionary <TKey, TElement> ToDictionary <TEnumerable, TEnumerator, TSource, TKey, TElement, TKeySelector, TElementSelector, TPredicate>(this TEnumerable source, TKeySelector keySelector, TElementSelector elementSelector, IEqualityComparer <TKey>?comparer, TPredicate predicate)
     where TEnumerable : IValueReadOnlyCollection <TSource, TEnumerator>
     where TEnumerator : struct, IEnumerator <TSource>
     where TKey : notnull
     where TKeySelector : struct, IFunction <TSource, TKey>
     where TElementSelector : struct, IFunction <TSource, TElement>
     where TPredicate : struct, IFunction <TSource, bool>
 => source.Count is 0
 // ReSharper disable once HeapView.ObjectAllocation.Evident
         ? new Dictionary <TKey, TElement>()
 : ValueEnumerableExtensions.ToDictionary <TEnumerable, TEnumerator, TSource, TKey, TElement, TKeySelector, TElementSelector, TPredicate>(source, keySelector, elementSelector, comparer, predicate);
 public static Dictionary <TKey, TElement> ToDictionary <TSource, TKey, TElement>(this ImmutableQueue <TSource> source, Selector <TSource, TKey> keySelector, NullableSelector <TSource, TElement> elementSelector, IEqualityComparer <TKey>?comparer = default)
     where TKey : notnull
 => ValueEnumerableExtensions.ToDictionary <ValueWrapper <TSource>, ValueWrapper <TSource> .Enumerator, TSource, TKey, TElement>(new ValueWrapper <TSource>(source), keySelector, elementSelector, comparer);
Exemple #4
0
 public static Dictionary <TKey, TElement> ToDictionary <TSource, TKey, TElement>(this ImmutableStack <TSource> source, NullableSelector <TSource, TKey> keySelector, NullableSelector <TSource, TElement> elementSelector)
 => ValueEnumerableExtensions.ToDictionary <ValueWrapper <TSource>, ValueWrapper <TSource> .Enumerator, TSource, TKey, TElement>(new ValueWrapper <TSource>(source), keySelector, elementSelector);
Exemple #5
0
 public static Dictionary <TKey, TSource> ToDictionary <TSource, TKey>(this ImmutableStack <TSource> source, NullableSelector <TSource, TKey> keySelector, IEqualityComparer <TKey>?comparer)
 => ValueEnumerableExtensions.ToDictionary <ValueWrapper <TSource>, ValueWrapper <TSource> .Enumerator, TSource, TKey>(new ValueWrapper <TSource>(source), keySelector, comparer);