memgraph/utils/total_ordering.hpp

26 lines
476 B
C++
Raw Normal View History

2015-11-21 20:57:15 +08:00
#pragma once
template <class Derived>
struct TotalOrdering
{
friend bool operator!=(const Derived& a, const Derived& b)
{
return !(a == b);
}
friend bool operator<=(const Derived& a, const Derived& b)
{
return a < b || a == b;
}
2015-11-21 20:57:15 +08:00
friend bool operator>(const Derived& a, const Derived& b)
{
return !(a <= b);
2015-11-21 20:57:15 +08:00
}
friend bool operator>=(const Derived& a, const Derived& b)
{
return !(a < b);
}
2015-11-21 20:57:15 +08:00
};