Skip to content

Commit bea8b81

Browse files
committed
Make VecPerParamSpace support IntoIterator
1 parent acd1a00 commit bea8b81

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

src/librustc/middle/subst.rs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ use middle::ty_fold::{self, TypeFoldable, TypeFolder};
1818
use util::ppaux::Repr;
1919

2020
use std::fmt;
21+
use std::iter::IntoIterator;
2122
use std::slice::Iter;
2223
use std::vec::{Vec, IntoIter};
2324
use syntax::codemap::{Span, DUMMY_SP};
@@ -529,6 +530,23 @@ impl<'a,T> Iterator for EnumeratedItems<'a,T> {
529530
}
530531
}
531532

533+
impl<T> IntoIterator for VecPerParamSpace<T> {
534+
type IntoIter = IntoIter<T>;
535+
536+
fn into_iter(self) -> IntoIter<T> {
537+
self.into_vec().into_iter()
538+
}
539+
}
540+
541+
impl<'a,T> IntoIterator for &'a VecPerParamSpace<T> {
542+
type IntoIter = Iter<'a, T>;
543+
544+
fn into_iter(self) -> Iter<'a, T> {
545+
self.as_slice().into_iter()
546+
}
547+
}
548+
549+
532550
///////////////////////////////////////////////////////////////////////////
533551
// Public trait `Subst`
534552
//

0 commit comments

Comments
 (0)