
"David Abrahams" <dave@boost-consulting.com> wrote in message news:uk6mga3yb.fsf@boost-consulting.com... | "Thorsten Ottosen" <nesotto@cs.auc.dk> writes: | | > "David Abrahams" <dave@boost-consulting.com> wrote in message | > news:u1x8pceqw.fsf@boost-consulting.com... | > | | > | What is the rationale behind this name? It seems unintuitive to | > | me, and what's more, unneccessary. | > | > why? | | Unintuitive: it's not clear what The "result" part refers to. It's | such a generic word when applied to a (meta)function that it lacks | obvious semantic content... it's almost like naming the max fucntion | "result_of_max." well, I think const_if_arg_is_const_mutable_otherwise_iterator<T>::type was considered. ideas are welcome. | > | > | Shouldn't range_iterator<T const>::type just be | > | range_const_iterator<T>::type? | > | | > | If not, why not? | > | > container::const_iterator is the parallel. | | That doesn't explain anything (to me). What I was asking was: why | provide this oddly-named metafunction when people could just make the | inquiry using range_iterator with a const argument? I guess the design could havebeen that way; but we don't say container< const T >::iterator to get container<T>::const_iterator. -Thorten