From 19fc4e8008c46cfac617543d7e94ff8352da3da1 Mon Sep 17 00:00:00 2001 From: Vinzent Steinberg Date: Fri, 31 Jul 2020 17:41:37 +0200 Subject: [PATCH] Implement `IntoIterator` for `IndexVec` This fixes a clippy warning and slightly improves ergonomic. This is technically a breaking change, but it is unlikely to break code in practice, since `IntoIterator` is in Rust's prelude. --- src/seq/index.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/seq/index.rs b/src/seq/index.rs index 92be0a33fd2..8638b86bcfd 100644 --- a/src/seq/index.rs +++ b/src/seq/index.rs @@ -85,10 +85,15 @@ impl IndexVec { IndexVec::USize(ref v) => IndexVecIter::USize(v.iter()), } } +} + +impl IntoIterator for IndexVec { + type Item = usize; + type IntoIter = IndexVecIntoIter; /// Convert into an iterator over the indices as a sequence of `usize` values #[inline] - pub fn into_iter(self) -> IndexVecIntoIter { + fn into_iter(self) -> IndexVecIntoIter { match self { IndexVec::U32(v) => IndexVecIntoIter::U32(v.into_iter()), IndexVec::USize(v) => IndexVecIntoIter::USize(v.into_iter()),