public static HMap <K, V> addOrUpdateRange <K, V>(HMap <K, V> map, IEnumerable <KeyValuePair <K, V> > range) => map.AddOrUpdateRange(range);
public static HMap <K, V> tryAdd <K, V>(HMap <K, V> map, K key, V value) => map.TryAdd(key, value);
public HMap <K, V> Append(HMap <K, V> rhs) => Wrap(Value.Append(rhs.Value));
public static S fold <S, K, V>(HMap <K, V> map, S state, Func <S, V, S> folder) => map.Fold(state, folder);
public static bool exists <K, V>(HMap <K, V> map, Func <V, bool> pred) => map.Exists(pred);
public static bool forall <K, V>(HMap <K, V> map, Func <KeyValuePair <K, V>, bool> pred) => map.ForAll(pred);
public static HMap <K, V> filter <K, V>(HMap <K, V> map, Func <K, V, bool> predicate) => map.Filter(predicate);
public static HMap <K, V> trySetItem <K, V>(HMap <K, V> map, K key, V value) => map.TrySetItem(key, value);
public static HMap <K, V> trySetItem <K, V>(HMap <K, V> map, K key, Func <V, V> Some) => map.TrySetItem(key, Some);
public static bool contains <K, V>(HMap <K, V> map, Tuple <K, V> kv) => map.Contains(kv.Item1, kv.Item2);
public static HMap <K, V> clear <K, V>(HMap <K, V> map) => map.Clear();
public static bool contains <K, V>(HMap <K, V> map, KeyValuePair <K, V> kv) => map.Contains(kv.Key, kv.Value);
public static bool containsKey <K, V>(HMap <K, V> map, K key) => map.ContainsKey(key);
public static HMap <K, V> remove <K, V>(HMap <K, V> map, K key) => map.Remove(key);
/// <summary> /// Atomically iterate through all key/value pairs in the map (in order) and execute an /// action on each /// </summary> /// <param name="action">Action to execute</param> /// <returns>Unit</returns> public static Unit iter <K, V>(HMap <K, V> map, Action <K, V> action) => map.Iter(action);
public static HMap <K, V> trySetItems <K, V>(HMap <K, V> map, IEnumerable <Tuple <K, V> > items) => map.SetItems(items);
public static bool forall <K, V>(HMap <K, V> map, Func <Tuple <K, V>, bool> pred) => map.ForAll(pred);
public static HMap <K, V> trySetItems <K, V>(HMap <K, V> map, IEnumerable <KeyValuePair <K, V> > items) => map.TrySetItems(items);
public static HMap <K, U> map <K, T, U>(HMap <K, T> map, Func <K, T, U> f) => map.Select(f);
public static HMap <K, V> trySetItems <K, V>(HMap <K, V> map, IEnumerable <K> keys, Func <V, V> Some) => map.TrySetItems(keys, Some);
public static int length <K, T>(HMap <K, T> map) => map.Count;
public static Option <V> find <K, V>(HMap <K, V> map, K key) => map.Find(key);
public static bool exists <K, V>(HMap <K, V> map, Func <KeyValuePair <K, V>, bool> pred) => map.Exists(pred);
public static IEnumerable <V> findSeq <K, V>(HMap <K, V> map, K key) => map.FindSeq(key);
public static HMap <K, V> add <K, V>(HMap <K, V> map, K key, V value) => map.Add(key, value);
public static R find <K, V, R>(HMap <K, V> map, K key, Func <V, R> Some, Func <R> None) => map.Find(key, Some, None);
public static HMap <K, V> addOrUpdate <K, V>(HMap <K, V> map, K key, V value) => map.AddOrUpdate(key, value);
public static HMap <K, V> setItem <K, V>(HMap <K, V> map, K key, Func <V, V> mapper) => map.SetItem(key, mapper);
public HMap <K, V> Subtract(HMap <K, V> rhs) => Wrap(Value.Subtract(rhs.Value));
public static HMap <K, V> tryAddRange <K, V>(HMap <K, V> map, IEnumerable <KeyValuePair <K, V> > keyValues) => map.TryAddRange(keyValues);