xieite::is_ch<>

Defined in header <xieite/trait/is_ch.hpp>

Specifies that a type is a [character type].


Declaration

template<typename T>
concept is_ch = xieite::is_wide_ch<T> || xieite::is_same_any<xieite::rm_cv<T>, char, char8_t>;


Example

static_assert(xieite::is_ch<char>);
static_assert(xieite::is_ch<wchar_t>);
static_assert(xieite::is_ch<char32_t>);
static_assert(!xieite::is_ch<unsigned char>);
static_assert(!xieite::is_ch<int>);
static_assert(!xieite::is_ch<void*>);
[View in Compiler Explorer]