Struct icu_collator::comparison::Collator
source · pub struct Collator {
special_primaries: Option<DataPayload<CollationSpecialPrimariesV1Marker>>,
root: DataPayload<CollationDataV1Marker>,
tailoring: Option<DataPayload<CollationDataV1Marker>>,
jamo: DataPayload<CollationJamoV1Marker>,
diacritics: DataPayload<CollationDiacriticsV1Marker>,
options: CollatorOptionsBitField,
reordering: Option<DataPayload<CollationReorderingV1Marker>>,
decompositions: DataPayload<CanonicalDecompositionDataV1Marker>,
tables: DataPayload<CanonicalDecompositionTablesV1Marker>,
lithuanian_dot_above: bool,
}
Expand description
Compares strings according to culturally-relevant ordering.
Fields§
§special_primaries: Option<DataPayload<CollationSpecialPrimariesV1Marker>>
§root: DataPayload<CollationDataV1Marker>
§tailoring: Option<DataPayload<CollationDataV1Marker>>
§jamo: DataPayload<CollationJamoV1Marker>
§diacritics: DataPayload<CollationDiacriticsV1Marker>
§options: CollatorOptionsBitField
§reordering: Option<DataPayload<CollationReorderingV1Marker>>
§decompositions: DataPayload<CanonicalDecompositionDataV1Marker>
§tables: DataPayload<CanonicalDecompositionTablesV1Marker>
§lithuanian_dot_above: bool
Implementations§
source§impl Collator
impl Collator
sourcepub fn try_new(
locale: &DataLocale,
options: CollatorOptions,
) -> Result<Self, CollatorError>
pub fn try_new( locale: &DataLocale, options: CollatorOptions, ) -> Result<Self, CollatorError>
Creates a collator for the given locale and options from compiled data.
sourcepub fn try_new_with_any_provider(
provider: &(impl AnyProvider + ?Sized),
locale: &DataLocale,
options: CollatorOptions,
) -> Result<Self, CollatorError>
pub fn try_new_with_any_provider( provider: &(impl AnyProvider + ?Sized), locale: &DataLocale, options: CollatorOptions, ) -> Result<Self, CollatorError>
A version of Self::try_new
that uses custom data provided by an AnyProvider
.
sourcepub fn try_new_unstable<D>(
provider: &D,
locale: &DataLocale,
options: CollatorOptions,
) -> Result<Self, CollatorError>where
D: DataProvider<CollationSpecialPrimariesV1Marker> + DataProvider<CollationDataV1Marker> + DataProvider<CollationDiacriticsV1Marker> + DataProvider<CollationJamoV1Marker> + DataProvider<CollationMetadataV1Marker> + DataProvider<CollationReorderingV1Marker> + DataProvider<CanonicalDecompositionDataV1Marker> + DataProvider<CanonicalDecompositionTablesV1Marker> + ?Sized,
pub fn try_new_unstable<D>(
provider: &D,
locale: &DataLocale,
options: CollatorOptions,
) -> Result<Self, CollatorError>where
D: DataProvider<CollationSpecialPrimariesV1Marker> + DataProvider<CollationDataV1Marker> + DataProvider<CollationDiacriticsV1Marker> + DataProvider<CollationJamoV1Marker> + DataProvider<CollationMetadataV1Marker> + DataProvider<CollationReorderingV1Marker> + DataProvider<CanonicalDecompositionDataV1Marker> + DataProvider<CanonicalDecompositionTablesV1Marker> + ?Sized,
A version of Self::try_new
that uses custom data provided by a DataProvider
.
⚠️ The bounds on provider may change over time, including in SemVer minor releases.
fn try_new_unstable_internal<D>( provider: &D, decompositions: DataPayload<CanonicalDecompositionDataV1Marker>, tables: DataPayload<CanonicalDecompositionTablesV1Marker>, jamo: DataPayload<CollationJamoV1Marker>, special_primaries: impl FnOnce() -> Result<DataPayload<CollationSpecialPrimariesV1Marker>, DataError>, locale: &DataLocale, options: CollatorOptions, ) -> Result<Self, CollatorError>
sourcepub fn resolved_options(&self) -> ResolvedCollatorOptions
pub fn resolved_options(&self) -> ResolvedCollatorOptions
The resolved options showing how the default options, the requested options, and the options from locale data were combined.
sourcepub fn compare_utf16(&self, left: &[u16], right: &[u16]) -> Ordering
pub fn compare_utf16(&self, left: &[u16], right: &[u16]) -> Ordering
Compare potentially ill-formed UTF-16 slices. Unpaired surrogates are compared as if each one was a REPLACEMENT CHARACTER.
sourcepub fn compare(&self, left: &str, right: &str) -> Ordering
pub fn compare(&self, left: &str, right: &str) -> Ordering
Compare guaranteed well-formed UTF-8 slices.
sourcepub fn compare_utf8(&self, left: &[u8], right: &[u8]) -> Ordering
pub fn compare_utf8(&self, left: &[u8], right: &[u8]) -> Ordering
Compare potentially well-formed UTF-8 slices. Ill-formed input is compared as if errors had been replaced with REPLACEMENT CHARACTERs according to the WHATWG Encoding Standard.
fn compare_impl<I: Iterator<Item = char>>( &self, left_chars: I, right_chars: I, ) -> Ordering
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Collator
impl RefUnwindSafe for Collator
impl !Send for Collator
impl !Sync for Collator
impl Unpin for Collator
impl UnwindSafe for Collator
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more