From: Thorsten Ottosen (nesotto_at_[hidden])
Date: 2005-09-01 12:57:41


Eric Niebler <eric <at> boost-consulting.com> writes:

>
>
> While investigating test failures with Boost.Foreach, I found this in
> Boost.Range's documentation for extending the Range library:
>
> http://boost.org/libs/range/doc/boost_range.html#minimal_interface
>
> This seems to suggest that the only way to extend Boost.Range is for
> user-defined types to implement a std-container-like interface, with
> nested iterator and const_iterator types, and begin() and end() member
> functions. Is this really the intention?

no

>I seem to recall some
> discussion about a more accomodating extensibility mechanism that makes
> allowances for non-std-container-like user-defined range types. In fact,
> Boost.Foreach assumes such an interface, with disastrous results. What
> became of Boost.Range's extensibility mechanism?

it's still there, just not very much documented.

> Is it documented
> anywhere, and I'm just not seeing it?

I think the best documentation was provided by you in your for-each docs.
If you don't mind, I would love to steal that some day :-)

In a perfect world, that would have been part of the range docs from the
beginning.

br

Thorsten