IntoIterator — 반복자로 변환되는 트레이트
IntoIterator — 반복자로 변환되는 트레이트
IntoIterator는 어떤 값이 반복자(iterator)로 변환될 수 있음을 나타내는 트레이트예요. for 루프는 이 트레이트를 사용해서 순회해요.
출처: Rust 공식 문서
본문
pub trait IntoIterator {
type Item;
type IntoIter: Iterator<Item = Self::Item>;
// Required method
fn into_iter(self) -> Self::IntoIter;
}
Vec, HashMap, 배열, 슬라이스 등이 이 트레이트를 구현해서 for x in collection 형태의 순회가 가능해요. into_iter()로 자기 자신을 소비하며 반복자를 만들어요. &collection으로 호출하면 참조 반복자가, collection으로 호출하면 소유 반복자가 나오는 방식으로 동작해요.