Boost logo

Boost :

From: John Maddock (jm_at_[hidden])
Date: 2003-02-08 06:45:13


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?

~~~~~~~~~~~~~~~~~~~~~

Basically it's history: until is_member_function_pointer was added then:

1) Exactly one of the primary type categories will be true for any given
type.
2) The secondary categories are a union of one or more primary categories.

Adding is_member_function_pointer broke (2), and it won't get fixed until we
add is_member_object_pointer.

John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk