Add getAndPopFront()/getAndPopBack()

This commit is contained in:
2019-04-17 06:27:18 +02:00
parent f214f3baa2
commit 76bda0ac8d
3 changed files with 98 additions and 9 deletions

View File

@ -756,7 +756,7 @@ if (F.length == 1)
*
* Returns: Accumulated value.
*/
T foldl(R, T)(R range, auto ref T init)
auto foldl(R, T)(R range, auto ref T init)
if (isInputRange!R && !isInfinite!R)
{
if (range.empty)
@ -765,8 +765,7 @@ if (F.length == 1)
}
else
{
auto acc = F[0](init, range.front);
range.popFront;
auto acc = F[0](init, getAndPopFront(range));
return foldl(range, acc);
}
}