Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Shared / MS / Internal / SequentialUshortCollection.cs / 1 / 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
- SecurityTokenAuthenticator.cs
- AnnotationResource.cs
- DataBinder.cs
- DataException.cs
- HiddenField.cs
- TextEditorContextMenu.cs
- TokenBasedSet.cs
- Stopwatch.cs
- ProfileSettings.cs
- Item.cs
- TextRunCache.cs
- LookupBindingPropertiesAttribute.cs
- EntityDesignerBuildProvider.cs
- RemoveStoryboard.cs
- QueryCacheKey.cs
- SqlUserDefinedTypeAttribute.cs
- InvalidOleVariantTypeException.cs
- AnnotationResourceChangedEventArgs.cs
- XPathScanner.cs
- SerializationInfoEnumerator.cs
- DynamicResourceExtensionConverter.cs
- VideoDrawing.cs
- XMLSchema.cs
- WsdlImporterElementCollection.cs
- GPRECTF.cs
- Wildcard.cs
- StateMachine.cs
- IntranetCredentialPolicy.cs
- ProfileGroupSettings.cs
- TrustLevel.cs
- ListViewDataItem.cs
- BuildManagerHost.cs
- TransformValueSerializer.cs
- documentsequencetextview.cs
- MailAddressCollection.cs
- AccessorTable.cs
- DefaultBindingPropertyAttribute.cs
- ResourceDefaultValueAttribute.cs
- ProcessHostServerConfig.cs
- RelationshipDetailsCollection.cs
- PkcsMisc.cs
- RedistVersionInfo.cs
- ComplusTypeValidator.cs
- DataRecordObjectView.cs
- SslStream.cs
- CodeParameterDeclarationExpressionCollection.cs
- StateChangeEvent.cs
- CustomTypeDescriptor.cs
- LineInfo.cs
- TabControlEvent.cs
- FormsAuthenticationModule.cs
- SpotLight.cs
- MediaElementAutomationPeer.cs
- XPathSelectionIterator.cs
- HttpHandlerAction.cs
- NotificationContext.cs
- QualifiedCellIdBoolean.cs
- DataGridViewToolTip.cs
- EntityDataSourceWizardForm.cs
- LabelLiteral.cs
- SymmetricAlgorithm.cs
- UrlPath.cs
- WeakReadOnlyCollection.cs
- Misc.cs
- XdrBuilder.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- TableCellCollection.cs
- ProfileSection.cs
- SubMenuStyleCollection.cs
- AuthenticatedStream.cs
- ExpandedWrapper.cs
- documentsequencetextpointer.cs
- HttpApplicationFactory.cs
- NamespaceDisplayAutomationPeer.cs
- StringUtil.cs
- XmlTextWriter.cs
- ExpressionEditorAttribute.cs
- GlobalizationAssembly.cs
- ControlBindingsCollection.cs
- IndentedTextWriter.cs
- HtmlValidatorAdapter.cs
- ActivityCompletionCallbackWrapper.cs
- CompleteWizardStep.cs
- XmlConverter.cs
- MultiView.cs
- ServiceOperationParameter.cs
- BigInt.cs
- MarkupExtensionParser.cs
- AssemblyNameEqualityComparer.cs
- SecurityElement.cs
- MimeTypeAttribute.cs
- HitTestWithPointDrawingContextWalker.cs
- RecognizedPhrase.cs
- LabelAutomationPeer.cs
- PersonalizationDictionary.cs
- Padding.cs
- Model3D.cs
- CodeGotoStatement.cs
- PeerTransportCredentialType.cs
- WebProxyScriptElement.cs