15 #ifndef AR_MAX_CTS_SIZE
16 # define AR_MAX_CTS_SIZE 128
19 #ifndef AR_LONG_PREFIX
20 # define AR_LONG_PREFIX "--"
23 #ifndef AR_SHORT_PREFIX
24 # define AR_SHORT_PREFIX "-"
28 # define AR_ALLOCATOR std::allocator
31 #ifndef AR_UTF8_TRAILING_WINDOW_SIZE
32 # define AR_UTF8_TRAILING_WINDOW_SIZE 16
35 #ifndef AR_DISABLE_CPP20_STRINGS
36 # define AR_DISABLE_CPP20_STRINGS false
39 #include "arg_router/utility/utf8.hpp"
52 constexpr
auto long_prefix = std::string_view{AR_LONG_PREFIX};
63 "Long prefix must be longer or the same as short prefix");
72 #if (__cplusplus >= 202002L) && !AR_DISABLE_CPP20_STRINGS
73 # define AR_ENABLE_CPP20_STRINGS
79 #if (!defined(__clang__) && defined(_MSC_VER) && (_MSC_VER >= 1936))
80 # define MSVC_1936_WORKAROUND 1
std::allocator< T > allocator
constexpr auto short_prefix
constexpr auto long_prefix
constexpr std::size_t count(std::string_view str) noexcept