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
.
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.