Struct icu_normalizer::ComposingNormalizer
source · pub struct ComposingNormalizer {
pub(crate) decomposing_normalizer: DecomposingNormalizer,
pub(crate) canonical_compositions: DataPayload<CanonicalCompositionsV1Marker>,
}
Expand description
A normalizer for performing composing normalization.
Fields§
§decomposing_normalizer: DecomposingNormalizer
§canonical_compositions: DataPayload<CanonicalCompositionsV1Marker>
Implementations§
source§impl ComposingNormalizer
impl ComposingNormalizer
sourcepub const fn new_nfc() -> Self
pub const fn new_nfc() -> Self
NFC constructor using compiled data.
✨ Enabled with the compiled_data
Cargo feature.
sourcepub fn try_new_nfc_with_any_provider(
provider: &(impl AnyProvider + ?Sized),
) -> Result<Self, NormalizerError>
pub fn try_new_nfc_with_any_provider( provider: &(impl AnyProvider + ?Sized), ) -> Result<Self, NormalizerError>
A version of [Self :: new_nfc
] that uses custom data provided by an AnyProvider
.
sourcepub fn try_new_nfc_unstable<D>(provider: &D) -> Result<Self, NormalizerError>
pub fn try_new_nfc_unstable<D>(provider: &D) -> Result<Self, NormalizerError>
A version of Self::new_nfc
that uses custom data provided by a DataProvider
.
sourcepub const fn new_nfkc() -> Self
pub const fn new_nfkc() -> Self
NFKC constructor using compiled data.
✨ Enabled with the compiled_data
Cargo feature.
sourcepub fn try_new_nfkc_with_any_provider(
provider: &(impl AnyProvider + ?Sized),
) -> Result<Self, NormalizerError>
pub fn try_new_nfkc_with_any_provider( provider: &(impl AnyProvider + ?Sized), ) -> Result<Self, NormalizerError>
A version of [Self :: new_nfkc
] that uses custom data provided by an AnyProvider
.
sourcepub fn try_new_nfkc_unstable<D>(provider: &D) -> Result<Self, NormalizerError>
pub fn try_new_nfkc_unstable<D>(provider: &D) -> Result<Self, NormalizerError>
A version of Self::new_nfkc
that uses custom data provided by a DataProvider
.
sourcepub(crate) const fn new_uts46() -> Self
pub(crate) const fn new_uts46() -> Self
This is a special building block normalization for IDNA that implements parts of the Map step and the following Normalize step.
Warning: In this normalization, U+0345 COMBINING GREEK YPOGEGRAMMENI exhibits a behavior that no character in Unicode exhibits in NFD, NFKD, NFC, or NFKC: Case folding turns U+0345 from a reordered character into a non-reordered character before reordering happens. Therefore, the output of this normalization may differ for different inputs that are canonically equivalents with each other if they differ by how U+0345 is ordered relative to other reorderable characters.
sourcepub(crate) fn try_new_uts46_unstable<D>(
provider: &D,
) -> Result<Self, NormalizerError>
pub(crate) fn try_new_uts46_unstable<D>( provider: &D, ) -> Result<Self, NormalizerError>
A version of Self::new_uts46
that uses custom data provided by a DataProvider
.
sourcepub fn normalize_iter<I: Iterator<Item = char>>(
&self,
iter: I,
) -> Composition<'_, I> ⓘ
pub fn normalize_iter<I: Iterator<Item = char>>( &self, iter: I, ) -> Composition<'_, I> ⓘ
Wraps a delegate iterator into a composing iterator adapter by using the data already held by this normalizer.
pub(crate) fn normalize_iter_private<I: Iterator<Item = char>>( &self, iter: I, ignorable_behavior: IgnorableBehavior, ) -> Composition<'_, I> ⓘ
sourcepub fn is_normalized(&self, text: &str) -> bool
pub fn is_normalized(&self, text: &str) -> bool
Check whether a string slice is normalized.
sourcepub fn normalize_utf16(&self, text: &[u16]) -> Vec<u16>
pub fn normalize_utf16(&self, text: &[u16]) -> Vec<u16>
Normalize a slice of potentially-invalid UTF-16 into a Vec
.
Unpaired surrogates are mapped to the REPLACEMENT CHARACTER before normalizing.
sourcepub fn is_normalized_utf16(&self, text: &[u16]) -> bool
pub fn is_normalized_utf16(&self, text: &[u16]) -> bool
Checks whether a slice of potentially-invalid UTF-16 is normalized.
Unpaired surrogates are treated as the REPLACEMENT CHARACTER.
sourcepub fn normalize_utf8(&self, text: &[u8]) -> String
pub fn normalize_utf8(&self, text: &[u8]) -> String
Normalize a slice of potentially-invalid UTF-8 into a String
.
Ill-formed byte sequences are mapped to the REPLACEMENT CHARACTER according to the WHATWG Encoding Standard.
sourcepub fn is_normalized_utf8(&self, text: &[u8]) -> bool
pub fn is_normalized_utf8(&self, text: &[u8]) -> bool
Check if a slice of potentially-invalid UTF-8 is normalized.
Ill-formed byte sequences are mapped to the REPLACEMENT CHARACTER according to the WHATWG Encoding Standard before checking.
sourcepub fn normalize_to<W: Write + ?Sized>(
&self,
text: &str,
sink: &mut W,
) -> Result
pub fn normalize_to<W: Write + ?Sized>( &self, text: &str, sink: &mut W, ) -> Result
Normalize a string slice into a Write
sink.