[Issue 15928] chain(r1, r2, r3, ...) should discard all arguments after the first infinite range
https://issues.dlang.org/show_bug.cgi?id=15928 Iain Buclaw changed: What|Removed |Added Priority|P1 |P4 --
[Issue 15928] chain(r1, r2, r3, ...) should discard all arguments after the first infinite range
https://issues.dlang.org/show_bug.cgi?id=15928 --- Comment #3 from Marc Schütz--- Ah... I now remember the restriction that infinite ranges cannot be bidirectional. I think this was a conscious decision in order to get a simpler range hierarchy, but there was no fundamental reason to disallow it, right? This restriction simplifies things for chain(): if any of the individual ranges are infinite, the resulting chain cannot be bidirectional. --
[Issue 15928] chain(r1, r2, r3, ...) should discard all arguments after the first infinite range
https://issues.dlang.org/show_bug.cgi?id=15928 --- Comment #2 from Andrei Alexandrescu--- @Marc didn't think of that. But then what do you do when you come back and you finish the bidir ranges after the infinite one. So then you have a non-empty range that you can't pop back from anymore. The mind boggles... I agree about refusal to compile - let it ride! --
[Issue 15928] chain(r1, r2, r3, ...) should discard all arguments after the first infinite range
https://issues.dlang.org/show_bug.cgi?id=15928 Marc Schützchanged: What|Removed |Added CC||schue...@gmx.net --- Comment #1 from Marc Schütz --- Not sure about refusing compilation - things like this could appear in otherwise valid generic code... Anyway, bidi ranges need special treatment - they need to be accessible from the end up to the last infinite range, too. --
[Issue 15928] chain(r1, r2, r3, ...) should discard all arguments after the first infinite range
https://issues.dlang.org/show_bug.cgi?id=15928 Andrei Alexandrescuchanged: What|Removed |Added Hardware|x86_64 |All OS|Linux |All --