View difference between Paste ID: QWqDgiqA and CNBGdNqC
SHOW: | | - or go back to the newest paste.
1
use std::borrow::Borrow;
2
3
fn iter_everything<I, T>(iter: I) 
4
    where I: IntoIterator<Item=T>,
5
          T: Borrow<f64>
6
{
7
    for i in iter.into_iter() {
8
        print!("{} ", *i.borrow() + 2.0);
9
    }
10
    
11
    println!();
12
}
13
14
15
fn main() {
16
    let vec = vec![1.0f64, 2.0, 3.0];
17
18
    iter_everything(vec.clone());
19
    iter_everything(&vec[1..]);
20
    iter_everything( std::iter::repeat(1.0f64).take(5))
21
}