Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Shared / MS / Internal / SequentialUshortCollection.cs / 1305600 / SequentialUshortCollection.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // Description: A class that implements ICollectionfor a sequence of numbers [0..n-1]. // // // History: // 03/21/2005 : MLeonov - Created it. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Text; using System.Runtime.InteropServices; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; namespace MS.Internal { internal class SequentialUshortCollection : ICollection { public SequentialUshortCollection(ushort count) { _count = count; } #region ICollection Members public void Add(ushort item) { throw new NotSupportedException(); } public void Clear() { throw new NotSupportedException(); } public bool Contains(ushort item) { return item < _count; } public void CopyTo(ushort[] array, int arrayIndex) { if (array == null) { throw new ArgumentNullException("array"); } if (array.Rank != 1) { throw new ArgumentException(SR.Get(SRID.Collection_BadRank)); } // The extra "arrayIndex >= array.Length" check in because even if _collection.Count // is 0 the index is not allowed to be equal or greater than the length // (from the MSDN ICollection docs) if (arrayIndex < 0 || arrayIndex >= array.Length || (arrayIndex + Count) > array.Length) { throw new ArgumentOutOfRangeException("arrayIndex"); } for (ushort i = 0; i < _count; ++i) array[arrayIndex + i] = i; } public int Count { get { return _count; } } public bool IsReadOnly { get { return true; } } public bool Remove(ushort item) { throw new NotSupportedException(); } #endregion #region IEnumerable Members public IEnumerator GetEnumerator() { for (ushort i = 0; i < _count; ++i) yield return i; } #endregion #region IEnumerable Members IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable )this).GetEnumerator(); } #endregion private ushort _count; } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- __Filters.cs
- MD5Cng.cs
- SerializerProvider.cs
- TextTreeInsertElementUndoUnit.cs
- MediaTimeline.cs
- Vector3DAnimation.cs
- SspiWrapper.cs
- TextEncodedRawTextWriter.cs
- DecoderReplacementFallback.cs
- OdbcHandle.cs
- XmlAttributeOverrides.cs
- TreeViewTemplateSelector.cs
- EditorZone.cs
- handlecollector.cs
- DataTemplateSelector.cs
- TailCallAnalyzer.cs
- XmlElementList.cs
- Converter.cs
- DoubleCollection.cs
- TdsEnums.cs
- DynamicDocumentPaginator.cs
- ProfileManager.cs
- ServicesExceptionNotHandledEventArgs.cs
- VirtualPath.cs
- HttpRequestCacheValidator.cs
- CheckBox.cs
- WebReferenceCollection.cs
- PermissionAttributes.cs
- MissingMemberException.cs
- FixUpCollection.cs
- Error.cs
- SafeRightsManagementPubHandle.cs
- ComponentChangingEvent.cs
- TableRowCollection.cs
- ContentPlaceHolder.cs
- KeyFrames.cs
- SatelliteContractVersionAttribute.cs
- SafeEventLogWriteHandle.cs
- MimeMapping.cs
- SmtpNtlmAuthenticationModule.cs
- DocumentViewerBaseAutomationPeer.cs
- DataGridViewEditingControlShowingEventArgs.cs
- DataGridViewColumnCollection.cs
- X509Logo.cs
- ProgressBarRenderer.cs
- EdmItemCollection.cs
- ToolStripItemClickedEventArgs.cs
- MenuItemCollection.cs
- AuthenticationService.cs
- LinkedList.cs
- KeysConverter.cs
- DbQueryCommandTree.cs
- PagerStyle.cs
- ACL.cs
- CurrencyWrapper.cs
- SerializationEventsCache.cs
- SendParametersContent.cs
- Rfc2898DeriveBytes.cs
- DbCommandDefinition.cs
- SelectionList.cs
- NoResizeHandleGlyph.cs
- TableLayoutStyleCollection.cs
- ActiveXContainer.cs
- XmlResolver.cs
- ListMarkerLine.cs
- ItemChangedEventArgs.cs
- Selection.cs
- StringValidatorAttribute.cs
- EnvironmentPermission.cs
- SingletonConnectionReader.cs
- AuthenticationModulesSection.cs
- Span.cs
- Binding.cs
- SubpageParagraph.cs
- ConfigurationStrings.cs
- RangeBaseAutomationPeer.cs
- MobileControl.cs
- Activity.cs
- documentsequencetextcontainer.cs
- ZoomPercentageConverter.cs
- SqlDataSourceStatusEventArgs.cs
- ChildChangedEventArgs.cs
- Terminate.cs
- _DigestClient.cs
- ClipboardProcessor.cs
- Size3DConverter.cs
- WebControl.cs
- ProxyFragment.cs
- __Filters.cs
- Win32SafeHandles.cs
- Event.cs
- DataGrid.cs
- XmlSerializationGeneratedCode.cs
- ReadOnlyDataSourceView.cs
- BoolLiteral.cs
- SafeRegistryHandle.cs
- MetadataSource.cs
- IMembershipProvider.cs
- ContactManager.cs
- SafeRightsManagementEnvironmentHandle.cs