I ask because I thought C# required all interfaces to be implemented in the class. Using ILSpy I found that IReadOnlyList.this[int index] indexer implementation wasn't in the class List.
this is an edited snippet of the class declaration(not everything listed)
public class List < T > : IList <T >, IReadOnlyList < T >
IList<T>.this[int index]
is there, but not IReadOnlyList<T>.this[int index]
.
Just seems weird, how does this compile in the first place? Is there some special sauce in .NET Framework that enables this?