
7 Mar
2008
7 Mar
'08
6:02 p.m.
AMDG Giovanni Piero Deretta wrote:
Hum, I think it actually does short circuit evaulation (haskel-like):
struct bad {}; typedef mpl::vector<mpl::false_, mpl::false_, bad> ffb_v; typedef mpl::vector<mpl::false_, mpl::false_, fail> tfb_v;
or_seq<ffb_v> gives the expected compile time error (error: no type named 'type' in 'struct fail') , while or_seq<tfb_v> compiles fine (and yelds true).
The short circuiting is done by and_ and or_, what I meant is that you still have to iterate through the entire sequence. In Christ, Steven Watanabe