On Tuesday, 28 February 2017 at 15:15:00 UTC, Anton Pastukhov
wrote:
I can't see the logic in AA foreach order. Consider this code:
```
void main() {
string[string] test = [
"one": "1",
"two": "2",
"three": "3",
"four": "4"
];
import std.stdio:writeln;
foreach(k, v; test) {
writeln(k);
}
}
Output:
three
two
one
four
I was sure output should be
one
two
three
four
AA implemented as hash table, so it doesn't preserve insertion
order. You have to sort keys when you need:
import std.algorithm;
import std.stdio;
void main() {
auto aa = ["one":1,
"two":2
];
foreach(k; sort(aa.keys)) {
writeln(k);
}
}