> |>| What is the problem adapting pair of iterators to scalar 
> vectors to
> |>produce
> |>| an iterator with complex value type?
> |>
> |>The problem is you can hardly adapt a pair. So using 
> iterator_adaptor 
> |>(the new class template) does not provide any benefit.
> |
> |
> | Why is that?
> 
> The whole point in adapting is that you modify some but not 
> all behavior/interface of a thing. There is nothing a pair 
> provides that can be reused so adoption is pointless.

There is all that we need so we could create valid iterator. As for how much
we will need to overwrite - it still less then writing iterator from
scratch.
 
> That's why the new version provides iterator_facade and 
> iterator_adaptor. iterator_facade helps with implementing 
> iterators, iterator_adaptor is for adapting iterator like types.
> 
> | I did not look in depth on new version but I remember that old one 
> | allowed to adapt any source.
> 
> You needed to do this as the iterator interface 
> implementation was not separated from the actual iterator_adaption.

I do not argue which version better fit for the task. I just saying that it
could be easily done with old version either.

Gennadiy.
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to