I am curious if rust has some buildin function to combine iterators aka. "every element from A with every element from B". Similar how haskell handles [(x,y)| x <- [1..3], y <- [3..6]]
    let t = (1..3)
        .into_iter()
        ."combine"((3..6) //Magic goes here?
            .into_iter())
        .collect::<Vec<usize>>();
    assert_eq!(t, vec![(1,3),(2,3),(1,4),(2,4)....]);
Thanks :D