Code:
/ 4.0 / 4.0 / 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. //---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // Description: A class that implements ICollection for 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
- UIElementParagraph.cs
- TypedTableBase.cs
- Brushes.cs
- DoubleUtil.cs
- EntityObject.cs
- Resources.Designer.cs
- wgx_exports.cs
- StrongNameMembershipCondition.cs
- WebAdminConfigurationHelper.cs
- DataPagerFieldCommandEventArgs.cs
- InfiniteIntConverter.cs
- ModuleBuilderData.cs
- EncryptedXml.cs
- SqlCaseSimplifier.cs
- WebDisplayNameAttribute.cs
- WindowsListViewItem.cs
- SignerInfo.cs
- QilCloneVisitor.cs
- SHA1Managed.cs
- RegexTree.cs
- StorageInfo.cs
- HTTPNotFoundHandler.cs
- X509Logo.cs
- RelatedView.cs
- controlskin.cs
- PersonalizationDictionary.cs
- Variable.cs
- DataGrid.cs
- IList.cs
- InvalidOleVariantTypeException.cs
- TransactedReceiveScope.cs
- FillBehavior.cs
- HostedController.cs
- PriorityRange.cs
- Timeline.cs
- JoinGraph.cs
- DataControlPagerLinkButton.cs
- TypeUtil.cs
- SqlDelegatedTransaction.cs
- ToolStripSeparator.cs
- PropertyRef.cs
- TemplateFactory.cs
- SpanIndex.cs
- SqlReferenceCollection.cs
- columnmapkeybuilder.cs
- DataFormats.cs
- GcSettings.cs
- TextModifierScope.cs
- UdpDuplexChannel.cs
- DynamicValidatorEventArgs.cs
- FormView.cs
- ColorMap.cs
- DependencyObjectProvider.cs
- SetterBaseCollection.cs
- GeneralTransformCollection.cs
- ObjectDataSourceSelectingEventArgs.cs
- NavigationProperty.cs
- BinHexDecoder.cs
- PopupControlService.cs
- UriExt.cs
- ProfileGroupSettings.cs
- CmsInterop.cs
- WebSysDefaultValueAttribute.cs
- CodePageEncoding.cs
- ControllableStoryboardAction.cs
- TextEditorThreadLocalStore.cs
- PeerEndPoint.cs
- XmlValidatingReader.cs
- StyleSheet.cs
- ModifierKeysValueSerializer.cs
- UnionCodeGroup.cs
- VersionValidator.cs
- Compensate.cs
- QilValidationVisitor.cs
- ServiceOperation.cs
- EndpointDispatcher.cs
- Int64KeyFrameCollection.cs
- typedescriptorpermission.cs
- CharacterHit.cs
- FrameworkObject.cs
- TextTreeExtractElementUndoUnit.cs
- SQLResource.cs
- AnimationClock.cs
- PriorityRange.cs
- WaitHandleCannotBeOpenedException.cs
- OledbConnectionStringbuilder.cs
- WindowsIPAddress.cs
- MenuItemStyleCollection.cs
- UiaCoreProviderApi.cs
- TextModifier.cs
- CalendarDateChangedEventArgs.cs
- AuthorizationRuleCollection.cs
- ColorMatrix.cs
- PropertyManager.cs
- SafeMILHandleMemoryPressure.cs
- PropertyGridEditorPart.cs
- XmlAttributeOverrides.cs
- DataRecordInternal.cs
- IIS7ConfigurationLoader.cs
- TableAdapterManagerHelper.cs