On Wednesday, 18 February 2026 at 15:05:16 UTC, Brother Bill wrote:
On Wednesday, 18 February 2026 at 14:55:50 UTC, Nick Treleaven wrote:
That use of `is` is a different expression:
https://dlang.org/spec/expression.html#identity_expressions

That's it!
```
const(Clock) clock = cast(const Clock)o;
```

If clock is null, then o is either ```null``` or not derived from Clock. Otherwise o, such as AlarmClock will have access to only the Clock features of o.

FYI, a very nice idiom for D:

```d
if(auto clock = cast(const Clock)o) {
   // use clock in here as a `Clock` type
}
```

This leaves no chance to use clock as a `null` reference.

-Steve

Reply via email to