OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_CHAR_PREDICATES_H_ | 5 #ifndef V8_CHAR_PREDICATES_H_ |
6 #define V8_CHAR_PREDICATES_H_ | 6 #define V8_CHAR_PREDICATES_H_ |
7 | 7 |
8 #include "src/unicode.h" | 8 #include "src/unicode.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
11 namespace internal { | 11 namespace internal { |
12 | 12 |
13 // Unicode character predicates as defined by ECMA-262, 3rd, | 13 // Unicode character predicates as defined by ECMA-262, 3rd, |
14 // used for lexical analysis. | 14 // used for lexical analysis. |
15 | 15 |
16 inline bool IsCarriageReturn(uc32 c); | 16 inline bool IsCarriageReturn(uc32 c); |
17 inline bool IsLineFeed(uc32 c); | 17 inline bool IsLineFeed(uc32 c); |
| 18 inline bool IsAsciiIdentifier(uc32 c); |
| 19 inline bool IsAlphaNumeric(uc32 c); |
18 inline bool IsDecimalDigit(uc32 c); | 20 inline bool IsDecimalDigit(uc32 c); |
19 inline bool IsHexDigit(uc32 c); | 21 inline bool IsHexDigit(uc32 c); |
20 inline bool IsOctalDigit(uc32 c); | 22 inline bool IsOctalDigit(uc32 c); |
21 inline bool IsBinaryDigit(uc32 c); | 23 inline bool IsBinaryDigit(uc32 c); |
22 inline bool IsRegExpWord(uc32 c); | 24 inline bool IsRegExpWord(uc32 c); |
23 inline bool IsRegExpNewline(uc32 c); | 25 inline bool IsRegExpNewline(uc32 c); |
24 | 26 |
25 | 27 |
26 struct SupplementaryPlanes { | 28 struct SupplementaryPlanes { |
27 static bool IsIDStart(uc32 c); | 29 static bool IsIDStart(uc32 c); |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 // This consists of \000a, \000d, \u2028, and \u2029. | 74 // This consists of \000a, \000d, \u2028, and \u2029. |
73 struct WhiteSpaceOrLineTerminator { | 75 struct WhiteSpaceOrLineTerminator { |
74 static inline bool Is(uc32 c) { | 76 static inline bool Is(uc32 c) { |
75 return WhiteSpace::Is(c) || unibrow::LineTerminator::Is(c); | 77 return WhiteSpace::Is(c) || unibrow::LineTerminator::Is(c); |
76 } | 78 } |
77 }; | 79 }; |
78 | 80 |
79 } } // namespace v8::internal | 81 } } // namespace v8::internal |
80 | 82 |
81 #endif // V8_CHAR_PREDICATES_H_ | 83 #endif // V8_CHAR_PREDICATES_H_ |
OLD | NEW |