Why no multiple-dispatch?
Aerolite via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Aug 24 18:23:10 PDT 2014
On Monday, 25 August 2014 at 00:42:41 UTC, Idan Arye wrote:
> Speaking of library solutions, I checked with my `castSwitch`
> PR and it managed to implement single-argument multi-dispatch:
>
> https://github.com/D-Programming-Language/phobos/pull/1266#issuecomment-53217374
>
> I'll try to get it to support multiple arguments(shouldn't be
> that hard) and then all we'll need is a simple wrapper to have
> our very own library implemented single dispatch.
>
> I'm thinking we'll want two versions - a regular templated
> function like in Vladimir's reply, and also a template mixin
> that can take a bunch of methods with the same name(or
> annotated with a UDA) and create a multi-method of them.
>
> These wrappers will be another PR, but they can be based on
> `castSwitch` for it's somewhat-optimized type-comparison
> implementation.
Damn, that is really nice! I was wondering when we'd see
something like this make its way into the standard library. :)
More information about the Digitalmars-d-learn
mailing list