diff options
Diffstat (limited to 'include/cru/common/Base.hpp')
-rw-r--r-- | include/cru/common/Base.hpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/include/cru/common/Base.hpp b/include/cru/common/Base.hpp index 5ed1e763..2f76385e 100644 --- a/include/cru/common/Base.hpp +++ b/include/cru/common/Base.hpp @@ -42,6 +42,31 @@ classname() = default; \ ~classname() override = default; +#define CRU_DEFINE_COMPARE_OPERATORS(classname) \ + inline bool operator==(const classname& left, const classname& right) { \ + return left.Compare(right) == 0; \ + } \ + \ + inline bool operator!=(const classname& left, const classname& right) { \ + return left.Compare(right) != 0; \ + } \ + \ + inline bool operator<(const classname& left, const classname& right) { \ + return left.Compare(right) < 0; \ + } \ + \ + inline bool operator<=(const classname& left, const classname& right) { \ + return left.Compare(right) <= 0; \ + } \ + \ + inline bool operator>(const classname& left, const classname& right) { \ + return left.Compare(right) > 0; \ + } \ + \ + inline bool operator>=(const classname& left, const classname& right) { \ + return left.Compare(right) >= 0; \ + } + namespace cru { class CRU_BASE_API Object { public: |