28 #ifndef INCLUDED_MDDS_GLOBAL_HPP
29 #define INCLUDED_MDDS_GLOBAL_HPP
35 #include <type_traits>
47 #define MDDS_ASCII(literal) literal, sizeof(literal)-1
55 #define MDDS_N_ELEMENTS(name) sizeof(name)/sizeof(name[0])
58 #define MDDS_DEPRECATED __attribute__ ((deprecated))
59 #elif defined(_MSC_VER)
60 #define MDDS_DEPRECATED __declspec(deprecated)
62 #define MDDS_DEPRECATED
65 #ifndef MDDS_LOOP_UNROLLING
66 #define MDDS_LOOP_UNROLLING 1
69 #ifndef MDDS_USE_OPENMP
70 #define MDDS_USE_OPENMP 0
73 #if defined(__AVX__) || defined(__AVX2__)
87 virtual const char* what()
const throw()
120 using bool_constant = std::integral_constant<bool, B>;
122 template <
typename T>
128 template <
typename U>
static y_type test(
typename U::value_type);
129 template <
typename U>
static n_type test(...);
132 static constexpr
bool value =
sizeof(test<T>(0)) ==
sizeof(y_type);
135 template<
typename _T,
typename _IsConst>
138 template<
typename _T>
141 using type =
typename std::add_const<_T>::type;
144 template<
typename _T>
150 template<
typename _T,
bool _Const>
153 template<
typename _T,
typename _IsConst>
156 template<
typename _T>
159 using type =
typename _T::const_iterator;
162 template<
typename _T>
165 using type =
typename _T::iterator;
169 constexpr
bool invalid_static_int()
Definition: global.hpp:82
Definition: global.hpp:124
Definition: global.hpp:114
Definition: global.hpp:96
Definition: global.hpp:102
Definition: global.hpp:108
Definition: global.hpp:136
Definition: global.hpp:154