getNext

Mehrdad wfunction at hotmail.com
Mon Jul 9 13:47:29 PDT 2012


On Monday, 9 July 2012 at 20:25:58 UTC, Roman D. Boiko wrote:
> On Monday, 9 July 2012 at 20:21:18 UTC, Mehrdad wrote:
>> Why isn't transform taking in both an input and an output 
>> range in the first place? Of course they might be the same, 
>> but they don't have to be.
>
> Could you make a detailed proposal? I still completely don't 
> understand neither the problem you're trying to solve, nor the 
> solution you have in mind.


Well, I'm not even sure if the proposal is necessary yet, since 
it would be solved another way -- I'm not sure if transform 
should be taking 1 range as input or 2.

I mean like, why isn't it defined this way instead?

void transform(alias f, RI, RO)(RI r, RO output)
     if(isInputRange!RI && isOutputRange!RO)
{
     for(; !r.empty; r.popFront())
         output.put(unaryFun!f(r.front));
}



If that works, then I still think we don't need assignable 
front()s after all.


More information about the Digitalmars-d mailing list