Function malachite_base::tuples::exhaustive::exhaustive_pairs_custom_output
source · [−]pub fn exhaustive_pairs_custom_output<X: Clone, I: Iterator<Item = X>, Y: Clone, J: Iterator<Item = Y>>(
xs: I,
ys: J,
output_type_x: BitDistributorOutputType,
output_type_y: BitDistributorOutputType
) -> ExhaustivePairs<X, I, Y, J>ⓘNotable traits for ExhaustivePairs<X, I, Y, J>impl<X: Clone, I: Iterator<Item = X>, Y: Clone, J: Iterator<Item = Y>> Iterator for ExhaustivePairs<X, I, Y, J> type Item = (X, Y);
Expand description
This documentation applies not only to exhaustive_pairs_custom_output
, but also to
exhaustive_triples_custom_output
, exhaustive_quadruples_custom_output
, and so on.
See exhaustive_tuples
for more information.
Generates all $n$-tuples with elements from $n$ iterators, possibly with different output growth rates.
The $i$th output_type_[x_i]
parameter is a
BitDistributorOutputType
that determines how quickly the
$i$th output slot advances through its iterator; see the
BitDistributor
documentation for a description of the different
types.
If all of xs
, ys
, zs
, … are finite, the output length is the product of their
lengths. If any of xs
, ys
, zs
, … are infinite, the output is also infinite.
If any of xs
, ys
, zs
, … is empty, the output is also empty.
Examples
See here.