On 04/29/2012 06:36 AM, Andrej Mitrovic wrote:
On 4/29/12, Timon Gehr<timon.g...@gmx.ch> wrote:
- 'in' operator returning a pointer to the element.
AFAIK this is a property of how the opIn_r function is implemented,
nothing much to do with the language itself.
Well, AAs are part of the language.
But it does allow for some neat tricks, like:
int[int] hash;
hash[1] = 2;
int value = *enforce(1 in hash, new Exception("1 not in hash"));
assert(value == 2);
or:
if (auto val = 1 in hash)
...use val pointer (+ if it's a class/struct pointer you still
have access to the dot syntax)
else
... errors..
I know, but 'in' is somewhat of a misnomer. Anyway, it is not a huge issue.