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
- Psha1DerivedKeyGenerator.cs
- CodeDomSerializer.cs
- WrappedIUnknown.cs
- SystemGatewayIPAddressInformation.cs
- WebPageTraceListener.cs
- SoapAttributes.cs
- LocalValueEnumerator.cs
- Substitution.cs
- TaiwanLunisolarCalendar.cs
- PageClientProxyGenerator.cs
- TimeZone.cs
- TextBoxBase.cs
- AudioFileOut.cs
- DataGridViewCellStyleChangedEventArgs.cs
- ClientConfigurationSystem.cs
- DbReferenceCollection.cs
- TargetConverter.cs
- BaseWebProxyFinder.cs
- TrackingMemoryStream.cs
- DelegateBodyWriter.cs
- Stacktrace.cs
- DataSvcMapFileSerializer.cs
- SqlDataSourceEnumerator.cs
- Trigger.cs
- CharacterMetrics.cs
- UserControl.cs
- CompilerErrorCollection.cs
- WebEventTraceProvider.cs
- QilLoop.cs
- PersonalizationStateQuery.cs
- RoutingExtension.cs
- SqlSelectClauseBuilder.cs
- infer.cs
- NativeActivityMetadata.cs
- StringDictionaryEditor.cs
- RegexCapture.cs
- ResolvePPIDRequest.cs
- HelpKeywordAttribute.cs
- MouseGestureValueSerializer.cs
- DesignerMetadata.cs
- ExtensionSimplifierMarkupObject.cs
- WindowCollection.cs
- TextBox.cs
- BuildResult.cs
- WebFormsRootDesigner.cs
- NotCondition.cs
- XmlCharType.cs
- IsolatedStorageFile.cs
- SrgsElement.cs
- xmlformatgeneratorstatics.cs
- ISAPIRuntime.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- OpenFileDialog.cs
- Vector3DKeyFrameCollection.cs
- EastAsianLunisolarCalendar.cs
- UrlAuthFailureHandler.cs
- BufferedGraphicsManager.cs
- XamlHttpHandlerFactory.cs
- SqlNode.cs
- _HTTPDateParse.cs
- KernelTypeValidation.cs
- WithStatement.cs
- Pick.cs
- NativeMethods.cs
- PenThreadPool.cs
- SolidBrush.cs
- ReadingWritingEntityEventArgs.cs
- SmtpAuthenticationManager.cs
- SamlDoNotCacheCondition.cs
- WebColorConverter.cs
- CounterSetInstance.cs
- TableAutomationPeer.cs
- PersonalizationState.cs
- SystemFonts.cs
- DesignTimeTemplateParser.cs
- RenderingBiasValidation.cs
- XmlSecureResolver.cs
- ResourceDisplayNameAttribute.cs
- OleDbParameterCollection.cs
- KeyValueSerializer.cs
- COMException.cs
- OleDbConnectionInternal.cs
- StringUtil.cs
- SlotInfo.cs
- ValidationResults.cs
- InternalConfigConfigurationFactory.cs
- InvalidateEvent.cs
- XmlTextReader.cs
- UserControlParser.cs
- ObjectItemAttributeAssemblyLoader.cs
- PrintDialog.cs
- GatewayIPAddressInformationCollection.cs
- TypographyProperties.cs
- CustomErrorsSection.cs
- DrawingImage.cs
- Thumb.cs
- PointAnimationBase.cs
- NetworkAddressChange.cs
- login.cs
- AnnouncementDispatcherAsyncResult.cs