diff --git a/types/tagged.hpp b/types/tagged.hpp index 716003da..42d7c2d3 100644 --- a/types/tagged.hpp +++ b/types/tagged.hpp @@ -262,4 +262,18 @@ namespace cruft { ) || ... ); } + + template + bool operator!= (tagged const &lhs, tagged const &rhs) + { + if (lhs.tag () != rhs.tag ()) + return false; + + return ( + ( + lhs.template is () && + (lhs.template get () != rhs.template get ()) + ) || ... + ); + } }