public B this[A a] { get { foreach (var pair in pairings) { if (pair.a.Equals(a)) { return(pair.b); } } throw new KeyNotFoundException(); } set { for (int i = 0; i < pairings.Count; ++i) { if (pairings[i].Equals(a)) { pairings[i] = new Pairing <A, B>(pairings[i].a, value); } } } }
public A this[B b] { get { foreach (var pair in pairings) { if (pair.b.Equals(b)) { return(pair.a); } } throw new KeyNotFoundException(); } set { for (int i = 0; i < pairings.Count; ++i) { if (pairings[i].Equals(b)) { pairings[i] = new Pairing <A, B>(value, pairings[i].b); } } } }