On Friday, 9 October 2015 at 07:20:43 UTC, John Colvin wrote:
On Friday, 9 October 2015 at 02:41:50 UTC, Timothee Cour wrote:
how to do iota(0,256) with ubytes ?
and more generally:
iota with 'end' parameter set to max range of a type.

of course this doesn't work:
auto b=iota(ubyte(0), ubyte(256));
//cannot implicitly convert expression (256) of type int to ubyte

Could we have a function with iota_inclusive that has inclusive bounds for 'end' parameter ?

A bounds parameter would be nice, like in std.random.uniform.


For anyone googling for a solution to this, here's a workaround:

auto b = iota(0, 256).map!"cast(ubyte)a";

Unfortunately this doesn't scale to iterating over all values of long or ulong.

Do not use string lambdas. It will be deprecated.

map!(a => cast(uint)a) is correct

Reply via email to