public static Map <A, Map <B, Map <C, Map <D, V> > > > MapRemoveT <A, B, C, D, T, V>(this Map <A, Map <B, Map <C, Map <D, T> > > > self, Func <Map <D, T>, Map <D, V> > map) { return(self.Map((ka, va) => va.Map((kb, vb) => vb.Map((kc, vc) => map(vc)) .Filter((kc, vc) => vc.Count > 0)) .Filter((kb, vb) => vb.Count > 0)) .Filter((ka, va) => va.Count > 0)); }
public HMapInternal <K, U> Map <U>(Func <V, U> mapper) => new HMapInternal <K, U>(hashTable.Map(bucket => bucket.Map(kv => KV(kv.Key, mapper(kv.Value)))), Count);
public void HashFieldAddOrUpdate <T>(string key, Map <string, T> fields) => Retry(() => Db.HashSet( key, fields.Map((k, v) => new HashEntry(k, JsonConvert.SerializeObject(v))).Values.ToArray() ));
public HSetInternal <U> Map <U>(Func <T, U> map) => new HSetInternal <U>(hashTable.Map(bucket => bucket.Map(map)), Count);
public static Map <A, Map <B, Map <C, Map <D, T> > > > FilterT <A, B, C, D, T>(this Map <A, Map <B, Map <C, Map <D, T> > > > self, Func <T, bool> pred) { return(self.Map((ka, va) => va.FilterT(pred))); }
public static Map <A, Map <B, Map <C, Map <D, V> > > > MapT <A, B, C, D, T, V>(this Map <A, Map <B, Map <C, Map <D, T> > > > self, Func <T, V> map) { return(self.Map((ka, va) => va.MapT(map))); }
public static Map <A, Map <B, V> > MapRemoveT <A, B, T, V>(this Map <A, Map <B, T> > self, Func <Map <B, T>, Map <B, V> > map) { return(self.Map((ka, va) => map(va)) .Filter((ka, va) => va.Count > 0)); }