Open GoogleCodeExporter opened 9 years ago
Merge some or all of the operators from Stephen Cleary: Operators for IEnumerable<T> lifted from List<T>/Array: int IndexOf<T>(this IEnumerable<T> source, T value) int IndexOf<T>(this IEnumerable<T> source, Func<T, bool> predicate) // List<T>.FindIndex int LastIndexOf<T>(this IEnumerable<T> source, T value) int LastIndexOf<T>(this IEnumerable<T> source, Func<T, bool> predicate) // List<T>.FindLastIndex Operators for IList<T> lifted from List<T>/Array: IList<T> AsReadOnly<T>(this IList<T> list) void CopyTo<T>(this IList<T> list, int index, IList<T> destination, int destinationIndex, int count) void CopyTo<T>(this IList<T> list, IList<T> destination, int destinationIndex) void CopyTo<T>(this IList<T> list, IList<T> destination) int LastIndexOf<T>(this IList<T> list, T value) int LastIndexOf<T>(this IList<T> list, Func<T, bool> predicate) // List<T>.FindLastIndex Operators optimized for IList<T> from Enumerable (.NET 3.5): IList<TResult> Select<TSource, TResult>(this IList<TSource> list, Func<TSource, TResult> selector) IList<TResult> Select<TSource, TResult>(this IList<TSource> list, Func<TSource, int, TResult> selector) IList<T> Skip<T>(this IList<T> list, int offset) IList<T> Take<T>(this IList<T> list, int count) IList<T> Reverse<T>(this IList<T> list) T Last(this IList<T> list, Func<T, bool> selector) T LastOrDefault(this IList<T> list, Func<T, bool> selector) Operators optimized for IList<T> from EnumerableEx (Rx): IList<T> Repeat<T>(this IList<T> list, int count) IList<TResult> Zip<TFirst, TSecond, TResult>(this IList<TFirst> first, IList<TSecond> second, Func<TFirst, TSecond, TResult> zipper) IList<T> Memoize<T>(this IList<T> list) IList<T> MemoizeAll<T>(this IList<T> list) Sources optimized for IList<T> from EnumerableEx (Rx): IList<T> Return<T>(T source) IList<T> Repeat<T>(T source, int count) IList<T> Concat<T>(params IList<T>[] others) IList<T> Concat<T>(IList<IList<T>> lists) IList<T> Generate<T>(int count, Func<T> generator) IList<T> Generate<T>(int count, Func<int, T> generator) My own sequence/list operators: Zip (3-argument version): IEnumerable<TResult> Zip<TFirst, TSecond, TThird, TResult>(this IEnumerable<TFirst> first, IEnumerable<TSecond> second, IEnumerable<TThird> third, Func<TFirst, TSecond, TThird, TResult> zipper) IList<TResult> Zip<TFirst, TSecond, TThird, TResult>(this IList<TFirst> first, IList<TSecond> second, IList<TThird> third, Func<TFirst, TSecond, TThird, TResult> zipper) Flatten: IEnumerable<T> Flatten<T>(this IEnumerable<IEnumerable<T>> list) IList<T> FlattenList<T>(this IList<IList<T>> list) Select (bidirectional projection): IList<TResult> Select<TSource, TResult>(this IList<TSource> list, Func<TSource, TResult> selector, Func<TResult, TSource> reverseSelector) Slice: IList<T> Slice<T>(this IList<T> list, int offset, int count) IList<T> Step<T>(this IList<T> list, int step) CopyBackward: void CopyBackward<T>(this IList<T> list, int index, IList<T> destination, int destinationIndex, int count)
Original issue reported on code.google.com by stephena...@gmail.com on 20 Nov 2009 at 3:29
stephena...@gmail.com
I think this refers to stuff from Nito.LINQ: http://nitolinq.codeplex.com/
Original comment by azizatif on 25 May 2012 at 4:58
azizatif
Original issue reported on code.google.com by
stephena...@gmail.com
on 20 Nov 2009 at 3:29