ExactSizeIteratorを使う
コード
解説
RustのIteratorはsize_hintという,イテレーションの回数の上限下限を返すメソッドがありますが,イテレーションの回数が確定している場合,素直にlenメソッドが欲しい場合があります.ExactSizeIteratorではlenメソッドが提供されています.こちらを使うと良いです.
ただし,lenメソッドは内部でsize_hintを呼び出しています.この上限下限が同じでないとパニックしますので,自分でsize_hintを定義しなければならない場合もあります.また,ExactSizeIteratorの実装には,Iteratorの実装が前提となっているので,両方のimplを書く必要があります.