14 #ifndef OR_TOOLS_BASE_MACROS_H_
15 #define OR_TOOLS_BASE_MACROS_H_
19 #define COMPILE_ASSERT(x, msg)
29 #define DISALLOW_COPY_AND_ASSIGN(TypeName) \
30 TypeName(const TypeName&) = delete; \
31 TypeName& operator=(const TypeName&) = delete
33 template <
typename T,
size_t N>
36 template <
typename T,
size_t N>
39 #define arraysize(array) (sizeof(ArraySizeHelper(array)))
char(& ArraySizeHelper(T(&array)[N]))[N]