Esempio n. 1
0
 void IEnumerator.Reset()
 {
     if (this._version != this._list._version)
     {
         ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
     }
     this._index   = 0;
     this._current = default(T);
 }
Esempio n. 2
0
 void System.Collections.IEnumerator.Reset()
 {
     if (version != dictionary.version)
     {
         ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
     }
     index        = 0;
     currentValue = default(TValue);
 }
Esempio n. 3
0
            void System.Collections.IEnumerator.Reset()
            {
                if (_version != _list._version)
                {
                    ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
                }

                _index   = 0;
                _current = default(T);
            }
Esempio n. 4
0
            void IEnumerator.Reset()
            {
                if (version != dictionary.version)
                {
                    ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
                }

                index   = 0;
                current = new KeyValuePair <TKey, TValue>();
            }
Esempio n. 5
0
 private bool MoveNextRare()
 {
     if (this._version != this._list._version)
     {
         ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
     }
     this._index   = this._list._size + 1;
     this._current = default(T);
     return(false);
 }
Esempio n. 6
0
        public void ForEach(Action <T> action)
        {
            if (action == null)
            {
                ThrowHelper.ThrowArgumentNullException(ExceptionArgument.action);
            }
            int version = this._version;

            for (int index = 0; index < this._size && version == this._version; ++index)
            {
                action(this._items[index]);
            }
            if (version == this._version)
            {
                return;
            }
            ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
        }
Esempio n. 7
0
                public bool MoveNext()
                {
                    if (version != dictionary.version)
                    {
                        ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
                    }

                    while ((uint)index < (uint)dictionary.count)
                    {
                        if (dictionary.entries[index].hashCode >= 0)
                        {
                            currentValue = dictionary.entries[index].value;
                            index++;
                            return(true);
                        }
                        index++;
                    }
                    index        = dictionary.count + 1;
                    currentValue = default(TValue);
                    return(false);
                }
Esempio n. 8
0
        public void ForEach(Action <T> action)
        {
            if (action == null)
            {
                ThrowHelper.ThrowArgumentNullException(ExceptionArgument.action);
            }

            int version = _version;

            for (int i = 0; i < _size; i++)
            {
                if (version != _version)
                {
                    break;
                }
                action(_items[i]);
            }

            if (version != _version)
            {
                ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
            }
        }
Esempio n. 9
0
            public bool MoveNext()
            {
                if (version != dictionary.version)
                {
                    ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
                }

                // Use unsigned comparison since we set index to dictionary.count+1 when the enumeration ends.
                // dictionary.count+1 could be negative if dictionary.count is Int32.MaxValue
                while ((uint)index < (uint)dictionary.count)
                {
                    if (dictionary.entries[index].hashCode >= 0)
                    {
                        current = new KeyValuePair <TKey, TValue>(dictionary.entries[index].key, dictionary.entries[index].value);
                        index++;
                        return(true);
                    }
                    index++;
                }

                index   = dictionary.count + 1;
                current = new KeyValuePair <TKey, TValue>();
                return(false);
            }
Esempio n. 10
0
        public void ForEach(Action <T> action)
        {
            if (action == null)
            {
                ThrowHelper.ThrowArgumentNullException(ExceptionArgument.action);
            }
            Contract.EndContractBlock();

            int version = _version;

            for (int i = 0; i < _size; i++)
            {
                if (version != _version && BinaryCompatibility.TargetsAtLeast_Desktop_V4_5)
                {
                    break;
                }
                action(_items[i]);
            }

            if (version != _version && BinaryCompatibility.TargetsAtLeast_Desktop_V4_5)
            {
                ThrowHelper.ThrowInvalidOperationException_InvalidOperation_EnumFailedVersion();
            }
        }