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
- Rect.cs
- XPathException.cs
- ModelPropertyCollectionImpl.cs
- ListViewGroupConverter.cs
- CodeDOMUtility.cs
- TableLayoutCellPaintEventArgs.cs
- SqlDelegatedTransaction.cs
- ClientOperation.cs
- _HeaderInfo.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- PageCache.cs
- ProbeRequestResponseAsyncResult.cs
- RuntimeTransactionHandle.cs
- RadioButton.cs
- PreDigestedSignedInfo.cs
- EncoderParameter.cs
- UpdateTranslator.cs
- WebPartTransformerAttribute.cs
- PageBuildProvider.cs
- Control.cs
- DataGridTableCollection.cs
- Scene3D.cs
- VarInfo.cs
- DocumentApplicationJournalEntry.cs
- NativeMethods.cs
- TemplateKeyConverter.cs
- GridViewCommandEventArgs.cs
- XmlILModule.cs
- StorageBasedPackageProperties.cs
- MultipleCopiesCollection.cs
- IntegerValidatorAttribute.cs
- BasicDesignerLoader.cs
- RectAnimationBase.cs
- SafeProcessHandle.cs
- _IPv4Address.cs
- CroppedBitmap.cs
- CommandDevice.cs
- IgnorePropertiesAttribute.cs
- PersonalizationStateQuery.cs
- LinearGradientBrush.cs
- UndirectedGraph.cs
- SrgsGrammarCompiler.cs
- SmiEventStream.cs
- DataGridCaption.cs
- BitmapMetadataEnumerator.cs
- TraceSource.cs
- ColorMatrix.cs
- MessageBox.cs
- ListBoxItemWrapperAutomationPeer.cs
- StreamUpdate.cs
- SslStreamSecurityElement.cs
- OutOfProcStateClientManager.cs
- ListContractAdapter.cs
- Model3D.cs
- KeyInfo.cs
- XmlUrlResolver.cs
- XmlDomTextWriter.cs
- UInt32.cs
- SkinBuilder.cs
- NameValueConfigurationElement.cs
- Lease.cs
- RelationshipConstraintValidator.cs
- NavigationHelper.cs
- DWriteFactory.cs
- SchemaNotation.cs
- SortableBindingList.cs
- httpserverutility.cs
- FileUtil.cs
- LogRestartAreaEnumerator.cs
- Storyboard.cs
- Task.cs
- ParamArrayAttribute.cs
- ServiceDescriptionImporter.cs
- FlowDocumentView.cs
- EntitySqlException.cs
- HwndAppCommandInputProvider.cs
- TimeSpanStorage.cs
- SymLanguageType.cs
- WebPartAddingEventArgs.cs
- ContentPlaceHolder.cs
- ToolboxItemSnapLineBehavior.cs
- DatePickerTextBox.cs
- XPathDocumentNavigator.cs
- LongSumAggregationOperator.cs
- NotifyInputEventArgs.cs
- NetworkCredential.cs
- Point3DKeyFrameCollection.cs
- cookiecontainer.cs
- XmlSerializerAssemblyAttribute.cs
- PropertyBuilder.cs
- XmlSchemaAny.cs
- XmlSchemaExporter.cs
- SyntaxCheck.cs
- TakeOrSkipWhileQueryOperator.cs
- QuaternionConverter.cs
- SelectionProcessor.cs
- KeyPressEvent.cs
- Processor.cs
- Header.cs
- DeliveryRequirementsAttribute.cs