pop & popFront combined

via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Sat Nov 1 06:36:04 PDT 2014


On Saturday, 1 November 2014 at 13:30:16 UTC, anonymous wrote:
> On Saturday, 1 November 2014 at 13:22:34 UTC, Nordlöw wrote:
>> On Saturday, 1 November 2014 at 11:45:25 UTC, Nordlöw wrote:
>>> So why isn't something like x.stealFront already in Phobos?
>>
>> First try here:
>>
>> https://github.com/nordlow/justd/blob/master/range_ex.d#L14
>>
>> Please comment!
>
> That is:
>
>> auto ref stealFront(R)(ref R r)
>> {
>> import std.range: moveFront, popFront;
>> auto e = r.moveFront;
>> r.popFront;
>> return e;
>> }
>
> `auto ref` is nonsense here. You can't return a reference to `e`
> as
> it's a local variable.

It's probably intended to mean `auto` + `ref`, not `auto ref`. 
`ref` alone is already sufficient to get type deduction.


More information about the Digitalmars-d-learn mailing list