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