On Friday, 18 September 2015 at 15:40:09 UTC, Jonathan M Davis wrote:

Regardless, VariantN couldn't have its opEquals explicitly marked with pure, because it's a template and needs to work with types that don't have a pure opEquals. But it _should_ be able to be inferred as pure if the types in question have pure opEquals. However, the situation with Object continues to haunt us.

- Jonathan M Davis

I'm currently only in need of a VariantN of value-types and string.

Therefore I don't understand why I should need Object.opEquals especially not in the case I gave above where Variant only contains a `long` and a `double`.

Is there an easy way to modify `VariantN` to not need `Object.opEquals` when `VariantN` contains only value types and strings?

Reply via email to