5 #ifndef V8_CHAR_PREDICATES_H_ 6 #define V8_CHAR_PREDICATES_H_ 8 #include "src/globals.h" 17 inline constexpr
int AsciiAlphaToLower(uc32 c);
18 inline constexpr
bool IsCarriageReturn(uc32 c);
19 inline constexpr
bool IsLineFeed(uc32 c);
20 inline constexpr
bool IsAsciiIdentifier(uc32 c);
21 inline constexpr
bool IsAlphaNumeric(uc32 c);
22 inline constexpr
bool IsDecimalDigit(uc32 c);
23 inline constexpr
bool IsHexDigit(uc32 c);
24 inline constexpr
bool IsOctalDigit(uc32 c);
25 inline constexpr
bool IsBinaryDigit(uc32 c);
26 inline constexpr
bool IsRegExpWord(uc32 c);
27 inline constexpr
bool IsRegExpNewline(uc32 c);
34 inline bool IsIdentifierStart(uc32 c);
35 #ifdef V8_INTL_SUPPORT 36 V8_EXPORT_PRIVATE
bool IsIdentifierStartSlow(uc32 c);
38 inline bool IsIdentifierStartSlow(uc32 c) {
40 return (c <= 0xFFFF) ? unibrow::ID_Start::Is(c) : false;
49 inline bool IsIdentifierPart(uc32 c);
50 #ifdef V8_INTL_SUPPORT 51 V8_EXPORT_PRIVATE
bool IsIdentifierPartSlow(uc32 c);
53 inline bool IsIdentifierPartSlow(uc32 c) {
56 return unibrow::ID_Start::Is(c) || unibrow::ID_Continue::Is(c);
65 inline bool IsWhiteSpace(uc32 c);
66 #ifdef V8_INTL_SUPPORT 67 V8_EXPORT_PRIVATE
bool IsWhiteSpaceSlow(uc32 c);
69 inline bool IsWhiteSpaceSlow(uc32 c) {
return unibrow::WhiteSpace::Is(c); }
75 inline bool IsWhiteSpaceOrLineTerminator(uc32 c);
76 inline bool IsWhiteSpaceOrLineTerminatorSlow(uc32 c) {
77 return IsWhiteSpaceSlow(c) || unibrow::IsLineTerminator(c);
80 inline bool IsLineTerminatorSequence(uc32 c, uc32 next);
85 #endif // V8_CHAR_PREDICATES_H_