public IntT IndexOf <TListSource>(TListSource source, IntT start, IntT count) where TListSource : IReadOnlyList <T> { if (null != source) { if (ListModule.CheckSegment <T, TListSource>(source, start, count)) { return(IndexOfInternal(source, start, count)); } // TODO throw new ArgumentException(); } throw new ArgumentNullException("source"); }