|
Boost : |
From: Peter Dimov (pdimov_at_[hidden])
Date: 2005-03-21 16:36:31
Thorsten Ottosen wrote:
> "Daniel James" <daniel_at_[hidden]> wrote in message
> news:d1napl$8pu$1_at_sea.gmane.org...
> Peter Dimov wrote:
>> I don't remember this being discussed during the review, could you
>> please explain it in more detail? Do you mean that hash_value should
>> have a primary template that assumes that its argument is a range?
>
> yes.
>
>> If
>> so, I strongly oppose it. Ranges aren't special from the point of
>> view of hash_value, they shouldn't monopolize the primary template.
>
> why should anything *special* monopolize the primary template? Why not
> something *general*?
There can be at most one primary template (and for ADL customization points,
there should be none). When you pick your favorite type category and put
that in a primary template, this makes this type category special with
respect to the primitive. It means that the primitive operates on this
specific category of types.
hash_value is not a range primitive. It is a value primitive.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk