Re: Полезняшка для dictionary
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 29.04.16 15:22
Оценка:
Здравствуйте, -n1l-, Вы писали:

N>Как вам такое?


Присутствует под названием GetValueOrDefault. Или я что то не так понял?
[Pure]
public static TResult GetValueOrDefault<TKey, TValue, TResult>(
    [NotNull] this IDictionary<TKey, TValue> dictionary,
    TKey key,
    [NotNull, InstantHandle] Func<TKey, TValue, TResult> resultSelector,
    [NotNull, InstantHandle] Func<TKey, TResult> defaultValueFactory)
{
    Code.NotNull(dictionary, nameof(dictionary));
    Code.NotNull(resultSelector, nameof(resultSelector));
    Code.NotNull(defaultValueFactory, nameof(defaultValueFactory));

    TValue result;
    return
        dictionary.TryGetValue(key, out result)
            ? resultSelector(key, result)
            : defaultValueFactory(key);
}
... << RSDN@Home 1.0.0 alpha 5 rev. 0 on Windows 8 6.2.9200.0>>
AVK Blog
Отредактировано 29.04.2016 15:23 AndrewVK . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.