Given
IList indexes; ICollection collection;
What is the most elegant way to extract all T in
public static IEnumerable WhereIndexes(this IEnumerable collection, IEnumerable indexes) { IList l = new List(collection); foreach (var index in indexes) { yield return l[index]; } }