Line data Source code
1 : /* Generated by make_unicode.py DO NOT MODIFY */
2 : /* Unicode version: 9.0.0 */
3 : #ifndef V8_JSREGEXPCHARACTERS_INL_H_
4 : #define V8_JSREGEXPCHARACTERS_INL_H_
5 :
6 : namespace js {
7 :
8 : namespace irregexp {
9 :
10 : static inline bool
11 15 : RangeContainsLatin1Equivalents(CharacterRange range, bool unicode)
12 : {
13 15 : if (unicode) {
14 : // "LATIN SMALL LETTER LONG S" case folds to "LATIN SMALL LETTER S".
15 0 : if (range.Contains(0x017F))
16 0 : return true;
17 : // "LATIN CAPITAL LETTER SHARP S" case folds to "LATIN SMALL LETTER SHARP S".
18 0 : if (range.Contains(0x1E9E))
19 0 : return true;
20 : // "KELVIN SIGN" case folds to "LATIN SMALL LETTER K".
21 0 : if (range.Contains(0x212A))
22 0 : return true;
23 : // "ANGSTROM SIGN" case folds to "LATIN SMALL LETTER A WITH RING ABOVE".
24 0 : if (range.Contains(0x212B))
25 0 : return true;
26 : }
27 :
28 : // "GREEK CAPITAL LETTER MU" case maps to "MICRO SIGN".
29 : // "GREEK SMALL LETTER MU" case maps to "MICRO SIGN".
30 15 : if (range.Contains(0x039C) || range.Contains(0x03BC))
31 0 : return true;
32 : // "LATIN CAPITAL LETTER Y WITH DIAERESIS" case maps to "LATIN SMALL LETTER Y WITH DIAERESIS".
33 15 : if (range.Contains(0x0178))
34 0 : return true;
35 15 : return false;
36 : }
37 :
38 : } } // namespace js::irregexp
39 :
40 : #endif // V8_JSREGEXPCHARACTERS_INL_H_
|