7#include "../utility/utility.hpp"
8#include "../macros.hpp"
16hi_export_module(hikogui.i18n.iso_15924 : intf);
18hi_export
namespace hi {
inline namespace v1 {
33 hi_check_bounds(
number, 0, 1000);
34 _v = narrow_cast<uint16_t>(
number);
62 [[nodiscard]]
constexpr static iso_15924 inherited() noexcept
67 constexpr iso_15924(std::in_place_t, uint16_t v) noexcept : _v(v)
69 hi_axiom_bounds(_v, 0, 1000);
72 [[nodiscard]]
constexpr uint16_t
const& intrinsic() const noexcept
77 [[nodiscard]]
constexpr uint16_t& intrinsic() noexcept
82 [[nodiscard]]
constexpr bool empty() const noexcept
87 constexpr explicit operator bool() const noexcept
94 [[nodiscard]]
constexpr uint16_t
number() const noexcept
107 [[nodiscard]] constexpr friend
std::
string to_string(
iso_15924 const &rhs) noexcept
116 [[nodiscard]] constexpr friend
bool operator==(
iso_15924 const& lhs,
iso_15924 const& rhs) noexcept = default;
117 [[nodiscard]] constexpr friend auto operator<=>(
iso_15924 const& lhs,
iso_15924 const& rhs) noexcept = default;
127 return lhs.empty() or lhs == rhs;
The HikoGUI namespace.
Definition array_generic.hpp:20
DOXYGEN BUG.
Definition algorithm_misc.hpp:20
ISO-15924 script code.
Definition iso_15924_intf.hpp:23
constexpr bool left_to_right() const noexcept
Is this script written left-to-right.
Definition iso_15924_impl.hpp:349
static constexpr iso_15924 common() noexcept
Common script is used for characters that are common in different scripts.
Definition iso_15924_intf.hpp:50
constexpr uint16_t number() const noexcept
Get the iso-15924 numeric value.
Definition iso_15924_intf.hpp:94
constexpr std::string code4_open_type() const noexcept
Get the 4-letter code used by open-type.
Definition iso_15924_impl.hpp:343
static constexpr iso_15924 wildcard() noexcept
When any script is allowed.
Definition iso_15924_intf.hpp:41
constexpr friend bool matches(iso_15924 const &lhs, iso_15924 const &rhs) noexcept
Check if rhs matches with lhs.
Definition iso_15924_intf.hpp:125
static constexpr iso_15924 uncoded() noexcept
Used when the script was not encoded with the text.
Definition iso_15924_intf.hpp:57
constexpr std::string code4() const noexcept
Get the iso-15924 4-letter code.
Definition iso_15924_impl.hpp:337