On Monday, 12 January 2026 at 11:40:07 UTC, Vitaliy Fadeev wrote:
On Monday, 12 January 2026 at 11:28:01 UTC, user1234 wrote:
On Monday, 12 January 2026 at 10:55:34 UTC, Vitaliy Fadeev
wrote:
Hi! Did we know you could do this?
To make the `enum` inside the `case` easier to read:
[...]
Check the **with (Event.Type)**.
Yes this is a well known idiom, see
https://p0nce.github.io/d-idioms/#Qualified-switch-using-with.
Wow! This looks great! Thanks!
To go further, while this trick is great, there's been
discussions [last
years](https://forum.dlang.org/thread/[email protected]) about _Parent Enum Inference_. Instead of
```
bitset |= 1 << EnumType.enumerator;
```
people want to the language to allow writing
```
bitset |= 1 << .enumerator; // EnumType can be infered from the
OrAssign LHS
```
in this case `with` is of no help because it introduces a scope,
because it's not an expression, and finally because it's only
used once.