14 #define QX_ALL_CHAR_TYPES char, wchar_t
16 #if !defined(QX_CONF_USE_CHAR) && !defined(QX_CONF_USE_WCHAR)
17 #define QX_CONF_USE_WCHAR
23 using all_char_types = std::tuple<QX_ALL_CHAR_TYPES>;
28 #ifdef QX_CONF_USE_CHAR
30 #define QX_CHAR_TYPE char
31 #define _QX_TEXT(quote) quote
33 #elif defined(QX_CONF_USE_WCHAR)
35 #define QX_CHAR_TYPE wchar_t
36 #define _QX_TEXT(quote) L##quote
38 #if !defined(QX_CONF_UNICODE_MACRO)
39 #define QX_CONF_UNICODE_MACRO 1
42 #if QX_CONF_UNICODE_MACRO && QX_WIN
48 #define QX_TEXT(quote) _QX_TEXT(quote)
53 using char_type = QX_CHAR_TYPE;
54 using forbidden_char_types = tuple::remove_t<details::all_char_types, std::tuple<char_type>>;
Contains utils for working with std::tuple.