To remove multiple AA entries at once we should support calling aa.remove with a predicate function, taking key and value.
Old code:
Louter: while (true)
{
Key key;
foreach (k, v; aa) {
if (!pred(k, v)) continue;
aa.remove(k);
continue Louter;
}
break;
}
New code:
aa.remove((k, v) => pred(k, v));
Comment #1 by robert.schadek — 2024-12-07T13:34:21Z