On Mon, 11 Feb 2013 09:46:54 -0500, Dicebot <[email protected]> wrote:
This question is so stupid I am just struck with trying to chose the
"good" solution.
Consider this code:
string func(in string[] args)
{
return args.join(" "); // compile error, args is not an input range
}
It is somewhat expected as you can hardly popFront on a const range. But
then question is: how can I wrap const slice into a mutable range
without copying data (using standard language/library solution)? Of
course, I can do .dup.join, but there is no real need to do copy, even a
shallow one.
What you are looking for is a tail-const array:
string func(const(string)[] args)
This will allow traversal, and not allow modification of the elements.
-Steve