/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/Scripting/CoreTestUtilities/ObjectFormatterFixtures/Custom.cs
502 строки
12 KB
Youssef Victor
Remove unused private members (#61064)
12 июн 2022, 21:22
Не верифицирован
12 июн 2022, 21:22
a528fe2
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. #nullable disable #pragma warning disable 169 // unused field #pragma warning disable 649 // field not set, will always be default value #pragma warning disable IDE0051 // private member is unused using System; using System.Collections; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; namespace ObjectFormatterFixtures { internal class Outer { public class Nested<T> { public readonly int A = 1; public readonly int B = 2; public const int S = 3; } } internal class A<T> { public class B<S> { public class C { public class D<Q, R> { public class E { } } } } public static readonly B<T> X = new B<T>(); } internal class Sort { public readonly byte ab = 1; public readonly sbyte aB = -1; public readonly short Ac = -1; public readonly ushort Ad = 1; public readonly int ad = -1; public readonly uint aE = 1; public readonly long aF = -1; public readonly ulong AG = 1; } internal class Signatures { public static readonly MethodInfo Arrays = typeof(Signatures).GetMethod(nameof(ArrayParameters)); public void ArrayParameters(int[] arrayOne, int[,] arrayTwo, int[,,] arrayThree) { } } internal class RecursiveRootHidden { public readonly int A; public readonly int B; [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public RecursiveRootHidden C; } internal class RecursiveProxy { private class Proxy { public Proxy() { } public Proxy(Node node) { x = node.value; y = node.next; } public readonly int x; public readonly Node y; } [DebuggerTypeProxy(typeof(Proxy))] public class Node { public Node(int value) { if (value < 5) { next = new Node(value + 1); } this.value = value; } public readonly int value; public readonly Node next; } } internal class InvalidRecursiveProxy { private class Proxy { public Proxy() { } public Proxy(Node c) { } public readonly int x; public readonly Node p = new Node(); public readonly int y; } [DebuggerTypeProxy(typeof(Proxy))] public class Node { public readonly int a; public readonly int b; } } internal class ComplexProxyBase { private int Goo() { return 1; } } internal class ComplexProxy : ComplexProxyBase { public ComplexProxy() { } public ComplexProxy(object b) { } [DebuggerDisplay("*1")] public int _02_public_property_dd { get { return 1; } } [DebuggerDisplay("*2")] private int _03_private_property_dd { get { return 1; } } [DebuggerDisplay("*3")] protected int _04_protected_property_dd { get { return 1; } } [DebuggerDisplay("*4")] internal int _05_internal_property_dd { get { return 1; } } [DebuggerDisplay("+1")] [DebuggerBrowsable(DebuggerBrowsableState.Never)] public readonly int _06_public_field_dd_never; [DebuggerDisplay("+2")] private readonly int _07_private_field_dd; [DebuggerDisplay("+3")] protected readonly int _08_protected_field_dd; [DebuggerDisplay("+4")] internal readonly int _09_internal_field_dd; [DebuggerBrowsable(DebuggerBrowsableState.Collapsed)] private readonly int _10_private_collapsed; [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] private readonly int _10_private_rootHidden; public readonly int _12_public; private readonly int _13_private; protected readonly int _14_protected; internal readonly int _15_internal; [DebuggerDisplay("==\r\n=\r\n=")] public readonly int _16_eolns; [DebuggerDisplay("=={==")] public readonly int _17_braces_0; [DebuggerDisplay("=={{==")] public readonly int _17_braces_1; [DebuggerDisplay("=={'{'}==")] public readonly int _17_braces_2; [DebuggerDisplay("=={'\\{'}==")] public readonly int _17_braces_3; [DebuggerDisplay("=={1/*{*/}==")] public readonly int _17_braces_4; [DebuggerDisplay("=={'{'/*\\}*/}==")] public readonly int _17_braces_5; [DebuggerDisplay("=={'{'/*}*/}==")] public readonly int _17_braces_6; [DebuggerDisplay("==\\{\\x\\t==")] public readonly int _19_escapes; [DebuggerDisplay("{1+1}")] public readonly int _21; [DebuggerDisplay("{\"xxx\"}")] public readonly int _22; [DebuggerDisplay("{\"xxx\",nq}")] public readonly int _23; [DebuggerDisplay("{'x'}")] public readonly int _24; [DebuggerDisplay("{'x',nq}")] public readonly int _25; [DebuggerDisplay("{new B()}")] public readonly int _26_0; [DebuggerDisplay("{new D()}")] public readonly int _26_1; [DebuggerDisplay("{new E()}")] public readonly int _26_2; [DebuggerDisplay("{ReturnVoid()}")] public readonly int _26_3; private void ReturnVoid() { } [DebuggerDisplay("{F1(1)}")] public readonly int _26_4; [DebuggerDisplay("{Goo}")] public readonly int _26_5; [DebuggerDisplay("{goo}")] public readonly int _26_6; private int goo() { return 2; } private int F1(int a) { return 1; } private int F2(short a) { return 2; } [DebuggerBrowsable(DebuggerBrowsableState.RootHidden)] public readonly C _27_rootHidden = new C(); public readonly C _28 = new C(); [DebuggerBrowsable(DebuggerBrowsableState.Collapsed)] public readonly C _29_collapsed = new C(); public int _31 { get; set; } [CompilerGenerated] public readonly int _32; [CompilerGenerated] private readonly int _33; public int _34_Exception { get { throw new Exception("error1"); } } [DebuggerDisplay("-!-")] public int _35_Exception { get { throw new Exception("error2"); } } public readonly object _36 = new ToStringException(); [DebuggerBrowsable(DebuggerBrowsableState.Never)] public int _37 { get { throw new Exception("error3"); } } public int _38_private_get_public_set { private get { return 1; } set { } } public int _39_public_get_private_set { get { return 1; } private set { } } private int _40_private_get_private_set { get { return 1; } set { } } private int _41_set_only_property { set { } } public override string ToString() { return "AStr"; } } [DebuggerTypeProxy(typeof(ComplexProxy))] internal class TypeWithComplexProxy { public override string ToString() { return "BStr"; } } [DebuggerTypeProxy(typeof(Proxy))] [DebuggerDisplay("DD")] internal class TypeWithDebuggerDisplayAndProxy { public override string ToString() { return "<ToString>"; } [DebuggerDisplay("pxy")] private class Proxy { public Proxy(object x) { } public readonly int A; public readonly int B; } } internal class C { public readonly int A = 1; public readonly int B = 2; public override string ToString() { return "CStr"; } } [DebuggerDisplay("DebuggerDisplayValue")] internal class BaseClassWithDebuggerDisplay { } internal class InheritedDebuggerDisplay : BaseClassWithDebuggerDisplay { } internal class ToStringException { public override string ToString() { throw new MyException(); } } internal class MyException : Exception { public override string ToString() { return "my exception"; } } public class ThrowingDictionary : IDictionary { private readonly int _throwAt; public ThrowingDictionary(int throwAt) { _throwAt = throwAt; } public void Add(object key, object value) { throw new NotImplementedException(); } public void Clear() { throw new NotImplementedException(); } public bool Contains(object key) { throw new NotImplementedException(); } public IDictionaryEnumerator GetEnumerator() { return new E(_throwAt); } public bool IsFixedSize { get { throw new NotImplementedException(); } } public bool IsReadOnly { get { throw new NotImplementedException(); } } public ICollection Keys { get { return new[] { 1, 2 }; } } public void Remove(object key) { } public ICollection Values { get { return new[] { 1, 2 }; } } public object this[object key] { get { return 1; } set { } } public void CopyTo(Array array, int index) { } public int Count { get { return 10; } } public bool IsSynchronized { get { throw new NotImplementedException(); } } public object SyncRoot { get { throw new NotImplementedException(); } } IEnumerator IEnumerable.GetEnumerator() { return new E(-1); } private class E : IEnumerator, IDictionaryEnumerator { private int _i; private readonly int _throwAt; public E(int throwAt) { _throwAt = throwAt; } public object Current { get { return new DictionaryEntry(_i, _i); } } public bool MoveNext() { _i++; if (_i == _throwAt) { throw new Exception(); } return _i < 5; } public void Reset() { } public DictionaryEntry Entry { get { return (DictionaryEntry)Current; } } public object Key { get { return _i; } } public object Value { get { return _i; } } } } public class ListNode { public ListNode next; public object data; } public class LongMembers { public readonly string LongName0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789 = "hello"; public readonly string LongValue = "0123456789_0123456789_0123456789_0123456789_0123456789_0123456789_0123456789"; } }