Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-06-23 01:32:52


"Thorsten Ottosen" <nesotto_at_[hidden]> writes:

> "David Abrahams" <dave_at_[hidden]> wrote in message
> news:u7jgm77rf.fsf_at_boost-consulting.com...
> | "Thorsten Ottosen" <nesotto_at_[hidden]> writes:
> |
> | > "David Abrahams" <dave_at_[hidden]> wrote in message
> | > news:u64w6a66h.fsf_at_boost-consulting.com...
> | > | "Thorsten Ottosen" <nesotto_at_[hidden]> writes:
> | > |
> | > | > yeah, ok. I guess we could also demand that the range:: or iterator::
> | > | > prefix is the name of a class.
> | > |
> | > | I don't understand what you're getting at here.
> | >
> | > make value<T>::type etc nested classes of the iterator/range class.
> |
> | Bad idea IMO; it means nobody can adapt a 3rd party type or a builtin
> | to make it fit the Range concept. It's the same reason we use traits
> | instead of requiring nested type names.
>
> yeah, seems bad. I don't understand how you would define
> std::iterator::value<T>::type etc then?

You wouldn't. That doesn't work.

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

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