Vlad Levenfeld:

a ContiguousRange would be any RandomAccessRange which has a member called ptr which supports a dereferencing operator * that yields an ElementType!R. This notion is useful for functions which might otherwise perform an element-by-element transfer to an OutputRange via put, instead perform an optimized batch transfer directly to a ContiguousRange via ptr.

Increasing the number of basic ranges will lead to a little more complexity, but this seems a nice idea.

Bye,
bearophile

Reply via email to