OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 library characters; | 5 library characters; |
6 | 6 |
7 const int $EOF = 0; | 7 const int $EOF = 0; |
8 const int $STX = 2; | 8 const int $STX = 2; |
9 const int $BS = 8; | 9 const int $BS = 8; |
10 const int $TAB = 9; | 10 const int $TAB = 9; |
(...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
126 assert(isHexDigit(hexDigit)); | 126 assert(isHexDigit(hexDigit)); |
127 // hexDigit is one of '0'..'9', 'A'..'F' and 'a'..'f'. | 127 // hexDigit is one of '0'..'9', 'A'..'F' and 'a'..'f'. |
128 if (hexDigit <= $9) return hexDigit - $0; | 128 if (hexDigit <= $9) return hexDigit - $0; |
129 return (hexDigit | ($a ^ $A)) - ($a - 10); | 129 return (hexDigit | ($a ^ $A)) - ($a - 10); |
130 } | 130 } |
131 | 131 |
132 bool isUnicodeScalarValue(int value) { | 132 bool isUnicodeScalarValue(int value) { |
133 return value < $FIRST_SURROGATE || | 133 return value < $FIRST_SURROGATE || |
134 (value > $LAST_SURROGATE && value <= $LAST_CODE_POINT); | 134 (value > $LAST_SURROGATE && value <= $LAST_CODE_POINT); |
135 } | 135 } |
| 136 |
| 137 bool isUtf16LeadSurrogate(int value) { |
| 138 return value >= 0xd800 && value <= 0xdbff; |
| 139 } |
| 140 |
| 141 bool isUtf16TrailSurrogate(int value) { |
| 142 return value >= 0xdc00 && value <= 0xdfff; |
| 143 } |
OLD | NEW |