1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

A pack of fixes for compilation errors and warnings for all platforms

Add libdatatypes.so into debian packaging
This commit is contained in:
Roman Nozdrin
2020-11-18 13:44:27 +00:00
parent 31e0909552
commit aa44bca473
13 changed files with 76 additions and 23 deletions

View File

@ -18,25 +18,33 @@
#define UTILS_COMMON_CHECKS_H
#include <type_traits>
#include "mcs_int128.h"
namespace utils {
template <typename T>
typename std::enable_if<std::is_unsigned<T>::value, bool>::type is_nonnegative(T)
{ return true; };
typename std::enable_if<std::is_unsigned<T>::value ||
datatypes::is_uint128_t<T>::value,
bool>::type
is_nonnegative(T) { return true; };
template <typename T>
typename std::enable_if<std::is_signed<T>::value, bool>::type is_nonnegative(T v)
{ return v >= 0; };
typename std::enable_if<std::is_signed<T>::value ||
datatypes::is_int128_t<T>::value,
bool>::type
is_nonnegative(T v) { return v >= 0; };
template <typename T>
typename std::enable_if<std::is_unsigned<T>::value, bool>::type is_negative(T)
{ return false; };
typename std::enable_if<std::is_unsigned<T>::value ||
datatypes::is_uint128_t<T>::value,
bool>::type
is_negative(T) { return false; };
template <typename T>
typename std::enable_if<std::is_signed<T>::value, bool>::type is_negative(T v)
{ return v < 0; };
typename std::enable_if<std::is_signed<T>::value ||
datatypes::is_int128_t<T>::value,
bool>::type
is_negative(T v) { return v < 0; };
} // namespace utils