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?