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
- DocumentViewerAutomationPeer.cs
- MeshGeometry3D.cs
- SchemaMapping.cs
- XmlNotation.cs
- TimerEventSubscriptionCollection.cs
- SqlParameterCollection.cs
- SqlTrackingQuery.cs
- CustomBinding.cs
- XamlReaderHelper.cs
- NamespaceDisplayAutomationPeer.cs
- DataSourceSelectArguments.cs
- IDQuery.cs
- DoubleAnimationUsingKeyFrames.cs
- ProfileSettingsCollection.cs
- XslException.cs
- BaseCodeDomTreeGenerator.cs
- SurrogateChar.cs
- GestureRecognizer.cs
- peernodeimplementation.cs
- Trace.cs
- DataControlLinkButton.cs
- ExtensionDataReader.cs
- SqlDataSourceStatusEventArgs.cs
- Point3DConverter.cs
- SpeechRecognitionEngine.cs
- LineServicesCallbacks.cs
- AuthStoreRoleProvider.cs
- QueryAccessibilityHelpEvent.cs
- UIHelper.cs
- WorkflowShape.cs
- VectorValueSerializer.cs
- TemplateControl.cs
- EntityTypeBase.cs
- SecurityPolicySection.cs
- IApplicationTrustManager.cs
- TargetParameterCountException.cs
- CqlLexerHelpers.cs
- TextBoxView.cs
- FileLogRecordEnumerator.cs
- UIPermission.cs
- VisualStyleTypesAndProperties.cs
- AppModelKnownContentFactory.cs
- DefaultValueTypeConverter.cs
- CommandField.cs
- XmlSerializationWriter.cs
- ListControl.cs
- DataGridViewLayoutData.cs
- EntityDataSourceValidationException.cs
- HashMembershipCondition.cs
- UnsafeCollabNativeMethods.cs
- safex509handles.cs
- X509ServiceCertificateAuthenticationElement.cs
- MenuItem.cs
- UniqueIdentifierService.cs
- DataGridHelper.cs
- HttpAsyncResult.cs
- TimerElapsedEvenArgs.cs
- Int64AnimationBase.cs
- ItemType.cs
- MenuAdapter.cs
- CompoundFileIOPermission.cs
- BamlBinaryWriter.cs
- RenderTargetBitmap.cs
- SpanIndex.cs
- ScriptReferenceEventArgs.cs
- DelimitedListTraceListener.cs
- XmlDataContract.cs
- BindableAttribute.cs
- QilFactory.cs
- PeerNameRecord.cs
- TextSelectionHelper.cs
- TreeNode.cs
- AvTraceFormat.cs
- PreviewPageInfo.cs
- PropertyMetadata.cs
- QueryAsyncResult.cs
- DbReferenceCollection.cs
- PresentationUIStyleResources.cs
- DataGridColumnHeader.cs
- Propagator.JoinPropagator.cs
- SkipQueryOptionExpression.cs
- NamespaceEmitter.cs
- BridgeDataReader.cs
- PrintDialog.cs
- FormView.cs
- SymbolEqualComparer.cs
- GeometryHitTestResult.cs
- InvokeBase.cs
- TypeSystem.cs
- Switch.cs
- OnOperation.cs
- Menu.cs
- TextSerializer.cs
- autovalidator.cs
- PrintDialogDesigner.cs
- CompensationHandlingFilter.cs
- Schema.cs
- UserMapPath.cs
- RIPEMD160Managed.cs
- SqlRewriteScalarSubqueries.cs