【質問以外なんでもOK】Unity雑談スレッドその3 (145レス)
上下前次1-新
4: 2020/01/11(土)13:39 ID:eNMw2FnY(1/3) AAS
なんかごめんね
このLINQの実装を解説して終わる
外部リンク[cs]: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はまったく関係ない
これ以上分かりやすく伝えるのは俺には無理だ
上下前次1-新書関写板覧索設栞歴
あと 141 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.003s