On Tuesday, 2 July 2013 at 21:45:57 UTC, bearophile wrote:
Roderick Gibson:

I should know the types at compile time, so I will be using it most likely, but reading the docs it looks like Algebraic is built on top of the same structure as Variant. Is there any difference in implementation?

Take a look at the Phobos source code, it's much faster than waiting for my answer. Algebraic is built on top of VariantN. Algebraic accepts only a limited number of types, while Variant doesn't have such limitation. So Algebraic is type safe.

And maybe Algebraic can ideally be implemented more efficiently than a Variant because to denote the contained type an enum suffices, instead of a TypeInfo.

Please take a look at VariantN if it contains the enum or a Typeinfo or something else.

Bye,
bearophile

Thanks, I'll do that. Thanks for the help, bearophile!

Reply via email to