August 10, 2013 Re: Another use-case for multiple alias this | ||||
---|---|---|---|---|
| ||||
On Monday, August 05, 2013 22:19:49 Andrej Mitrovic wrote:
> And in fact multiple alias this is a feature we've practically all agreed on, but what's holding it from being finally implemented?
I would think that the main problem is that someone needs to implement it, but there's likely a number of issues relating to how it interacts with opDispatch, precendence between the various aliases, etc., all of which will need to be ironed out.
I'd _really_ like to have it though, because it'll allow me to fix a design flaw in std.datetime. For some reason, I made it so that SimpleTimeZone took its UTC offset as a naked integer value and provides it as a naked integer value whereas, it really should be a Duration. I've fixed the constructor (or at least provided the correct one in addition to the bad one), but I can't fix the utcOffset property without breaking code. If I had multiple alias this-es, then I could create a Voldemort type which is aliased to both int and Duration, and then deprecate the alias to int and thereby provide a migration path away from the current bad design. Without multiple alias this-es, I don't know how to fix the problem without breaking code - not without doing something like renaming the property, which would make it inconsistent with the rest of the API. So, I'd _love_ to have multiple alias this-es implemented.
Maybe it's on Kenji's TODO list? IIRC, he's done plenty of other work related to opDispatch and alias this in the past several months, so he may be paving the way for it.
- Jonathan M Davis
|
Copyright © 1999-2021 by the D Language Foundation