$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Moore, Paul (paul.moore_at_[hidden])
Date: 2001-03-07 06:04:35
From: Aleksey Gurtovoy [mailto:alexy_at_[hidden]]
> First of all, it's not about simulating the missing feature, 
> it's about solving the real problem in an acceptable way.
> Second, I don't think that 
> 
> iterator_traits_builder
>   ::value<dummyT>
>   ::reference<const dummyT&>
>   ::category<std::forward_iterator_tag>
>   ::distance<std::ptrdiff_t>
>   ::pointer<const dummyT*> 
>   ::type
> 
> is so much different from
> 
> iterator_traits_builder<
>     value = dummyT
>   , reference = const dummyT&
>   , category = std::forward_iterator_tag
>   , distance = std::ptrdiff_t
>   , pointer = const dummyT*
>   >
> 
> IMO they are pretty much equivalent in both readability and ability to
> express the code intent.
With that example, I agree. However, the examples I've seen before are a lot
more verbose (aren't you using global symbols, like ::value? Wouldn't that
in reality be something like boost::iterator_adaptors::value? That starts to
get unreadable again...
But I do take your point, particularly with regard to the builder class
equivalent for functions.
Paul.