pub fn zip<'a,I1,I2,T1,T2>(x: I1, y: I2) -> Box<Iterator<Item=(f64,f64)>+'a>
where I1: IntoIterator<Item=&'a T1>+'a, I2: IntoIterator<Item=&'a T2>+'a,
    T1: Into<f64>+Copy+'a, T2: Into<f64>+Copy+'a
{
    Box::new(x.into_iter().zip(y).map(|(&x,&y)| (x.into(),y.into())))
}
/// join two iterators of references together to produce point tuples.
/// The reference types can be anything that converts to `f64`
join two iterators of references together to produce point tuples.
The reference types can be anything that converts to `f64`
join two iterators of references together to produce point tuples . The reference types can be anything that converts to ` f64 `
pub fn zip<'a,I1,I2,T1,T2>(x: I1, y: I2) -> Box<Iterator<Item=(f64,f64)>+'a>
where I1: IntoIterator<Item=&'a T1>+'a, I2: IntoIterator<Item=&'a T2>+'a,
    T1: Into<f64>+Copy+'a, T2: Into<f64>+Copy+'a
{
    Box::new(x.into_iter().zip(y).map(|(&x,&y)| (x.into(),y.into())))
}
pub fn zip < ' a , I1 , I2 , T1 , T2 > ( x : I1 , y : I2 ) -> Box < Iterator < Item = ( f64 , f64 ) > + ' a > where I1 : IntoIterator < Item = & ' a T1 > + ' a , I2 : IntoIterator < Item = & ' a T2 > + ' a , T1 : Into < f64 > + Copy + ' a , T2 : Into < f64 > + Copy + ' a { Box :: new ( x . into_iter ( ) . zip ( y ) . map ( | ( & x , & y ) | ( x . into ( ) , y . into ( ) ) ) ) }
join two iterators of references together to produce point tuples.
join two iterators of references together to produce point tuples .
x
I1
y
I2
x
I1
y
I2