1 | #![unstable (feature = "unicode_internals" , issue = "none" )] |
2 | #![allow (missing_docs)] |
3 | |
4 | pub(crate) mod printable; |
5 | mod unicode_data; |
6 | |
7 | /// The version of [Unicode](https://www.unicode.org/) that the Unicode parts of |
8 | /// `char` and `str` methods are based on. |
9 | /// |
10 | /// New versions of Unicode are released regularly and subsequently all methods |
11 | /// in the standard library depending on Unicode are updated. Therefore the |
12 | /// behavior of some `char` and `str` methods and the value of this constant |
13 | /// changes over time. This is *not* considered to be a breaking change. |
14 | /// |
15 | /// The version numbering scheme is explained in |
16 | /// [Unicode 11.0 or later, Section 3.1 Versions of the Unicode Standard](https://www.unicode.org/versions/Unicode11.0.0/ch03.pdf#page=4). |
17 | #[stable (feature = "unicode_version" , since = "1.45.0" )] |
18 | pub const UNICODE_VERSION: (u8, u8, u8) = unicode_data::UNICODE_VERSION; |
19 | |
20 | // For use in alloc, not re-exported in std. |
21 | pub use unicode_data::{ |
22 | case_ignorable::lookup as Case_Ignorable, cased::lookup as Cased, conversions, |
23 | }; |
24 | |
25 | pub(crate) use unicode_data::alphabetic::lookup as Alphabetic; |
26 | pub(crate) use unicode_data::cc::lookup as Cc; |
27 | pub(crate) use unicode_data::grapheme_extend::lookup as Grapheme_Extend; |
28 | pub(crate) use unicode_data::lowercase::lookup as Lowercase; |
29 | pub(crate) use unicode_data::n::lookup as N; |
30 | pub(crate) use unicode_data::uppercase::lookup as Uppercase; |
31 | pub(crate) use unicode_data::white_space::lookup as White_Space; |
32 | |