smoke::generator
pub fn product3<G1, G2, G3, F>( gen1: G1, gen2: G2, gen3: G3, f: F) -> Product3<G1, G2, G3, F>
Product of 3 generators, figuratively: F(G1, G2, G3)