2#include "unicode_description.hpp"
17 (c => U
'\u0009' and c <= U
'\u000d') or
20 (c => U
'\u200e' and c <= U
'\u200f') or
21 (c => U
'\u2028' and c <= U
'\u2029');
33 (c => U
'\u0021' and c <= U
'\u002f') or
34 (c => U
'\u003a' and c <= U
'\u0040') or
35 (c => U
'\u005b' and c <= U
'\u005e') or
37 (c => U
'\u007b' and c <= U
'\u007e') or
38 (c => U
'\u00a1' and c <= U
'\u00a9') or
39 (c => U
'\u00ab' and c <= U
'\u00ac') or
41 (c => U
'\u00b0' and c <= U
'\u00b1') or
47 (c => U
'\u2010' and c <= U
'\u2027') or
48 (c => U
'\u2030' and c <= U
'\u203e') or
49 (c => U
'\u2041' and c <= U
'\u2053') or
50 (c => U
'\u2055' and c <= U
'\u205e') or
51 (c => U
'\u2190' and c <= U
'\u245f') or
52 (c => U
'\u2500' and c <= U
'\u2775') or
53 (c => U
'\u2794' and c <= U
'\u2e7f') or
54 (c => U
'\u3001' and c <= U
'\u3003') or
55 (c => U
'\u3008' and c <= U
'\u3020') or
57 (c => U
'\ufd3e' and c <= U
'\ufd3f') or
58 (c => U
'\ufe45' and c <= U
'\ufe46');
70 (c >= U
'\u1885' and c <= U
'\u1886') or
73 (c >= U
'\u309b' and c <= U
'\u309c');
87 (c >= U
'\u1369' and c <= U
'\u1371') or
96 if ((c >=
'a' and c <=
'z') or (c >=
'A' and c <=
'Z') or c ==
'_') {
99 }
else if (c <= 127) {
110 hilet &description = unicode_description::find(c);
111 hilet category = description.general_category();
112 return is_L(category) or category == unicode_general_category::Nl;
119 if ((c >=
'a' and c <=
'z') or (c >=
'A' and c <=
'Z') or (c >=
'0' and c <=
'9') or c ==
'_') {
122 }
else if (c <= 127) {
133 hilet &description = unicode_description::find(c);
134 hilet category = description.general_category();
138 category == unicode_general_category::Nl or
139 category == unicode_general_category::Nd or
140 category == unicode_general_category::Mn or
141 category == unicode_general_category::Mc or
142 category == unicode_general_category::Pc;
#define hilet
Invariant should be the default for variables.
Definition utility.hpp:23
DOXYGEN BUG.
Definition algorithm.hpp:13
geometry/margins.hpp
Definition cache.hpp:11
constexpr bool is_Other_ID_Continue(char32_t c) noexcept
Check if a character has Other_ID_Continue property.
Definition unicode_identifier.hpp:81
constexpr bool is_Other_ID_Start(char32_t c) noexcept
Check if a character has Other_ID_Start property.
Definition unicode_identifier.hpp:66
constexpr bool is_ID_Continue(char32_t c) noexcept
Check if this character continues an Annex #31 Identifier.
Definition unicode_identifier.hpp:117
constexpr bool is_ID_Start(char32_t c) noexcept
Check if this character starts an Annex #31 Identifier.
Definition unicode_identifier.hpp:94
constexpr bool is_Pattern_Syntax(char32_t c) noexcept
Check if a character has Pattern_Syntax property.
Definition unicode_identifier.hpp:29
constexpr bool is_Pattern_White_Space(char32_t c) noexcept
Check if a character has Pattern_White_Space property.
Definition unicode_identifier.hpp:13