public T this[int index] { get { T value; container.TryGetValue(CoordIndexer.FromIndex(this, index), out value); return(value); } set { container[CoordIndexer.FromIndex(this, index)] = value; } }
public IEnumerator <T> GetEnumerator() { T value; for (int i = 0, size = Size; i < size; i++) { container.TryGetValue(CoordIndexer.FromIndex(this, i), out value); yield return(value); } }
IEnumerator <KeyValuePair <CoordIndexer, T> > IEnumerable <KeyValuePair <CoordIndexer, T> > .GetEnumerator() { CoordIndexer idx; T value; for (int i = 0, l = Size; i < l; i++) { idx = CoordIndexer.FromIndex(this, i); container.TryGetValue(idx, out value); yield return(new KeyValuePair <CoordIndexer, T>(idx, value)); } }