$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Tobias Schwinger (tschwinger_at_[hidden])
Date: 2007-01-10 06:45:40
Hi Dean,
FunctionTypes (the grown up version of function_traits) has recently 
been accepted into Boost, so it will be an official part of Boost. It 
provides the functionality you propose.
     http://tinyurl.com/qaf5f  (zip archive in the Boost file vault)
Further, it provides proper decomposition of member function pointers, 
dealing with vendor specific extension regarding the calling convention 
(for e.g. calling between .net and unmanaged code), works around weird 
compiler glitches (such as Borland won't allow to define a template 
specialization for 'Ret (Class::*)(Arg)' and MSVC won't produce the same 
type if you deduce a member function pointer 'T C::*' and put T and C 
back together), etc. (see the documentation and examples included for 
details).
Since you mention Fusion in this context, please also take a look at:
     http://tinyurl.com/ydoq9b (zip archive in the Boost file vault)
It's a Fusion extension (documentation and tests included) to call and 
get called from Fusion code, built on top of FunctionTypes. I recently 
received Joel's blessing on this one, so it will become an official part 
of Fusion. Please note however that this code has just been finished, so 
it's yet untested with compilers other than GCC4/Darwin.
Regards,
Tobias