123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- #ifndef CEREAL_MACROS_HPP_
- #define CEREAL_MACROS_HPP_
- #ifndef CEREAL_THREAD_SAFE
- #define CEREAL_THREAD_SAFE 0
- #endif
- #ifndef CEREAL_SIZE_TYPE
- #define CEREAL_SIZE_TYPE uint64_t
- #endif
- #ifndef CEREAL_SERIALIZE_FUNCTION_NAME
- #define CEREAL_SERIALIZE_FUNCTION_NAME serialize
- #endif
- #ifndef CEREAL_LOAD_FUNCTION_NAME
- #define CEREAL_LOAD_FUNCTION_NAME load
- #endif
- #ifndef CEREAL_SAVE_FUNCTION_NAME
- #define CEREAL_SAVE_FUNCTION_NAME save
- #endif
- #ifndef CEREAL_LOAD_MINIMAL_FUNCTION_NAME
- #define CEREAL_LOAD_MINIMAL_FUNCTION_NAME load_minimal
- #endif
- #ifndef CEREAL_SAVE_MINIMAL_FUNCTION_NAME
- #define CEREAL_SAVE_MINIMAL_FUNCTION_NAME save_minimal
- #endif
- #if !defined(CEREAL_HAS_NOEXCEPT)
- #if defined(__clang__)
- #if __has_feature(cxx_noexcept)
- #define CEREAL_HAS_NOEXCEPT
- #endif
- #else
- #if defined(__GXX_EXPERIMENTAL_CXX0X__) && __GNUC__ * 10 + __GNUC_MINOR__ >= 46 || \
- defined(_MSC_FULL_VER) && _MSC_FULL_VER >= 190023026
- #define CEREAL_HAS_NOEXCEPT
- #endif
- #endif
- #ifndef CEREAL_NOEXCEPT
- #ifdef CEREAL_HAS_NOEXCEPT
- #define CEREAL_NOEXCEPT noexcept
- #else
- #define CEREAL_NOEXCEPT
- #endif
- #endif
- #endif
- #if (__cplusplus >= 201703L || (defined(_MSVC_LANG) && _MSVC_LANG >= 201703L)) \
- && (!defined(__clang__) || __clang_major__ > 5)
- #define CEREAL_HAS_CPP17
- #endif
- #if __cplusplus >= 201402L
- #define CEREAL_HAS_CPP14
- #endif
- #if defined(_MSC_VER) && _MSC_VER < 1900
- #define CEREAL_ALIGNOF __alignof
- #else
- #define CEREAL_ALIGNOF alignof
- #endif
- #endif
|