C++ 20 Concepts#

icubaby supplies several C++ 20 concepts when using a toolchain that supports them.

template<typename T>
concept is_transcoder#
#include <icubaby.hpp>

Defines the requirements of a type that provides the transcoder interface.

template<typename T>
concept unicode_char_type#
#include <icubaby.hpp>

Checks whether the argument is one of the unicode character types.

The unicode_char_type concept defines the requires of a type that matches one of the types that denote a Unicode encoding.

template<typename T>
concept unicode_input#
#include <icubaby.hpp>

Checks whether the argument is one of the unicode data source types.

The unicode_char_type concept defines the requires of a type that matches one of the types that denote a Unicode data source.