On 01/30/10 00:37, Hicham Mouline wrote:
Hello,
struct params { double field1; double field2; double field3; double fiedl4; };
I would like to generate all the types that hold any combination of the members of params. [snip]
Step1:
Create cross-product of void and {field1,field2,...}.
This will produce a sequence of pairs:
no_yes =
( (void,field1)
, (void,field2)
...
, (void,fieldn)
)
Step2:
Create the crosss product of all rows in no_yes.
cross_no_yes =
( (void,void,..void)
, (field1,void,...void)
, (void,field2,void...,void)
...
, (field1,field2,...fieldn)
)
step3:
remove all the voids in all the rows of cross_no_yes.
Since the size