On Monday, 11 May 2015 at 22:46:00 UTC, Per Nordlöw wrote:
The pattern
final switch (_index)
{
import std.range: empty, front;
foreach (i, R; Rs)
{
case i:
assert(!source[i].empty);
return source[i].front;
}
}
occurring in roundRobin() and now also in my merge at
https://github.com/nordlow/justd/blob/master/range_ex.d#L604
is nor pretty nor concise.
Is there a better way of indexing a compile time tuple with a
run-time index?
It may have to work together with CommonType somehow as is
shown in my implementation of merge().
A little hacky, but how about casting it to a static array?
http://dpaste.dzfl.pl/d0059e6e6c09