Hello,
I am looking for set of templates which will help while working with
class member
pointers. I am sending my wish list so you can tell if my suggestions
are worth
implementing or not:
- is_const_member_function_pointer<T> - true_type for const member
function pointers
(e.g. void (Test::*)() const) (BTW, is is possible to check this using
current version of
type_traits library?);
- is_member_pointer_of - true_type if T is member pointer of
class TClass;
- add_membership - make T a pointer to member of class TClass;
- remove_membership<T> - convert T TClass::* to T, and also similarly
for member function
pointers;
- get_membership<T> - for member pointers, return class type;
- member_traits<T> - returns class name and type of member pointers
(can be obtained
sepately by member_of<T> and remove_membership<T>);
- member_function_traits<T> - similar to function_traits, but should
also return class
name and if function is const;
Also I am looking for template which can change 'pointer to member
function' to 'pointer
to const member function' and vice-versa.
Daniel