Fixed failing tests. refs #345

This commit is contained in:
Mathew Sutcliffe
2014-11-15 02:28:39 +00:00
parent ac9960d615
commit 8a3ba8bbed
5 changed files with 8 additions and 3 deletions

View File

@@ -86,10 +86,14 @@ namespace BlackMisc
struct Ops : private Private::EncapsulationBreaker
{
//! Equals operator
friend bool operator ==(const T &a, const T &b) { return Private::EncapsulationBreaker::toMetaTuple(a) == Private::EncapsulationBreaker::toMetaTuple(b); }
friend bool operator ==(const T &a, const T &b) { return Private::EncapsulationBreaker::toMetaTuple(a) == Private::EncapsulationBreaker::toMetaTuple(b) && baseEquals<typename T::base_type>(a, b); }
//! Not equals operator
friend bool operator !=(const T &a, const T &b) { return !(a == b); }
private:
template <class U> static bool baseEquals(const U &a, const U &b) { return a == b; }
template <class U> static bool baseEquals(const CValueObject &, const CValueObject &) { return true; }
};
};