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
- HyperLink.cs
- PackageStore.cs
- Itemizer.cs
- NumberFunctions.cs
- BackEase.cs
- PlainXmlWriter.cs
- DataGridViewDataErrorEventArgs.cs
- AdornerPresentationContext.cs
- CacheDependency.cs
- MouseCaptureWithinProperty.cs
- Imaging.cs
- CollectionType.cs
- FragmentQueryKB.cs
- ScriptResourceInfo.cs
- PackageStore.cs
- TrustManagerPromptUI.cs
- DataFieldCollectionEditor.cs
- xmlfixedPageInfo.cs
- ExpressionBuilderContext.cs
- TrackingParameters.cs
- SQLByteStorage.cs
- DocumentGrid.cs
- StaticSiteMapProvider.cs
- CodeTypeDeclarationCollection.cs
- Marshal.cs
- DefaultParameterValueAttribute.cs
- CommonRemoteMemoryBlock.cs
- AutomationPropertyInfo.cs
- SystemIPInterfaceProperties.cs
- DataGridPageChangedEventArgs.cs
- CellParaClient.cs
- X509ChainElement.cs
- VariableQuery.cs
- GridItemProviderWrapper.cs
- MissingSatelliteAssemblyException.cs
- EmptyImpersonationContext.cs
- Grant.cs
- CipherData.cs
- WebMethodAttribute.cs
- ToolStripRenderer.cs
- Slider.cs
- TextEmbeddedObject.cs
- ConnectionPoolManager.cs
- MemoryFailPoint.cs
- ImageSourceValueSerializer.cs
- SendMailErrorEventArgs.cs
- Rfc2898DeriveBytes.cs
- TableHeaderCell.cs
- OptimizerPatterns.cs
- TableLayoutColumnStyleCollection.cs
- loginstatus.cs
- MergablePropertyAttribute.cs
- EncryptedData.cs
- PrinterUnitConvert.cs
- FlowNode.cs
- SchemaComplexType.cs
- ChannelTokenTypeConverter.cs
- TextWriterTraceListener.cs
- TextBlock.cs
- HtmlFormWrapper.cs
- ScrollEventArgs.cs
- EmptyQuery.cs
- HtmlShimManager.cs
- SystemIPv6InterfaceProperties.cs
- TemplateControlParser.cs
- ObjectConverter.cs
- Rotation3D.cs
- XPathBuilder.cs
- UriExt.cs
- RequiredAttributeAttribute.cs
- MetadataItemEmitter.cs
- BitmapImage.cs
- SemaphoreFullException.cs
- FlowDocumentPage.cs
- XmlSchemaInferenceException.cs
- RowsCopiedEventArgs.cs
- ComponentChangingEvent.cs
- HebrewCalendar.cs
- Int32KeyFrameCollection.cs
- ContextMenuStrip.cs
- BitmapEffect.cs
- InstanceDataCollection.cs
- SortedDictionary.cs
- NavigatorInput.cs
- smtpconnection.cs
- PageAction.cs
- DynamicValueConverter.cs
- CategoryState.cs
- LocalValueEnumerator.cs
- DynamicArgumentDialog.cs
- CatalogZone.cs
- HTMLTextWriter.cs
- CodeRemoveEventStatement.cs
- XmlIlVisitor.cs
- ExceptionHandler.cs
- Point3D.cs
- XamlTemplateSerializer.cs
- base64Transforms.cs
- EventItfInfo.cs
- XmlArrayAttribute.cs