Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / clr / src / BCL / System / Collections / Generic / DebugView.cs / 1 / DebugView.cs
// ==++== // // Copyright (c) Microsoft Corporation. All rights reserved. // // ==--== /*============================================================================== ** ** ** ** Purpose: DebugView class for generic collections ** ** =============================================================================*/ namespace System.Collections.Generic { using System; using System.Collections.ObjectModel; using System.Security.Permissions; using System.Diagnostics; // // VS IDE can't differentiate between types with the same name from different // assembly. So we need to use different names for collection debug view for // collections in mscorlib.dll and system.dll. // internal sealed class Mscorlib_CollectionDebugView{ private ICollection collection; public Mscorlib_CollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public T[] Items { get { T[] items = new T[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryKeyCollectionDebugView { private ICollection collection; public Mscorlib_DictionaryKeyCollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public TKey[] Items { get { TKey[] items = new TKey[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryValueCollectionDebugView { private ICollection collection; public Mscorlib_DictionaryValueCollectionDebugView(ICollection collection) { if (collection == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.collection); this.collection = collection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public TValue[] Items { get { TValue[] items = new TValue[collection.Count]; collection.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_DictionaryDebugView { private IDictionary dict; public Mscorlib_DictionaryDebugView(IDictionary dictionary) { if (dictionary == null) ThrowHelper.ThrowArgumentNullException(ExceptionArgument.dictionary); this.dict = dictionary; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public KeyValuePair [] Items { get { KeyValuePair [] items = new KeyValuePair [dict.Count]; dict.CopyTo(items, 0); return items; } } } internal sealed class Mscorlib_KeyedCollectionDebugView { private KeyedCollection kc; public Mscorlib_KeyedCollectionDebugView(KeyedCollection keyedCollection) { if (keyedCollection == null) { throw new ArgumentNullException("keyedCollection"); } kc = keyedCollection; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public T[] Items { get { T[] items = new T[kc.Count]; kc.CopyTo(items, 0); return items; } } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ISCIIEncoding.cs
- AddInIpcChannel.cs
- CommandLibraryHelper.cs
- TaiwanLunisolarCalendar.cs
- InvokeProviderWrapper.cs
- RegexReplacement.cs
- RelationshipWrapper.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- TearOffProxy.cs
- UpDownBase.cs
- GroupBox.cs
- AssemblyUtil.cs
- RTTypeWrapper.cs
- SystemNetworkInterface.cs
- PopupControlService.cs
- FullTrustAssembly.cs
- DataRowView.cs
- XmlHierarchyData.cs
- SqlCrossApplyToCrossJoin.cs
- CounterSample.cs
- Semaphore.cs
- UIAgentMonitorHandle.cs
- ExecutionContext.cs
- HttpWebRequest.cs
- RbTree.cs
- SystemIPGlobalProperties.cs
- AssociatedControlConverter.cs
- XmlTextWriter.cs
- DataGridViewImageCell.cs
- UnsafeNativeMethodsPenimc.cs
- ICollection.cs
- TcpClientSocketManager.cs
- MatrixKeyFrameCollection.cs
- DataGridViewCheckBoxCell.cs
- BoolExpressionVisitors.cs
- VirtualPathUtility.cs
- EmptyControlCollection.cs
- ArgumentNullException.cs
- KeyboardDevice.cs
- UserPreferenceChangingEventArgs.cs
- BindingCompleteEventArgs.cs
- RegistrationServices.cs
- WebPartTransformerAttribute.cs
- ValidationService.cs
- QueryAsyncResult.cs
- AdornerHitTestResult.cs
- ContentPosition.cs
- KeyInfo.cs
- XmlSchemaGroup.cs
- EntityTypeEmitter.cs
- PrincipalPermission.cs
- ConvertEvent.cs
- XmlExpressionDumper.cs
- StateMachineWorkflowDesigner.cs
- MemoryFailPoint.cs
- InvalidProgramException.cs
- MostlySingletonList.cs
- ProcessThread.cs
- XmlSignificantWhitespace.cs
- CardSpaceSelector.cs
- SymbolPair.cs
- EntityCommandDefinition.cs
- ColumnMapProcessor.cs
- DocumentsTrace.cs
- VirtualDirectoryMapping.cs
- XmlComplianceUtil.cs
- XmlText.cs
- StateBag.cs
- SqlNotificationRequest.cs
- UrlMappingCollection.cs
- PropertyInfoSet.cs
- BitmapEffectState.cs
- ScrollViewer.cs
- StrongNameUtility.cs
- Guid.cs
- WindowsClientCredential.cs
- ParameterElementCollection.cs
- IssuedSecurityTokenProvider.cs
- DataSourceExpression.cs
- NavigationProperty.cs
- ClientConfigPaths.cs
- RegisteredHiddenField.cs
- DataPagerFieldItem.cs
- TrackingStringDictionary.cs
- SqlException.cs
- WindowsContainer.cs
- DefaultMemberAttribute.cs
- TextEvent.cs
- DragDeltaEventArgs.cs
- SignedPkcs7.cs
- BlobPersonalizationState.cs
- SharedRuntimeState.cs
- DataColumnChangeEvent.cs
- ToolStrip.cs
- ConnectionManagementElementCollection.cs
- DataBinder.cs
- EventListener.cs
- ObjectItemCollection.cs
- RectangleGeometry.cs
- InfoCardServiceInstallComponent.cs