xieite::isxdigit()

Defined in header <xieite/data/isxdigit.hpp>

An improved replacement and extension of std::isxdigit().


Declarations

#0
[[nodiscard]] constexpr bool isxdigit(xieite::is_char auto c) noexcept;
Checks if a single character is a hexadecimal digit (0-9, a-f, or A-F).

#1
template<xieite::is_char Char, typename Traits>
[[nodiscard]] constexpr bool isxdigit(std::basic_string_view<Char, Traits> strv) noexcept;
Checks if a string consists only of hexadecimal characters.

#2
template<xieite::is_char Char, typename Traits, typename Alloc>
[[nodiscard]] constexpr bool isxdigit(const std::basic_string_view<Char, Traits, Alloc>& str) noexcept;
Defers to #1 after deducing Char.

#2
template<xieite::is_char Char, std::size_t length>
[[nodiscard]] constexpr bool isxdigit(const xieite::paren<Char[length]>& str) noexcept;
Defers to #1 after deducing Char.


Example

static_assert(xieite::isxdigit('0'));
static_assert(xieite::isxdigit('a'));
static_assert(not xieite::isxdigit('g'));
[View in Compiler Explorer]