Boost logo

Boost Users :

Subject: Re: [Boost-users] implementing a new Range
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2009-08-26 16:19:38


AMDG

Mathias Gaunard wrote:
> Neil Groves wrote:
>> I thought you could overload begin/end directly and it would get
>> picked up by ADL, but it looks like it's range_begin/range_end.
>> That really should be changed.
>>
>>
>> I disagree that this should be changed. This arrangement allows
>> qualified calls to boost::begin(x), boost::end(x) to continue to work
>> and find the approriate range_begin(), range_end() functions via
>> argument dependent lookup. If this rationale does not appear correct,
>> then please explain a little further. I would be happy to make the
>> change if I understand that it really would be an improvement.
>
> The proposed system for C++0x uses directly begin/end as customization
> points picked up by ADL IIRC.
>
> boost::begin could still be used fully qualified and defer to ADL or
> the basic implemenation, similarly to boost::swap, no?

If there is no overload of begin, the result may be
infinite recursion in some cases instead of a compiler
error. (although some compilers will emit a warning)

In Christ,
Steven Watanabe


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net