Code:
/ DotNET / DotNET / 8.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
- XmlSerializerFaultFormatter.cs
- FrameworkContentElement.cs
- SqlRetyper.cs
- SignedXml.cs
- SequenceDesigner.cs
- ContractCodeDomInfo.cs
- SiteMapNode.cs
- wmiprovider.cs
- ImageKeyConverter.cs
- ListBox.cs
- DNS.cs
- ColorConverter.cs
- ResourcesBuildProvider.cs
- TabOrder.cs
- ProfileGroupSettingsCollection.cs
- UInt16.cs
- PreviewPageInfo.cs
- ServicePointManager.cs
- ToolStripPanel.cs
- WSTrust.cs
- ChannelFactoryRefCache.cs
- InternalConfigConfigurationFactory.cs
- DictionaryBase.cs
- SurrogateSelector.cs
- LogAppendAsyncResult.cs
- TableRow.cs
- ComponentGlyph.cs
- DesignerSerializationOptionsAttribute.cs
- OdbcReferenceCollection.cs
- unsafeIndexingFilterStream.cs
- InvalidDocumentContentsException.cs
- DataGridViewHeaderCell.cs
- Mapping.cs
- Dispatcher.cs
- TableStyle.cs
- Hashtable.cs
- DataTemplateSelector.cs
- DocumentAutomationPeer.cs
- EntityModelBuildProvider.cs
- SafeRightsManagementPubHandle.cs
- sqlser.cs
- DescendantOverDescendantQuery.cs
- WebServiceBindingAttribute.cs
- SendMessageRecord.cs
- TextRangeAdaptor.cs
- PassportAuthenticationModule.cs
- __Error.cs
- ISessionStateStore.cs
- TypeDependencyAttribute.cs
- OverlappedAsyncResult.cs
- AbsoluteQuery.cs
- LogReserveAndAppendState.cs
- MemberInfoSerializationHolder.cs
- DataServiceQueryException.cs
- WorkingDirectoryEditor.cs
- ImageCodecInfoPrivate.cs
- HtmlTableRowCollection.cs
- XmlBufferReader.cs
- RuntimeWrappedException.cs
- ExceptionRoutedEventArgs.cs
- InfoCardKeyedHashAlgorithm.cs
- CommandBinding.cs
- HierarchicalDataBoundControlAdapter.cs
- PermissionSet.cs
- CodeTypeParameter.cs
- Matrix.cs
- NavigationHelper.cs
- LayoutInformation.cs
- SQLStringStorage.cs
- AlignmentYValidation.cs
- ListViewItem.cs
- XappLauncher.cs
- PeerNeighborManager.cs
- BatchServiceHost.cs
- EnterpriseServicesHelper.cs
- SmiTypedGetterSetter.cs
- OperationAbortedException.cs
- ThousandthOfEmRealDoubles.cs
- AssemblyAttributes.cs
- CacheDependency.cs
- ProfileModule.cs
- EncodingStreamWrapper.cs
- RangeContentEnumerator.cs
- WebControlsSection.cs
- FunctionImportMapping.cs
- UnsignedPublishLicense.cs
- SystemTcpConnection.cs
- HostAdapter.cs
- ActiveXMessageFormatter.cs
- AsyncCompletedEventArgs.cs
- Publisher.cs
- StatusInfoItem.cs
- CounterSampleCalculator.cs
- IncrementalReadDecoders.cs
- DiscoveryDocumentLinksPattern.cs
- BindingObserver.cs
- HttpCapabilitiesSectionHandler.cs
- PixelFormat.cs
- VSWCFServiceContractGenerator.cs
- ColumnWidthChangedEvent.cs