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
- XmlNamespaceMappingCollection.cs
- HtmlLink.cs
- StorageScalarPropertyMapping.cs
- CompiledRegexRunnerFactory.cs
- ArithmeticException.cs
- GZipDecoder.cs
- MetadataStore.cs
- StylusLogic.cs
- DataBindingExpressionBuilder.cs
- XPathDocumentNavigator.cs
- DataGridViewRowCancelEventArgs.cs
- WindowsFormsSynchronizationContext.cs
- StringConverter.cs
- ApplicationInfo.cs
- StringStorage.cs
- TextParaLineResult.cs
- DragSelectionMessageFilter.cs
- VisualProxy.cs
- AutoCompleteStringCollection.cs
- _PooledStream.cs
- ControlTemplate.cs
- DoubleCollectionValueSerializer.cs
- EdmSchemaAttribute.cs
- UDPClient.cs
- ChangeConflicts.cs
- ElementNotAvailableException.cs
- XmlSerializerNamespaces.cs
- SettingsPropertyWrongTypeException.cs
- StatusBarPanelClickEvent.cs
- SqlException.cs
- DataViewManager.cs
- FlowNode.cs
- HostedTransportConfigurationManager.cs
- AssemblyUtil.cs
- KeyPressEvent.cs
- OledbConnectionStringbuilder.cs
- WindowsUserNameSecurityTokenAuthenticator.cs
- Registry.cs
- ProxyGenerator.cs
- PropertyRecord.cs
- DBCSCodePageEncoding.cs
- PolicyException.cs
- TimerEventSubscription.cs
- Size3D.cs
- SerializationObjectManager.cs
- RegistrationServices.cs
- DataControlLinkButton.cs
- ItemsControlAutomationPeer.cs
- SerializableAttribute.cs
- WebPartAddingEventArgs.cs
- EventManager.cs
- OletxCommittableTransaction.cs
- DataGridPagerStyle.cs
- SecurityKeyIdentifier.cs
- Column.cs
- ReverseComparer.cs
- WebPartDisplayMode.cs
- SponsorHelper.cs
- BitmapEffectGroup.cs
- OdbcCommand.cs
- ApplicationServicesHostFactory.cs
- Optimizer.cs
- Environment.cs
- UpdateTranslator.cs
- DetailsViewCommandEventArgs.cs
- _NTAuthentication.cs
- NativeMethods.cs
- XmlILAnnotation.cs
- CodeIndexerExpression.cs
- WebMethodAttribute.cs
- CacheSection.cs
- HttpProfileGroupBase.cs
- XamlFxTrace.cs
- FloatUtil.cs
- SessionEndingEventArgs.cs
- RemoteArgument.cs
- SocketPermission.cs
- PassportAuthentication.cs
- StylusPointPropertyUnit.cs
- ConfigurationErrorsException.cs
- SelfIssuedAuthRSACryptoProvider.cs
- SelectedGridItemChangedEvent.cs
- SiteMapNodeCollection.cs
- StackSpiller.Generated.cs
- ClientCultureInfo.cs
- _ConnectStream.cs
- DocumentReference.cs
- TableHeaderCell.cs
- WorkflowMarkupSerializationProvider.cs
- DataRelation.cs
- ContractHandle.cs
- DataGridAddNewRow.cs
- SEHException.cs
- PackageFilter.cs
- Base64Decoder.cs
- ImplicitInputBrush.cs
- EntityDataSourceSelectingEventArgs.cs
- NativeBuffer.cs
- TagPrefixInfo.cs
- ObjectQueryExecutionPlan.cs