16 (
utf8 >= 0x200D &&
utf8 <= 0x200F) ||
21 static constexpr std::array<SkUnichar, 21> whitespaces {
47 return std::find(whitespaces.begin(), whitespaces.end(), unichar) != whitespaces.end();
51 static constexpr std::array<SkUnichar, 25> spaces {
77 return std::find(spaces.begin(), spaces.end(), unichar) != spaces.end();
85 return utf8 ==
'\n' ||
utf8 == u
'\u2028';
104 SkDEBUGFAIL(
"isEmojiModifierBase Not implemented");
109 SkDEBUGFAIL(
"isRegionalIndicator Not implemented");
114 static constexpr std::array<std::pair<SkUnichar, SkUnichar>, 8> ranges {{
124 for (
auto range : ranges) {
125 if (range.first <= unichar && range.second > unichar) {
#define SkDEBUGFAIL(message)
int find(T *array, int N, T item)
bool isRegionalIndicator(SkUnichar utf8) override
bool isTabulation(SkUnichar utf8) override
bool isEmojiModifierBase(SkUnichar utf8) override
bool isIdeographic(SkUnichar utf8) override
bool isEmojiModifier(SkUnichar utf8) override
bool isEmoji(SkUnichar utf8) override
bool isSpace(SkUnichar utf8) override
bool isHardBreak(SkUnichar utf8) override
bool isControl(SkUnichar utf8) override
bool isWhitespace(SkUnichar utf8) override
bool isEmojiComponent(SkUnichar utf8) override