Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- trait GetIterator<'a> {
- type Item;
- type IntoIter: Iterator<Item=Self::Item>;
- fn iter(&'a self) -> Self::IntoIter;
- }
- // impl<'a, I: 'a> GetIterator<'a> for I where I: Iterator + Clone {
- // type Item = I::Item;
- // type IntoIter = I;
- // fn iter(&'a self) -> Self::IntoIter {
- // self.clone()
- // }
- // }
- impl<'a, T: 'a> GetIterator<'a> for T where &'a T: IntoIterator {
- type Item = <&'a T as IntoIterator>::Item;
- type IntoIter = <&'a T as IntoIterator>::IntoIter;
- fn iter(&'a self) -> Self::IntoIter {
- self.into_iter()
- }
- }
- fn main() {
- // let x: Vec<u32> = Vec::new();
- // GetIterator::iter(&x);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement