Boost logo

Boost :

From: Tobias Schwinger (tschwinger_at_[hidden])
Date: 2004-07-29 15:09:51

> Please, no more trait blobs! IMO you should separate the traits into
> individual meta functions that works on all function pointer types. For
> instance:
> function_arity<T>::type
> Self explanatory.
I agree, because of:

- MPL-interoperability

- Currently only the arity-part works on compilers without support for
partial template specialization. This clearly delimits compiler support.

- Including blobs of unused code unnecessarily increases compilation time.

> function_signature<T>::type
> MPL sequence containing all types of the function signature,
> including return type and type of *this if T is a member function
> pointer.
Is it a good idea to separate this even further ?


And only valid on member function pointers:


A 'function_signature' metafunction could then be implemented on top of

As I mentioned in the original post: A function type can exist without
a pointer while a member function type can not.
How to address this ? Handle all three cases or require pointer types ?

I would appreciate any suggestions.

> And while we're at it, why not deprecate function_traits?
It was just a -careful- request !


Boost list run by bdawes at, gregod at, cpdaniel at, john at