devela/text/grapheme/mod.rs
1// devela::text::grapheme
2//
3//! Extended Grapheme Clusters.
4//!
5//! The text between extended grapheme cluster boundaries as
6//! specified by [UAX #29, "Unicode Text Segmentation"][0].
7//!
8//! [0]: https://www.unicode.org/reports/tr29/
9//
10
11mod r#trait; // Grapheme
12
13#[cfg(feature = "_str_nonul")]
14mod nonul;
15#[cfg(feature = "_str_u8")]
16mod string_u8;
17#[cfg(feature = "alloc")]
18mod string;
19
20crate::items! { // structural access: _mods, _all
21 #[allow(unused)]
22 pub use _mods::*;
23
24 mod _mods {
25 pub use super::r#trait::*;
26
27 #[cfg(feature = "_str_nonul")]
28 pub use super::nonul::*;
29 #[cfg(feature = "_str_u8")]
30 pub use super::string_u8::*;
31 #[cfg(feature = "alloc")]
32 pub use super::string::*;
33 }
34 pub(super) mod _all {
35 #[doc(inline)]
36 pub use super::_mods::*;
37 }
38}