Transience of .front in input vs. forward ranges
Jonathan M Davis
jmdavisProg at gmx.com
Fri Nov 2 13:17:10 PDT 2012
On Friday, November 02, 2012 10:01:55 H. S. Teoh wrote:
> Ah, I see. That makes sense. So basically it's not the source (or any
> intermediate step) that decides whether to use the optimization, but the
> final consumer.
>
> Though now we have the issue that all intermediate ranges must propagate
> .fast, which is troublesome if every range has to do it manually. Can
> this be handled automatically by UFCS?
It's no different form propogating slicing or random access or whatnot. Wrapper
ranges have to look at the capabilities of the ranges that they're wrapping
and create wrappers for each of the range functions where appropriate. If we
added isTransient or fastRange or whatever, wrapper ranges would then have to
take it into account, or the wrapper wouldn't have it.
- Jonathan M Davis
More information about the Digitalmars-d
mailing list