Hide the `Iterator` specialization behind a trait
Hide the `Iterator` specialization behind a trait

aidancully/rust,graydon/rust,graydon/rust,aidancully/rust,graydon/rust,graydon/rust,aidancully/rust,graydon/rust,aidancully/rust,aidancully/rust,aidancully/rust,graydon/rust