2011/4/1 Noah Roberts <roberts.noah@gmail.com>
How do you intend to use invoke?
template < typename Sq > // Sq is full of metafunctions
struct do
{
typedef typename fold
<
Sq
, start_state
, funky<invoke<_2>,_1>
>::type
I would like to empasize here, that I'm no expert -- on the contrary, I'm trying to learn bases of mpl ;-)
I don't understand your example above. I think 'do' cannot be a name of a struct, and typedef typename fold<...>::type seems to be missing something...
Did you mean:
struct do_
{
typedef typename fold
<
Sq
, start_state
, funky<invoke<_2>,_1>
>::type type;
};
Could you please explain, what funky does, and start_state too? I would like to see an example I can compile, and if my understanding is correct, make a simple modification to avoid the need for invoke.
Regards,
Kris