IT用語集 › プログラミング › Iterator(Rust)

Iterator(Rust)

プログラミング Svenska → 更新: 2026-10-23

Rustにおける列の基本的な抽象化。メソッドは fn next(&mut self) -> Option<Item> ただ1つのトレイトで、既定では遅延評価される。アダプタ(map、filter、take)がパイプラインを組み、collect、sum、forループなどで消費して初めて実行される。

ゼロコストである。vec.iter().map(|x| x*2).filter(|x| x>10).sum() は、手書きのforループと同等に最適なコードにコンパイルされる。Iterator、IntoIterator、FromIteratorのトレイトが関数型のパイプラインを構成する。所有(into_iter)、借用(iter)、可変借用(iter_mut)の3種類がある。Rayonクレートを使えば並列イテレーター(par_iter())も簡単に書け、itertoolsクレートはgroup_byやtuple_windowsなど標準に足りないコンビネーターを補う。慣用的なRustの標準パターンである。

← 用語集に戻る