Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / 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 : [....] - 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- FileDialogCustomPlace.cs
- InternalDispatchObject.cs
- WorkflowMarkupElementEventArgs.cs
- DeclaredTypeValidatorAttribute.cs
- UnmanagedHandle.cs
- XPathNodeHelper.cs
- WebRequestModuleElementCollection.cs
- OdbcConnectionPoolProviderInfo.cs
- ExeConfigurationFileMap.cs
- WebPartCollection.cs
- ClientCredentials.cs
- HttpServerVarsCollection.cs
- XPathBinder.cs
- MulticastDelegate.cs
- XslAstAnalyzer.cs
- IdnMapping.cs
- CheckoutException.cs
- Clock.cs
- ListView.cs
- ExecutionEngineException.cs
- FileNotFoundException.cs
- Nullable.cs
- LocationReference.cs
- SiteMap.cs
- TreeView.cs
- XmlDataSourceDesigner.cs
- IndentTextWriter.cs
- GridViewPageEventArgs.cs
- ConnectionPoolManager.cs
- ItemList.cs
- NativeObjectSecurity.cs
- BufferCache.cs
- DbConnectionPoolCounters.cs
- GroupByQueryOperator.cs
- TextSchema.cs
- XslAst.cs
- MultiTrigger.cs
- Unit.cs
- SecurityCredentialsManager.cs
- HwndPanningFeedback.cs
- StyleBamlTreeBuilder.cs
- ControlParser.cs
- ColorAnimationBase.cs
- storepermission.cs
- DtcInterfaces.cs
- XmlIlVisitor.cs
- PropertyChangeTracker.cs
- EpmCustomContentWriterNodeData.cs
- UnsafeMethods.cs
- LabelLiteral.cs
- EntityProviderFactory.cs
- SiteMapNode.cs
- DetailsViewUpdatedEventArgs.cs
- WebRequestModuleElementCollection.cs
- StorageAssociationTypeMapping.cs
- EntityDataSourceUtil.cs
- ConnectionInterfaceCollection.cs
- XmlNodeList.cs
- ArcSegment.cs
- OSFeature.cs
- Point3DCollection.cs
- CellNormalizer.cs
- MessageDecoder.cs
- TransformValueSerializer.cs
- filewebrequest.cs
- XmlSchemaComplexContent.cs
- Point3DCollectionValueSerializer.cs
- IArgumentProvider.cs
- ThicknessAnimationUsingKeyFrames.cs
- FreezableCollection.cs
- ClientSession.cs
- ModuleBuilder.cs
- DbDeleteCommandTree.cs
- GridLength.cs
- PersistNameAttribute.cs
- PersonalizablePropertyEntry.cs
- CanonicalXml.cs
- Point3DCollection.cs
- GatewayDefinition.cs
- FormClosingEvent.cs
- ConfigurationElementCollection.cs
- FrameworkObject.cs
- DataControlReferenceCollection.cs
- ExtractorMetadata.cs
- VisualStyleElement.cs
- Icon.cs
- OracleLob.cs
- VirtualizingPanel.cs
- BoolExpr.cs
- XmlMemberMapping.cs
- VersionedStreamOwner.cs
- ContextDataSourceView.cs
- DocumentPageTextView.cs
- SecureUICommand.cs
- DesignTimeParseData.cs
- FixedElement.cs
- TextContainerHelper.cs
- Matrix.cs
- TraceShell.cs
- HttpClientCertificate.cs