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
- XmlSchemaSimpleTypeUnion.cs
- DataRelationPropertyDescriptor.cs
- SqlNotificationEventArgs.cs
- SimpleTableProvider.cs
- ColorEditor.cs
- ChannelSinkStacks.cs
- StoragePropertyMapping.cs
- ASCIIEncoding.cs
- LocatorPart.cs
- LassoHelper.cs
- ProviderConnectionPointCollection.cs
- DNS.cs
- PassportAuthentication.cs
- CollectionChangeEventArgs.cs
- DebugTracing.cs
- Light.cs
- ObsoleteAttribute.cs
- BinaryConverter.cs
- Panel.cs
- CodeFieldReferenceExpression.cs
- FixUpCollection.cs
- LayoutEvent.cs
- DataRecordInfo.cs
- PathGradientBrush.cs
- XPathNavigator.cs
- MatcherBuilder.cs
- ConfigurationSectionGroupCollection.cs
- ActivityInstanceMap.cs
- CacheEntry.cs
- FileUtil.cs
- SelectionHighlightInfo.cs
- _NestedMultipleAsyncResult.cs
- LockedHandleGlyph.cs
- WorkerRequest.cs
- ToolStripContentPanelRenderEventArgs.cs
- ObjectKeyFrameCollection.cs
- SystemIPv4InterfaceProperties.cs
- EntityCommandCompilationException.cs
- Effect.cs
- ValidationPropertyAttribute.cs
- WebPartDisplayModeCollection.cs
- TemplateXamlParser.cs
- DetailsViewDeleteEventArgs.cs
- PublisherMembershipCondition.cs
- DataReaderContainer.cs
- SiteMap.cs
- EditorPart.cs
- CodeDomComponentSerializationService.cs
- SamlEvidence.cs
- SmtpReplyReader.cs
- PagedDataSource.cs
- StreamWriter.cs
- DateTimeValueSerializer.cs
- InternalConfigHost.cs
- PartEditor.cs
- ThumbAutomationPeer.cs
- BulletedListEventArgs.cs
- OdbcHandle.cs
- RunClient.cs
- BoolExpression.cs
- MatrixTransform.cs
- ConditionCollection.cs
- TabControl.cs
- SqlClientPermission.cs
- NullReferenceException.cs
- AQNBuilder.cs
- InfoCardRSAPKCS1SignatureDeformatter.cs
- BevelBitmapEffect.cs
- ClientSettingsStore.cs
- StaticResourceExtension.cs
- SoapDocumentMethodAttribute.cs
- Point3DAnimationBase.cs
- CorrelationResolver.cs
- RawStylusSystemGestureInputReport.cs
- LabelDesigner.cs
- XPathNavigatorKeyComparer.cs
- UserControlAutomationPeer.cs
- IOException.cs
- FloaterParaClient.cs
- PagePropertiesChangingEventArgs.cs
- NativeMethodsCLR.cs
- MailWriter.cs
- CompilerCollection.cs
- MetadataPropertyAttribute.cs
- ZeroOpNode.cs
- ChameleonKey.cs
- WebPermission.cs
- NullableIntAverageAggregationOperator.cs
- IdnElement.cs
- CheckBoxPopupAdapter.cs
- QilInvokeEarlyBound.cs
- SmiRecordBuffer.cs
- ShaderEffect.cs
- DynamicMetaObjectBinder.cs
- DocumentsTrace.cs
- DocumentViewer.cs
- SoapInteropTypes.cs
- Operand.cs
- ReaderWriterLockWrapper.cs
- SecUtil.cs