26 #include <xlnt/utils/environment.hpp> 30 #define XLNT_HAS_INCLUDE(HEADER_NAME) __has_include(HEADER_NAME) 32 #define XLNT_HAS_INCLUDE(HEADER_NAME) 0 37 #if XLNT_HAS_INCLUDE(<version>) 55 #define XLNT_HAS_FEATURE(feature) (1/XLNT_DETAIL_FEATURE_##feature == 1) 60 #if defined(__cpp_lib_to_chars) || XLNT_HAS_CPP_VERSION(XLNT_CPP_17) 61 #define XLNT_DETAIL_FEATURE_TO_CHARS 1 63 #define XLNT_DETAIL_FEATURE_TO_CHARS -1 66 #if defined(__cpp_lib_string_view) || XLNT_HAS_CPP_VERSION(XLNT_CPP_17) 67 #define XLNT_DETAIL_FEATURE_STRING_VIEW 1 69 #define XLNT_DETAIL_FEATURE_STRING_VIEW -1 72 #if defined(__cpp_lib_filesystem) || XLNT_HAS_CPP_VERSION(XLNT_CPP_17) 73 #define XLNT_DETAIL_FEATURE_FILESYSTEM 1 75 #define XLNT_DETAIL_FEATURE_FILESYSTEM -1 78 #if XLNT_HAS_FEATURE(STRING_VIEW) && defined(__cpp_lib_char8_t) 79 #define XLNT_DETAIL_FEATURE_U8_STRING_VIEW 1 81 #define XLNT_DETAIL_FEATURE_U8_STRING_VIEW -1