コード例 #1
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
        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);
            }
        }
コード例 #2
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 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;
     }
 }
コード例 #3
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 T IDictionary <CoordIndexer, T> .this[CoordIndexer key] {
     get {
         T value;
         container.TryGetValue(key, out value);
         return(value);
     }
     set {
         EnsureIndexer(key);
         container[key] = value;
     }
 }
コード例 #4
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 void EnsureIndexer(CoordIndexer indexer)
 {
     if (indexer == null)
     {
         throw new ArgumentNullException("indexer");
     }
     if (!indexer.IsChild(this))
     {
         throw new ArgumentException("The coord indexer instance is not initialized for this array.", "key");
     }
 }
コード例 #5
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
        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));
            }
        }
コード例 #6
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 bool IDictionary <CoordIndexer, T> .TryGetValue(CoordIndexer key, out T value)
 {
     EnsureIndexer(key);
     return(container.TryGetValue(key, out value));
 }
コード例 #7
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 bool IDictionary <CoordIndexer, T> .Remove(CoordIndexer key)
 {
     EnsureIndexer(key);
     return(container.Remove(key));
 }
コード例 #8
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 bool IDictionary <CoordIndexer, T> .ContainsKey(CoordIndexer key)
 {
     EnsureIndexer(key);
     return(container.ContainsKey(key));
 }
コード例 #9
0
ファイル: Array.cs プロジェクト: JLChnToZ/MazeGenerator
 void IDictionary <CoordIndexer, T> .Add(CoordIndexer key, T value)
 {
     EnsureIndexer(key);
     container.Add(key, value);
 }