
and especially related to the function_traits of the type_traits library. Is there any interest in class member function introspection?
It's been asked for before but I haven't got around to it: https://svn.boost.org/trac/boost/ticket/2011 I think a separate traits class for extracting the member type from a pointer to member is the best solution here, lets say it's called "remove_member_pointer" (finding a good name is the main stumbling block really), then you could use: function_traits<typename remove_member_pointer<member_function_type>::type>::arity etc The advantage is that remove_member_pointer is a pretty simple trait, useful in it's own right, and then we don't need to mess with function_traits. BTW the problem with extending function_traits is that it operates on function-types, and not on pointers or references to functions, but there is no such type as a "member function", only a pointer to one, so we would end up with different behaviors for member functions and regular ones. Hope that makes sense, John.