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
- ProviderUtil.cs
- FlowDocument.cs
- Pkcs7Signer.cs
- SplineQuaternionKeyFrame.cs
- SmiEventSink_Default.cs
- HttpRequestTraceRecord.cs
- VisualState.cs
- HtmlInputControl.cs
- ChineseLunisolarCalendar.cs
- InputBinding.cs
- RayMeshGeometry3DHitTestResult.cs
- PlatformCulture.cs
- RecipientIdentity.cs
- XmlDocumentSerializer.cs
- MSG.cs
- AuthenticationModulesSection.cs
- WindowsListViewSubItem.cs
- NetworkStream.cs
- DataListDesigner.cs
- ClientSponsor.cs
- SqlAliasesReferenced.cs
- EditorAttribute.cs
- AppendHelper.cs
- XmlObjectSerializerWriteContextComplex.cs
- ConfigurationProperty.cs
- StatusBarPanelClickEvent.cs
- InheritedPropertyDescriptor.cs
- WhitespaceSignificantCollectionAttribute.cs
- AnnotationResource.cs
- InputLanguageProfileNotifySink.cs
- SqlFunctionAttribute.cs
- BindUriHelper.cs
- ToolStripItemClickedEventArgs.cs
- LocalFileSettingsProvider.cs
- ByteAnimation.cs
- BindingWorker.cs
- ItemTypeToolStripMenuItem.cs
- followingquery.cs
- EventLogPermissionAttribute.cs
- TTSEvent.cs
- HtmlTableCellCollection.cs
- SafeEventLogReadHandle.cs
- RouteParametersHelper.cs
- BuildDependencySet.cs
- EventProviderWriter.cs
- SqlRemoveConstantOrderBy.cs
- DataGridViewCellValidatingEventArgs.cs
- CodeCommentStatementCollection.cs
- FtpWebRequest.cs
- CancellableEnumerable.cs
- ResourceBinder.cs
- TagPrefixCollection.cs
- SeparatorAutomationPeer.cs
- XmlSerializer.cs
- HttpServerUtilityWrapper.cs
- LayoutManager.cs
- BoundPropertyEntry.cs
- DurationConverter.cs
- FontStretches.cs
- QilPatternVisitor.cs
- ExpressionBuilder.cs
- XmlSchemaAttribute.cs
- ByteViewer.cs
- Messages.cs
- RuleSettingsCollection.cs
- ObjectDataSourceDisposingEventArgs.cs
- Composition.cs
- Expressions.cs
- CqlGenerator.cs
- InvokeMethodActivity.cs
- MediaScriptCommandRoutedEventArgs.cs
- FontCacheUtil.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SqlDataSource.cs
- TextElement.cs
- CategoryEditor.cs
- Wrapper.cs
- DataGridViewCellStyle.cs
- TypeContext.cs
- BindingFormattingDialog.cs
- SoapFormatter.cs
- AsmxEndpointPickerExtension.cs
- EventArgs.cs
- WebProxyScriptElement.cs
- ListBindingHelper.cs
- InfiniteIntConverter.cs
- ISO2022Encoding.cs
- PtsCache.cs
- QilParameter.cs
- JsonXmlDataContract.cs
- ChangePassword.cs
- StringFormat.cs
- ObjectSet.cs
- UrlMappingCollection.cs
- ComPlusInstanceContextInitializer.cs
- XPathDocument.cs
- RectAnimationClockResource.cs
- WmlLabelAdapter.cs
- TableColumn.cs
- DataServiceExpressionVisitor.cs