On 4/3/19 2:58 PM, Andrzej Krzemienski via Boost wrote:
So - simple proposal. Require that sum types have operator= deleted.
Robert Ramey
It is an interesting observation. I am not sure about the consequences, though.
Right - hence the motivation for my post. It is not only assignment. I ti s also swap. STL algorithms, such
as sort() use assignment and swap inside. The question is: should std::sort on variants work?
Just the kind of example I was hoping to get. This would raise the question: Under what circumstance would one want to do this? Of course definition of a comparison function would be non-trivial. Or maybe this should be the red flag which says "you don't really want to do that".
Or because of the special properties of a variant some STL algorithms should break, maybe storage in containers should be prohibitted?
For sure, the assignment of such containers would be banned. interestingly I could also envision storage in containers without sorting being supported. But then as far as I know, all containers require that the member type be assignable? So by deleting the assignment operator - these would already be prohibited with a concept check.
Regards, &rzej;
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost