Hello,
> Doesn't Boost.Function support 'result_of', or am I missing something obvious?
More the opposite, result_of doesn't support boost::function and is quite limited without "recent" compiler features.
>typedef boost::result_of<my_function_type>::type my_return_type;
You may want to use "#define BOOST_RESULT_OF_USE_DECLTYPE" if your compiler is recent enough.
Explanations in the docs of result_of.
Of course if your compiler is even more recent, it may support std::result_of.
Regards,
Julien
PS: niXman solution will work even better if you don't have too many functions...