【質問以外なんでもOK】Unity雑談スレッドその3at GAMEDEV
【質問以外なんでもOK】Unity雑談スレッドその3 - 暇つぶし2ch4:名前は開発中のものです。
20/01/11 13:39:12.14 eNMw2FnY.net
なんかごめんね
このLINQの実装を解説して終わる
URLリンク(github.com)">URLリンク(jump.5ch.net))

seq = list.Where(A).Where(B);
↓↓↓
// 一つ目のWhereはIEnumerable拡張
if(source is List<T> list){
 return new WhereListIterator<T>(list, A);
}
// 二つ目のWhereはWhereListIteratorクラス
return new WhereListIterator<T>(list, CombinePredicates(A, B));
結果として宣言時のseqに入るのは二つ目のWhereListIteratorインスタンス
チェーンの中ではList実体をバトンリレーしてるから入れ子にはなっていない
MoveNext()が取得するのはlist.GetEnumerator()から取得した唯一の値であって間に挟まれたIEnumはまったく関係ない
これ以上分かりやすく伝えるのは俺には無理だ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch