/// <summary> /// Adds all of the entries in the <code>other</code> map, performing /// <code>function</code> on them to transform the values /// </summary> public virtual void AddAll <V2, _T1>(Edu.Stanford.Nlp.Util.TwoDimensionalMap <_T1> other, Func <V2, V> function) where _T1 : K1 { foreach (TwoDimensionalMap.Entry <K1, K2, V2> entry in other) { Put(entry.GetFirstKey(), entry.GetSecondKey(), function.Apply(entry.GetValue())); } }
public TwoDimensionalMap(Edu.Stanford.Nlp.Util.TwoDimensionalMap <K1, K2, V> tdm) : this(tdm.mf1, tdm.mf2) { foreach (K1 k1 in tdm.map.Keys) { IDictionary <K2, V> m = tdm.map[k1]; IDictionary <K2, V> copy = mf2.NewMap(); copy.PutAll(m); this.map[k1] = copy; } }
public override bool Equals(object o) { if (o == this) { return(true); } if (!(o is Edu.Stanford.Nlp.Util.TwoDimensionalMap)) { return(false); } Edu.Stanford.Nlp.Util.TwoDimensionalMap <object, object, object> other = (Edu.Stanford.Nlp.Util.TwoDimensionalMap <object, object, object>)o; return(map.Equals(other.map)); }