Make enum auto castable
Laeeth Isharc via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sun Jun 4 15:59:47 PDT 2017
On Sunday, 4 June 2017 at 22:52:55 UTC, Mike B Johnson wrote:
> I am dealing with some COM stuff and some functions use
> VARIANT, which can hold an enum.
>
> Instead of having to manually convert the enum(and for that
> matter, other things) to VARIANT, is it possible to have them
> automatically converted?
>
> This is because an enum is always convertible to a VARIANT but
> not the other way around. So, when a enum is passed to a
> function accepting a VARIANT, it should just work. Overloading
> is not an option.
Not sure if this breaks your requirement but you could generate
overloads or rather templated version of your variant accepting
function with a mixin that introspects on functions with a
certain uda in the module. See excel-d for an example.
More information about the Digitalmars-d-learn
mailing list