3#include "typeChecks.hpp"
9static typename std::enable_if<types::equalExists<T>::value,
bool>::type equals(
const T &arg1,
const T &arg2)
noexcept {
14static typename std::enable_if<!types::equalExists<T>::value,
bool>::type equals(
const T &arg1,
const T &arg2)
noexcept {
15 return !std::memcmp(&arg1, &arg2,
sizeof(T));
19static typename std::enable_if<types::greaterExists<T>::value,
bool>::type greater(
const T &arg1,
const T &arg2)
noexcept {
24static typename std::enable_if<!types::greaterExists<T>::value,
bool>::type greater(
const T &arg1,
const T &arg2)
noexcept {
25 return std::memcmp(&arg1, &arg2,
sizeof(T)) > 0;
29static typename std::enable_if<types::lesserExists<T>::value,
bool>::type lesser(
const T &arg1,
const T &arg2)
noexcept {
34static typename std::enable_if<!types::lesserExists<T>::value,
bool>::type lesser(
const T &arg1,
const T &arg2)
noexcept {
35 return std::memcmp(&arg1, &arg2,
sizeof(T)) < 0;