using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; namespace Net3_Proxy { public class IReadOnlyList : IEnumerable { private IList list; private IReadOnlyList(IList lst) { list = lst; } public IEnumerator GetEnumerator() => list.GetEnumerator(); IEnumerator IEnumerable.GetEnumerator() => ((IEnumerable)list).GetEnumerator(); public int Count => list.Count; public T this[int index] => list[index]; public static implicit operator IReadOnlyList(List list) => new IReadOnlyList(list); } }