В этом классе определенны все функции для System.Collections.Generic.IEnumerable[T].
Но нет определения функций для System.Collections.IEnumerable.
Почему вообще понадобилось ?
Класс System.Windows.Forms.ListView.ListViewItemCollection наследуется от IEnumerable, а в .Net 2 не добавили IEnumerable[T].
Такой код не сработал:
listView1.Items.Iter(x => (x :> ListViewItem).Selected = true)
Пока добавил у себя в проекте:
using SC = System.Collections;
namespace Nemerle.Utility
{
module NCollectionUtilsEx
{
public Iter(this source : SC.IEnumerable, action : object -> void) : void
{
foreach (elem in source)
action(elem)
}
}
}
P.S.
Были бы все классы коллекций были бы производными от IEnumerable[T] проблем бы не было.