pub trait ZipWithGen<E0>where
E0: Clone + 'static,{
// Required methods
fn zip<E1>(&self, other_gen: BoxGen<E1>) -> BoxGen<(E0, E1)>
where E1: Clone + 'static;
fn zip_3<E1, E2>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
) -> BoxGen<(E0, E1, E2)>
where E1: Clone + 'static,
E2: Clone + 'static;
fn zip_4<E1, E2, E3>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
gen3: BoxGen<E3>,
) -> BoxGen<(E0, E1, E2, E3)>
where E1: Clone + 'static,
E2: Clone + 'static,
E3: Clone + 'static;
fn zip_5<E1, E2, E3, E4>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
gen3: BoxGen<E3>,
gen4: BoxGen<E4>,
) -> BoxGen<(E0, E1, E2, E3, E4)>
where E1: Clone + 'static,
E2: Clone + 'static,
E3: Clone + 'static,
E4: Clone + 'static;
fn zip_6<E1, E2, E3, E4, E5>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
gen3: BoxGen<E3>,
gen4: BoxGen<E4>,
gen5: BoxGen<E5>,
) -> BoxGen<(E0, E1, E2, E3, E4, E5)>
where E1: Clone + 'static,
E2: Clone + 'static,
E3: Clone + 'static,
E4: Clone + 'static,
E5: Clone + 'static;
}Expand description
Non-object-safe trait for providing generator zipping.
The ZipWithGen::zip extension method cannot be implemented diectly on
Gen object trait, since generic method in respect to other type E1, does
not seem to be allowed on trait objects.
Required Methods§
Sourcefn zip<E1>(&self, other_gen: BoxGen<E1>) -> BoxGen<(E0, E1)>where
E1: Clone + 'static,
fn zip<E1>(&self, other_gen: BoxGen<E1>) -> BoxGen<(E0, E1)>where
E1: Clone + 'static,
See gens::zip.
Sourcefn zip_3<E1, E2>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
) -> BoxGen<(E0, E1, E2)>
fn zip_3<E1, E2>( &self, gen1: BoxGen<E1>, gen2: BoxGen<E2>, ) -> BoxGen<(E0, E1, E2)>
Zip together 3 generators.
Sourcefn zip_4<E1, E2, E3>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
gen3: BoxGen<E3>,
) -> BoxGen<(E0, E1, E2, E3)>
fn zip_4<E1, E2, E3>( &self, gen1: BoxGen<E1>, gen2: BoxGen<E2>, gen3: BoxGen<E3>, ) -> BoxGen<(E0, E1, E2, E3)>
Zip together 4 generators.
Sourcefn zip_5<E1, E2, E3, E4>(
&self,
gen1: BoxGen<E1>,
gen2: BoxGen<E2>,
gen3: BoxGen<E3>,
gen4: BoxGen<E4>,
) -> BoxGen<(E0, E1, E2, E3, E4)>
fn zip_5<E1, E2, E3, E4>( &self, gen1: BoxGen<E1>, gen2: BoxGen<E2>, gen3: BoxGen<E3>, gen4: BoxGen<E4>, ) -> BoxGen<(E0, E1, E2, E3, E4)>
Zip together 5 generators.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.