Thread overview | |||||
---|---|---|---|---|---|
|
June 10, 2022 'each' can take static arrays | ||||
---|---|---|---|---|
| ||||
I know static arrays are not ranges but somehow they work with 'each'. With map, I need to slice as 'arr[]': import std; void main() { int[3] arr; arr.each!(e => e); // Compiles // arr.map!(e => e); // Fails to compile arr[].map!(e => e); // Compiles } Why the inconsistency? Ali |
June 10, 2022 Re: 'each' can take static arrays | ||||
---|---|---|---|---|
| ||||
Posted in reply to Ali Çehreli | On Friday, 10 June 2022 at 16:59:04 UTC, Ali Çehreli wrote:
> Why the inconsistency?
Phobos has dozens of random special cases throughout. I'd prefer if these were all removed, but right now there's just some functions that special case to allow it and others that don't.
Apparently each is one that does.
|
June 10, 2022 Re: 'each' can take static arrays | ||||
---|---|---|---|---|
| ||||
Posted in reply to Adam D Ruppe | On Friday, 10 June 2022 at 17:27:13 UTC, Adam D Ruppe wrote:
> On Friday, 10 June 2022 at 16:59:04 UTC, Ali Çehreli wrote:
>> Why the inconsistency?
>
> Phobos has dozens of random special cases throughout. I'd prefer if these were all removed, but right now there's just some functions that special case to allow it and others that don't.
>
> Apparently each is one that does.
Special cases are always bad, inconsistency is a mental burden to the developers, and can even lead to serious but silent bugs when overlooked.
1) we should fix them as soon as we discover any of them
2) or at least doc such inconsistency with emphasize
|
Copyright © 1999-2021 by the D Language Foundation