Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2001-09-25 12:28:56


Daryle,

Your changes look uniformly like improvements, especially the many HTML
documentation improvements (wording got more concise, consistent and
cleaner) and fixes you supplied for code examples (thanks! and curse that
& symbol!)

... except that you changed the names of the class templates. I was hapy
with bidirectional_iterator_operators, but "bidirectional_iteratible"
doesn't work at all for me. I'm not sure if "iteratible" is a word, but if
it is, I think it would be spelled "iteratable". In any case, I'd like to
hear from others about the choice of names. Jeremy? Aleksey?

-Dave

----- Original Message -----
From: <darylew_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Sunday, September 23, 2001 5:04 PM
Subject: [boost] Re: Separate iterator operators from iterator traits?

> Check out
>
> http://groups.yahoo.com/group/boost/files/dlw_oprs2.zip
>
> Daryle Walker
> [posting through web interface]
>
> --- In boost_at_y..., "David Abrahams" <david.abrahams_at_r...>
> wrote:
> > That seems like a good idea. Why don't you post a patch?
> >
> > Please include documentation changes.
> > Please also try to make your changes minimal, to ease the
> > review and integration process.
>
> > ----- Original Message -----
> > From: "Daryle Walker" <darylew_at_m...>
> > To: "Boost" <boost_at_y...>
> > Sent: Monday, September 03, 2001 2:42 PM
> > Subject: [boost] Separate iterator operators from iterator traits?
> >
> >
> > > In <boost/operators.hpp>, we have templates like:
> > >
> > >
> > > ==============================================
> > > template <class T,
> > > class V,
> > > class D = std::ptrdiff_t,
> > > class P = V*,
> > > class R = V&>
> > > struct bidirectional_iterator_helper
> > > : equality_comparable1<T
> > > , unit_steppable<T
> > > , dereferenceable<T, P
> > > , boost::iterator<std::bidirectional_iterator_tag, V, D, P, R
> > > > > > > {};
> > >
> > > ==============================================
> > >
> > > where the operator helpers are attached to the iterator base.
> > > Maybe we can do a separation like:
> > >
> > >
> > > ==============================================
> > > template <class T, class P, class B =
> > > ::boost::detail::empty_base>
> > > struct bidirectional_iterator_operators
> > > : equality_comparable1<T
> > > , unit_steppable<T
> > > , dereferenceable<T, P, B
> > > > > > {};
> > >
> > > //...
> > >
> > > template <class T,
> > > class V,
> > > class D = std::ptrdiff_t,
> > > class P = V*,
> > > class R = V&>
> > > struct bidirectional_iterator_helper
> > > : bidirectional_iterator_operators <T, P
> > > , boost::iterator<std::bidirectional_iterator_tag, V, D, P, R
> > > > > {};
> > >
> > > ==============================================
> > >
> > > in case we need to supply the iterator base in a different
> > > manner (like now when I'm trying to use these operators with
> > > an iterator based off a reverse iterator of another
> > > iterator class I defined).
>
>
>
> Info: http://www.boost.org Unsubscribe:
<mailto:boost-unsubscribe_at_[hidden]>
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>


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