VBでもVS2012からYieldが使えるようになった。喜ばしい。これなしでIEnumerableとIEnumeratorを両方実装するコレクションはRubyist的に不満だったからね。
IEnumerableを実装し、GetEnumeratorメソッドを実装すれば、LINQのクーリエ演算子が何でも使えるはず!
Public Function GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator For Each i in lists Yield New Hoge(i) End End Function
Yieldなんて知らんっていわれた(T-T)
Public Iterator Function GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator For Each i in lists Yield New Hoge(i) End End Function
Iterator という修飾子がないとだめらしい。