Multiple range enumeration

cym13 via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Nov 10 18:55:24 PST 2015


On Wednesday, 11 November 2015 at 02:38:19 UTC, puming wrote:
> Hi,
>
> If I have multiple ranges, say:
>
> auto a = [1, 2, 3];
> auto b = ["a", "b", "c"];
> auto c = ["x", "y", "z"];
>
> I'd like a composition range that enumerate all combinations of 
> these ranges,
> having the same effect as a nested foreach loop:
>
> foreach (i; a) {
>   foreach (j; b) {
>     foreach (k; c) {
>        writlen(i, j, k);
>     }
>   }
> }
>
> Is there such a generic function in std lib?

http://dlang.org/phobos/std_algorithm_setops.html#.cartesianProduct ?


More information about the Digitalmars-d-learn mailing list