// dnlib: See LICENSE.txt for more info using System; using System.Collections.Generic; using System.Diagnostics; using dnlib.DotNet; using dnlib.DotNet.Emit; namespace dnlib.Utils { class CollectionDebugView { readonly ICollection list; public CollectionDebugView(ICollection list) => this.list = list ?? throw new ArgumentNullException(nameof(list)); [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public TValue[] Items { get { var array = new TValue[list.Count]; list.CopyTo(array, 0); return array; } } } class CollectionDebugView : CollectionDebugView { public CollectionDebugView(ICollection list) : base(list) { } } sealed class LocalList_CollectionDebugView : CollectionDebugView { public LocalList_CollectionDebugView(LocalList list) : base(list) { } } sealed class ParameterList_CollectionDebugView : CollectionDebugView { public ParameterList_CollectionDebugView(ParameterList list) : base(list) { } } }