18 #define OPERATOR_METHODS_INLINE(_Ty) \ 19 auto operator!=(const _Ty &obj) const -> bool \ 21 return !operator==(obj); \ 23 auto operator<=(const _Ty &obj) const -> bool \ 25 return operator<(obj) || operator==(obj); \ 27 auto operator>(const _Ty &obj) const -> bool \ 29 return !operator<=(obj); \ 31 auto operator>=(const _Ty &obj) const -> bool \ 33 return !operator<(obj); \ 51 #define OPERATOR_METHODS_HEADER(_Ty) \ 52 auto operator!=(const _Ty &obj) const -> bool; \ 53 auto operator<=(const _Ty &obj) const -> bool; \ 54 auto operator>(const _Ty &obj) const -> bool; \ 55 auto operator>=(const _Ty &obj) const -> bool; 75 #define OPERATOR_METHODS_BODY(_Class, _Ty) \ 76 auto _Class::operator!=(const _Ty &obj) const -> bool \ 78 return !operator==(obj); \ 80 auto _Class::operator<=(const _Ty &obj) const -> bool \ 82 return operator<(obj) || operator==(obj); \ 84 auto _Class::operator>(const _Ty &obj) const -> bool \ 86 return !operator<=(obj); \ 88 auto _Class::operator>=(const _Ty &obj) const -> bool \ 90 return !operator<(obj); \ 121 template <
typename T>
155 auto operator<=(const IOperator<T> &obj)
const ->
bool Interface for comparision operator.
virtual auto operator<(const IOperator &) const -> bool=0
Less.
virtual auto operator==(const IOperator &) const -> bool=0
Equal.
IOperator()
Default Constructor.