John Maddock wrote:
> 
> >Why can't I see them?? Look at:
> 
> OK the implementation is:
> 
>     BOOST_STATIC_CONSTANT(bool, value =
>     (::boost::type_traits::ice_and<
>         ::boost::type_traits::ice_not< ::boost::is_union<T>::value >::value,
>         ::boost::type_traits::ice_not< ::boost::is_scalar<T>::value
> >::value,
>         ::boost::type_traits::ice_not< ::boost::is_array<T>::value >::value,
>         ::boost::type_traits::ice_not<
> ::boost::is_reference<T>::value>::value,
>         ::boost::type_traits::ice_not< ::boost::is_void<T>::value >::value,
>         ::boost::type_traits::ice_not< ::boost::is_function<T>::value
> >::value
>         >::value));
> 
> Note the is_scalar: this takes care of int's floats, pointers and member
> pointers.

Thank. I must have a blind spot for the "is_scalar" line as I missed it
several times, thus I wasn't able to understand how pointers got
rejected from is_class (and I kept looking for is_pointer, etc. but it
was implicit). Sorry for the noise. One reason for my blind spot may be
that I used to think that the primary type categories are created first
as an independent, closed part and that the secondary type categories
are just some kind of grouping of the primary categories. As this seems
not to be the case, may I suggest to drop the distinction between
primary and secondary type categories? Or is there some use in the
separation? And while writing this, I wonder why
"is_member_function_pointer" is in the secondary type category. It's not
a union of some primary type categories, is it?

Regards, Daniel

-- 
Daniel Frey

aixigo AG - financial training, research and technology
Schloß-Rahe-Straße 15, 52072 Aachen, Germany
fon: +49 (0)241 936737-42, fax: +49 (0)241 936737-99
eMail: [EMAIL PROTECTED], web: http://www.aixigo.de
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to