Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / 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
- SocketPermission.cs
- Utilities.cs
- HighlightComponent.cs
- WmlValidationSummaryAdapter.cs
- WebReferenceOptions.cs
- X509WindowsSecurityToken.cs
- ClrPerspective.cs
- TdsParserStaticMethods.cs
- WebMessageBodyStyleHelper.cs
- DataGridViewColumnStateChangedEventArgs.cs
- DocumentAutomationPeer.cs
- ContextInformation.cs
- ToolStripItemEventArgs.cs
- OutOfProcStateClientManager.cs
- QueryOutputWriter.cs
- StylusPointCollection.cs
- GridSplitter.cs
- MarkupObject.cs
- BuiltInExpr.cs
- CorrelationKey.cs
- Help.cs
- PropertyToken.cs
- LinqDataSourceView.cs
- FileAuthorizationModule.cs
- ComponentChangedEvent.cs
- CodeTypeReference.cs
- RelationshipWrapper.cs
- WebPartAddingEventArgs.cs
- XamlBrushSerializer.cs
- ObjectViewQueryResultData.cs
- BinaryParser.cs
- SqlSelectStatement.cs
- ToolStrip.cs
- UIElementAutomationPeer.cs
- TransformGroup.cs
- ParentQuery.cs
- AttributeEmitter.cs
- TopClause.cs
- TagNameToTypeMapper.cs
- FontConverter.cs
- ControlValuePropertyAttribute.cs
- HwndKeyboardInputProvider.cs
- StringSource.cs
- TextEffectResolver.cs
- TableProviderWrapper.cs
- JapaneseCalendar.cs
- HtmlTitle.cs
- CompilerGeneratedAttribute.cs
- InfocardChannelParameter.cs
- MetadataWorkspace.cs
- AuthenticationService.cs
- CodeSnippetExpression.cs
- WindowsTab.cs
- Variant.cs
- ContextMenuStripGroup.cs
- ProfileManager.cs
- ItemContainerPattern.cs
- Animatable.cs
- DetailsViewRow.cs
- TextClipboardData.cs
- UInt16.cs
- ButtonFieldBase.cs
- DataViewManagerListItemTypeDescriptor.cs
- ClientWindowsAuthenticationMembershipProvider.cs
- WindowShowOrOpenTracker.cs
- SqlTransaction.cs
- GPRECT.cs
- AuthenticationModuleElementCollection.cs
- XmlCodeExporter.cs
- WebPartConnectionsCancelVerb.cs
- SqlParameter.cs
- NamespaceEmitter.cs
- ProfilePropertySettingsCollection.cs
- SpecialNameAttribute.cs
- SerTrace.cs
- oledbmetadatacollectionnames.cs
- ChangeNode.cs
- HuffModule.cs
- LicenseContext.cs
- BrushConverter.cs
- DataSysAttribute.cs
- UnsafeNativeMethods.cs
- COM2Enum.cs
- RuntimeConfigLKG.cs
- Decimal.cs
- LayoutManager.cs
- BindingNavigator.cs
- WebPartDisplayModeEventArgs.cs
- ProxyManager.cs
- DependencyObject.cs
- ColorEditor.cs
- WebPartVerbCollection.cs
- CompressionTracing.cs
- HitTestWithPointDrawingContextWalker.cs
- ConnectionProviderAttribute.cs
- DirtyTextRange.cs
- ReferentialConstraint.cs
- ListBase.cs
- JapaneseLunisolarCalendar.cs
- TimeSpanSecondsOrInfiniteConverter.cs